668ce946d6 | ||
---|---|---|
.nuget | ||
src/Microsoft.AspNet.TelemetryCorrelation | ||
test/Microsoft.AspNet.TelemetryCorrelation.Tests | ||
tools | ||
.gitattributes | ||
.gitignore | ||
CODE-OF-CONDUCT.md | ||
CONTRIBUTING.md | ||
LICENSE.txt | ||
Microsoft.AspNet.TelemetryCorrelation.sln | ||
NuGet.Config | ||
README.md |
README.md
Telemetry correlation http module
Telemetry correlation http module enables cross tier telemetry tracking.
Usage
-
Install NuGet for your app.
-
Enable diagnostics source listener using code below. Note, some telemetry vendors like Azure Application Insights will enable it automatically.
public class NoopDiagnosticsListener : IObserver<KeyValuePair<string, object>> { public void OnCompleted() { } public void OnError(Exception error) { } public void OnNext(KeyValuePair<string, object> evnt) { } } public class NoopSubscriber : IObserver<DiagnosticListener> { public void OnCompleted() { } public void OnError(Exception error) { } public void OnNext(DiagnosticListener listener) { if (listener.Name == "Microsoft.AspNet.TelemetryCorrelation" || listener.Name == "System.Net.Http" ) { listener.Subscribe(new NoopDiagnosticsListener()); } } }
-
Double check that http module was registered in
web.config
for your app.
Once enabled - this http module will:
- Reads correlation http headers
- Start/Stops Activity for the http request
- Ensure the Activity ambient state is transferred thru the IIS callbacks
See http protocol specifications for details.
This http module is used by Application Insights. See documentation and code.