Skip to content

Comparison of Serilog, OpenTracing and native Application Insights - all sending data to App Insights

License

Notifications You must be signed in to change notification settings

Lybecker/DistributedTracing-AspNetCore

Repository files navigation

Comparison of options for flowing traces, requests etc to Azure Application Insights

Each test bench has two services - ServiceOne and ServiceTwo. Each of them are an API with a REST endpoint. ServiceOne calls ServiceTwo which must show up in the Application Insigths Application Map like

Application Map

And be able to show distributed traces like a span

End-to-end transaction

The path compared are:

  1. Direct to Applicaiton Insights via native SDK (baseline)
  2. Open Tracing via PetaBrdige driver to Application Insights
  3. Serilog with Application insights SDK for captureing requests, exceptions and performance counters to Application Insights

Notes

To propragate the log/trace context over process boundraies for protocols not default supported, take a look at how it is implemented in DiagnosticsHandler for HttpClient does it. Also see the HttpClient Diagnostic Instrumentation Users Guide.

It makes use of the System.Diagnostics.Activity class to store the distributed tracing context.

About

Comparison of Serilog, OpenTracing and native Application Insights - all sending data to App Insights

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages