-
Notifications
You must be signed in to change notification settings - Fork 290
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Instrumentation.AspNet] Update semantic conventions for metrics #1429
[Instrumentation.AspNet] Update semantic conventions for metrics #1429
Conversation
Hey, I'm leaving this up as a draft until I can finish up the remaining tasks and run some more tests. |
|
@vishweshbankwar thanks for the input!
|
Yes - A separate PR for For |
Hey, I made some additional findings here. The reason why I wasn't able to get This means that traces do not behave as expected either, since the error status of the span will never be set here. For now, I went ahead and removed the Would it be a blocker to leave in the protocol version as is? It is a very useful metric and it would be a shame to leave it out. Edit: It would appear this line makes the error span be set correctly even though the exception path is never fired. |
No, I think it is ok. |
src/OpenTelemetry.Instrumentation.AspNet/Implementation/HttpInMetricsListener.cs
Outdated
Show resolved
Hide resolved
src/OpenTelemetry.Instrumentation.AspNet/Implementation/HttpInMetricsListener.cs
Outdated
Show resolved
Hide resolved
src/OpenTelemetry.Instrumentation.AspNet/Implementation/HttpRequestRouteHelper.cs
Outdated
Show resolved
Hide resolved
test/OpenTelemetry.Instrumentation.AspNet.Tests/HttpInMetricsListenerTests.cs
Outdated
Show resolved
Hide resolved
@qhris, I think that. semantic convention also for spans/traces has to be adjusted. It can be done in separate PR, but it should be done before the release to make the transition from unstable to stable world only once. |
Can you guys please check #1431 ? It is related to this, because due to the changes done to telemetry module to have the activity stopped on this I'm working on not closing the activity after the handlers, and using the current timestamp to figure it out the duration instead of using And thank you so much for your great work. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cijothomas, can we merge it with current wording?
Since we know the exact version of the SDK which is required to get correct histogram buckets, I'd suggest to call it out in the changelog. |
Fixed all the remaining issues but the tests won't pass until the SDK is updated. |
@qhris Thanks for your patience! |
Updates metrics to match semantic conventions for 1.23.
This was previously discussed in #1407.
Changes
Replaces
http.server.duration
with the newhttp.request.server.duration
metric and adds missing attributes.For significant contributions please make sure you have completed the following items:
CHANGELOG.md
updated for non-trivial changesRemaining issues
Unable to getExcluded for now.Application_Error
to fire in my sample application in order to verifyerror.type
for exceptions. It works fine for status codes.network.protocol.version
which usesrequest.ServerVariables["SERVER_PROTOCOL"]
because that property/class is heavily locked down. I have verified this to work on a sample application.HttpRequestRouteHelper
works fine for fetching the route template but it is marginally useful because the route easily ends up like/{controller}/{action}
which doesn't say much.