Mastering Observability with OpenTelemetry
2h 6mIntermediate2024-05-03
Authors

Daniel Khan
Technology Lead, Developer, Application Architect
Course details
Capturing and exporting telemetry data from modern cloud applications can be difficult and complicated. OpenTelemetry simplifies observability so you can collect telemetry from applications and services, allowing for analysis with a growing range of observability backends. It is now the second largest project in the Cloud Native Computing Foundation after Kubernetes (based on contributions) and it’s quickly becoming the key observability toolset for operators, SREs and developers. It provides a collection of tools, APIs, and SDKs for capturing metrics, distributed traces, and logs from applications to help you analyze your software’s performance and behavior. In this course, Daniel Khan shows you how to set up, configure, deploy, and analyze data from OpenTelemetry to gain actionable insights into your application performance.
Skills covered
OpenTelemetrySoftware AdministrationDevOps FoundationsServer AdministrationDevOpsNetwork AdministrationNetwork and System AdministrationOpen SourceOne-Off
Concepts
0. Introduction
- 01 - OpenTelemetry unveiled - Mastering modern observability
- 02 - What you should know
- 03 - Setting up your development environment
- 04 - Using the exercise files
- 05 - Getting to know the sample app
- 06 - Setting up the sandbox
1. Introduction to OpenTelemetry
- 07 - A brief history of monitoring and observability
- 08 - Understanding distributed tracing
- 09 - What is (auto) instrumentation
- 10 - What is OpenTelemetry
- 11 - Understand OpenTelemetry's architecture
- 12 - Important resources
2. Diving Into Tracing with OpenTelemetry
- 13 - Setting up the provided Node tracing module
- 14 - Instrumenting Node.js for tracing
- 15 - Instrumenting Python for tracing
- 16 - Introducing Jaeger
- 17 - Running Jaeger in Docker
- 18 - Exporting spans to Jaeger
- 19 - Analyzing traces with Jaeger
- 20 - Triage and manual instrumentation
- 21 - Finding the root cause in Jaeger
3. Using the OpenTelemetry Collector
- 22 - Introduction to the OpenTelemetry Collector
- 23 - A primer on sampling
- 24 - The goal for using the OpenTelemetry Collector
- 25 - Installing a local Collector
- 26 - Collector configuration
- 27 - Debugging and zPages
4. Observability with Grafana
- 28 - Why Grafana
- 29 - The goal for observability with Grafana
- 30 - Creating a Grafana Cloud account
- 31 - Setting up the Grafana Collector integration
- 32 - Analyzing trace data in Grafana
5. Collecting Metrics
- 33 - Metrics in OpenTelemetry
- 34 - Adding metrics instrumentation to your code
- 35 - Viewing metrics in Grafana
6. Collecting Logs
- 36 - Logging in OpenTelemetry
- 37 - Configuring Python for logging
- 38 - Viewing logs in Grafana
Conclusion
- 39 - Next steps