-
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
Library instrumentation guidance with DiagnosticSource #1603
Comments
Here are some of my ideas after the discussions that have already taken place in several other issues. By all means chime in and let's try to get everyone on the same page on how to work with this, as I think all of us can see the potential and would love to see that potential realized. Here are some points to get things started :) What to do with current code that does not adhere to todays guidelines? (ASP.NET, HttpClient, SqlCommand to name a few)
How can we help everyone write good events and payloads?
These are my initial thoughts on all this and hopefully can get the discussion started on where to take all this. I'd love to see more ideas as my ideas are of course influenced by my own experience and experimentation and use-cases. I'm sure there are many other things that need to be thought through. |
I agree with you. |
I have started to work on it in microsoft/ApplicationInsights-dotnet-server#917`. @stebet thanks for your input! Some comments:
We have discussions about it with some .NET teams and faced a strong pushback against concrete payload types. On the other side .NET producers have guarantees for backward compatibility similar to public APIs. We cannot make all producers change the instrumentation and doing so does not bring any new features, i.e. it's unlikely it will have enough priority.
Right, but I think some ships have sailed and so we can follow them with the new instrumentations.
In general I agree with your points. Libraries should define tags and should use opentracing approach. The problem is that e.g. opencensus defines other set of http tags. So there is no standard here. I'm also concerned what guidance to give to a 'new' unknown library that have to choose tags on their own. |
Thanks for creating this issue and the documentation. Here's some general things. I'll add my feedback regarding the actual content to microsoft/ApplicationInsights-dotnet-server#917.
|
I wonder how this aligns with the new OpenCensus buzz? The question may be a bit premature but given that MS joined OpenCensus and there is some progress with .Net implementation but anyway what is the current strategy? |
It is our intent that OpenCensus support should be orthogonal to DiagnosticSource. The events generated by DiagnosticSource should work fine in OpenCensus. Until we have end-to-end scenarios fully deployed and used, there can always be issues, but that is our intent/design so far. |
With the repo migration, the new link to the document is: |
This issue is stale because it has been open 300 days with no activity. Remove stale label or comment or this will be closed in 7 days. |
We are looking for help from the tracing community to review out library instrumentation guidance
https://github.com/microsoft/ApplicationInsights-dotnet/blob/develop/WEB/LibraryInstrumentationGuidance.md
Start of the discussion:
StackExchange/StackExchange.Redis#833
We will be happy to hear your feedback about anything, some exiting concerns:
We hope to come up with the guidance that would work well with library owners and tracing systems.
Our philosophy for tracing still has to follow some principles like
We'll publish the result in more official place.
/cc @cwe1ss, @NickCraver, @stebet, @vancem
Update: I will submit the first PR later this week emphasizing concrete payload types, proposing PascalCase and would provide mode details about sampling/verbosity
The text was updated successfully, but these errors were encountered: