OpenTelemetry offers a unified, open-source standard and a suite of technologies for capturing and exporting metrics, traces, and logs from your cloud-native applications and infrastructure. It is not a .NET-specific technology but a universal one that every application should follow. Modern applications are distributed, and capturing and exporting telemetry data can be challenging. With OpenTelemetry's standardized approach and technological tools, capturing data and exporting it to participating technology vendors or open-source projects becomes simpler. This course will equip you with the knowledge and skills to integrate OpenTelemetry into your systems. Gui will explain why OpenTelemetry is necessary for every modern .NET application, and by the end of the course, you will be ready to implement it and use it effectively.
Welcome (01:04)
What will you learn in this course? (02:44)
Who is the course for and prerequisites (01:58)
What is Observability (02:33)
What is OpenTelemetry (03:43)
Traces, Metrics and Logs (05:00)
Context and Correlation (02:24)
Section Recap (00:57)
Demo Architecture (09:27)
Demo Preview (06:52)
Introduction (01:05)
Adding Automatic Instrumentation (08:36)
Introduction (00:44)
.NET Terminology (03:11)
What is a Resource (01:55)
Adding Instrumentation (14:59)
What are Instrumentation Libraries (05:01)
Using Instrumentation Libraries (08:33)
Section Recap (00:51)
Introduction (00:32)
What is a Trace (06:50)
Adding Tracing (04:22)
Exporting to Jaeger (11:18)
Adding Additional Context (04:42)
Section Recap (00:53)
Introduction (00:29)
What is a Metric (05:58)
The Instrument Types (02:05)
Adding Metrics (06:16)
Exporting to Prometheus (06:31)
Using .NET Meters (01:50)
Visualising Metrics on Grafana (04:52)
Section Recap (01:01)
Introduction (00:39)
The Protocol (01:13)
What is the Collector (01:27)
Architecture with a Collector (07:49)
Running the Collector (01:44)
Receivers (01:53)
Exporters (03:16)
Exporting to the OTLP collector (08:10)
Processors (03:02)
Section Recap (00:44)
Introduction (00:29)
What is a Log (02:24)
Why use Logs for Observability (02:25)
Adding Logging (01:40)
Exporting to Loki (07:46)
Enriching Logs (04:51)
Section Recap (01:02)
Introduction (00:34)
What is Baggage (02:01)
Adding Baggage (03:38)
Creating a Context Propagator (18:10)
Propagation risks (02:12)
Section Recap (00:42)
Introduction (00:22)
Creating a Span Processor (07:36)
Manually creating Spans (04:21)
Creating Span Events (03:01)
Representing Errors and Exceptions (03:45)
Creating Span Links (10:45)
Section Recap (00:56)
Introduction (00:20)
What is Sampling (02:29)
Head Sampling (01:24)
How to create a Sampler (03:46)
Tail-based Sampling (00:45)
Configuring Tail-based Sampling (03:14)
Section Recap (01:04)
Conclusion (00:25)
Course Info
Lifetime access
Add to Cart
Guilherme Ferreira, also known as Gui, is a Minimalist Software Craftsman, passionate about simplicity and continuous learning. Gui is a Microsoft MVP for Developer Technologies, a Tech Speaker, a YouTuber, and a .NET content creator. With over 15 years of experience in software development, Gui went from Startups to Tech Giants. Along his journey, he got to know several hats, including Software Engineer, Architect, CTO, and Developer Advocate, gathering a diverse and invaluable skill set.
More courses by Gui Ferreira© 2023 Dometrain. All rights reserved.