Closed cartermp closed 8 months ago
god I hate conventional commits
Just so it's not left unnoted -- Phillip and I have been having conversations about this one in Slack and it's not clear that we should do this. We'll either merge or close this in the next few days.
I spent more time looking at data for this and I'm a little spooked by the blast radius. While I think it's still tractable for us to deal with this, there's just too many SLOs that use this field correctly.
This has been something that's bothered me for quite a bit, and I think we talked about it in a sync at least a year ago.
The issue with our current behavior is that in the vast majority of use cases, when someone says "status code" they actually mean "http status code" and not "span status code". However, I've seen people type out
status_code
before. I've also seen Query Assistant make this mistake (although it tends to not do this terribly often).Moreover, I believe that there aren't a whole lot of useful queries people run that rely on the span status code itself unless they're debugging their own instrumentation. In that case, I think it's more clarifying to have the field be named
span.status_code
.A cursory glance at pollinators yields some interesting things:
status_code
in Refinery rules to refer to an HTTP status code, and I've confirmed they also use OTel. I'd be curious if that rule has ever worked...status_code
today will just be 0/1/2)Mainly, it seems that when people say "status code" they are almost always referring to "HTTP status code" in Pollinators. I'm also very curious how many people are sending OTLP and using
status_code
to refer to "HTTP status code" in DCs, queries, SLOs, Triggers, etc. and said nouns are simply not working as expected because the underlying values are just 0/1/2. I can't think of a way to measure that, though.What are peoples' thoughts on rolling out this change? We'd need to broadcast to people that we're making this change, and at least mention to that one user specifically that we're changing the field to
span.status_code
.