In this repository, I started to explore the OpenTelemetry observability framework and collected some useful links for traces, metrics, and logs.
- Tracing exporter: Configured for Otlp / OpenTelemetryProtocol (I used Jaeger, which supports Otlp)
- HelloController: Returns a random response (200, 400, 500, ...) to simulate real-life scenarios involving both good and bad responses.
- Tracing exporter: Configured for Otlp / OpenTelemetryProtocol (I used Jaeger, which supports Otlp)
- Console application, which initiate HTTP calls to the WebApi
- Using Polly to retry and cancel the call
- OpenTelemetry 📓Official
- Client libraries
- OpenTelemetry Azure Monitor Distro 👤Azure (Client library that sends telemetry data to Azure Monitor following the OpenTelemetry specification)
- Getting started with AzureMonitor OpenTelemetry Distro 📚Microsoft Learn
- AzureMonitor exporter 👤Azure (exporter for traces, metrics, and logs)
- .NET client library 👤open-telemetry (instrumentation and exporter libraries)
- .NET Contrib 👤open-telemetry (instrumentation and exporter libraries)
- OpenTelemetry Azure Monitor Distro 👤Azure (Client library that sends telemetry data to Azure Monitor following the OpenTelemetry specification)
- Blog posts from 📓Code-Maze
- Tracing applications and using Jaeger for visualization - Instrument WebApi requests and SQL client
- Tracking application health, Metrics, Prometheus for visualization
- Alternative way of logging with OpenTelemetry (Console application with Exporter.Console, Traces, Events, Custom Log Processor)
- Using OpenTelemetry collector, OTLP
- Blog posts from 📓Twilio
- Practical OpenTelemetry for .NET 📽️1hour - Martin Thwaites - NDC Oslo 2023
- OpenTelemetry will save your day and night 📽️1hour- Alexey Zimarev - NDC Oslo, 2021
- Example of automatic and manual instrumentation 📓logz.io
- Logging with OTLP to Seq 📓Seq blog
- Set up OpenTelemetry with Event Sourcing and Marten 📓Oskar Dudycz
- Jaeger: Open-source, end-to-end distributed tracing
- Download Jaeger -> Run: jaeger-all-in-one.exe -> http://localhost:16686
OpenTelemetry vs .NET terminology
OpenTelemetry | .NET |
---|---|
Tracer | ActivitySource |
TelemetrySpan | Activity |
SpanContext | ActivityContext |