Book Image

Cloud-Native Observability with OpenTelemetry

By : Alex Boten
Book Image

Cloud-Native Observability with OpenTelemetry

By: Alex Boten

Overview of this book

Cloud-Native Observability with OpenTelemetry is a guide to helping you look for answers to questions about your applications. This book teaches you how to produce telemetry from your applications using an open standard to retain control of data. OpenTelemetry provides the tools necessary for you to gain visibility into the performance of your services. It allows you to instrument your application code through vendor-neutral APIs, libraries and tools. By reading Cloud-Native Observability with OpenTelemetry, you’ll learn about the concepts and signals of OpenTelemetry - traces, metrics, and logs. You’ll practice producing telemetry for these signals by configuring and instrumenting a distributed cloud-native application using the OpenTelemetry API. The book also guides you through deploying the collector, as well as telemetry backends necessary to help you understand what to do with the data once it's emitted. You’ll look at various examples of how to identify application performance issues through telemetry. By analyzing telemetry, you’ll also be able to better understand how an observable application can improve the software development life cycle. By the end of this book, you’ll be well-versed with OpenTelemetry, be able to instrument services using the OpenTelemetry API to produce distributed traces, metrics and logs, and more.
Table of Contents (17 chapters)
1
Section 1: The Basics
3
Chapter 2: OpenTelemetry Signals – Traces, Metrics, and Logs
5
Section 2: Instrumenting an Application
10
Section 3: Using Telemetry Data

To get the most out of this book

The examples in this book were developed on macOS x86-64 using versions of Python ranging from 3.6 to 3.9. The latest version of OpenTelemetry for Python tested is version 1.10.0, which includes experimental support for both metrics and logging. It's likely that the API will change in subsequent releases, so be aware of the version installed as you go through the examples. Consult the changelog of the OpenTelemetry Python repository (https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md) for the latest updates.

Many examples in the book rely on Docker and Docker Compose to deploy environments locally. As of January 2022, the license for Docker Desktop still allows users to install it for free for personal use, education, and non-commercial open source projects. If the licensing prevents you from using Docker Desktop, there are alternatives available.

If you are using the digital version of this book, we advise you to type the code yourself or access the code from the book's GitHub repository (a link is available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.