From Zero to Hero: OpenTelemetry in .NET

Learn what OpenTelemetry is and why your apps need it

About This Course

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.

Course Curriculum

4h 22m 13 sections
Welcome
01:04 Free preview
What will you learn in this course?
02:44 Free preview
Who is the course for and prerequisites
01:58 Free preview
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

Meet Your Instructor

Gui Ferreira

Gui Ferreira

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.

View all courses by Gui Ferreira

What's New

Deep Dive: Solution Architecture
course

Deep Dive: Solution Architecture

Master solution architecture and turn business needs into scalable, maintainable systems.

Learn More
Migrating: ASP.NET Web APIs to ASP.NET Core
course

Migrating: ASP.NET Web APIs to ASP.NET Core

A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

Learn More
Getting Started: Caching in .NET
course

Getting Started: Caching in .NET

Let's make the hardest thing in programming easy for .NET software engineers.

Learn More
From Zero to Hero: Testing with xUnit in C#
course

From Zero to Hero: Testing with xUnit in C#

Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.

Learn More
Create a ChatGPT Console AI Chatbot in C#
blog

Create a ChatGPT Console AI Chatbot in C#

This walkthrough is your hands-on entry point to create a basic C# console application that talks to ChatGPT using the OpenAI API.

Learn More