๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Cloud-Native Observability with OpenTelemetry

โœ Scribed by Alex Boten


Publisher
Packt Publishing Pvt Ltd
Year
2022
Tongue
English
Leaves
386
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


Leverage OpenTelemetry's API, libraries, tools and the collector to produce and collect telemetry along with using open-source tools to analyze distributed traces, check metrics and logs, and gain insights into application health
Key Features

Get to grips with OpenTelemetry, an open-source cloud-native software observability standard
Use vendor-neutral tools to instrument applications to produce better telemetry and improve observability
Understand how telemetry data can be correlated and interpreted to understand distributed systems

Book Description

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


Cover
Title Page
Copyright and Credits
Foreword
Contributors
Table of Contents
Preface
Section 1: The Basics
Chapter 1: The History and Concepts of Observability
Understanding cloud-native applications
Looking at the shift to DevOps
Reviewing the history of observability
Centralized logging
Using metrics and dashboards
Applying tracing and analysis
Understanding the history of OpenTelemetry
OpenTracing
OpenCensus
Observability for cloud-native software
Understanding the concepts of OpenTelemetry
Signals
Pipelines
Resources
Context propagation
Summary
Chapter 2: OpenTelemetry Signals โ€“ Traces, Metrics, and Logs
Technical requirements
Traces
Anatomy of a trace
Details of a span
Additional considerations
Metrics
Anatomy of a metric
Data point types
Exemplars
Additional considerations
Logs
Anatomy of a log
Correlating logs
Additional considerations
Semantic conventions
Summary
Chapter 3: Auto-Instrumentation
Technical requirements
What is auto-instrumentation?
Challenges of manual instrumentation
Components of auto-instrumentation
Limits of auto-instrumentation
Bytecode manipulation
OpenTelemetry Java agent
Runtime hooks and monkey patching
Instrumenting libraries
The Instrumentor interface
Wrapper script
Summary
Section 2: Instrumenting an Application
Chapter 4: Distributed Tracing โ€“ Tracing Code Execution
Technical requirements
Configuring the tracing pipeline
Getting a tracer
Generating tracing data
The Context API
Span processors
Enriching the data
ResourceDetector
Span attributes
SpanKind
Propagating context
Additional propagator formats
Composite propagator
Recording events, exceptions, and status
Events
Exceptions
Status
Summary
Chapter 5: Metrics โ€“ Recording Measurements
Technical requirements
Configuring the metrics pipeline
Obtaining a meter
Push-based and pull-based exporting
Choosing the right OpenTelemetry instrument
Counter
Asynchronous counter
An up/down counter
Asynchronous up/down counter
Histogram
Asynchronous gauge
Duplicate instruments
Customizing metric outputs with views
Filtering
Dimensions
Aggregation
The grocery store
Number of requests
Request duration
Concurrent requests
Resource consumption
Summary
Chapter 6: Logging โ€“ Capturing Events
Technical requirements
Configuring OpenTelemetry logging
Producing logs
Using LogEmitter
The standard logging library
A logging signal in practice
Distributed tracing and logs
OpenTelemetry logging with Flask
Logging with WSGI middleware
Resource correlation
Summary
Chapter 7: Instrumentation Libraries
Technical requirements
Auto-instrumentation configuration
OpenTelemetry distribution
OpenTelemetry configurator
Environment variables
Command-line options
Requests library instrumentor
Additional configuration options
Manual invocation
Double instrumentation
Automatic configuration
Configuring resource attributes
Configuring traces
Configuring metrics
Configuring logs
Configuring propagation
Revisiting the grocery store
Legacy inventory
Grocery store
Shopper
Flask library instrumentor
Additional configuration options
Finding instrumentation libraries
OpenTelemetry registry
opentelemetry-bootstrap
Summary
Section 3: Using Telemetry Data
Chapter 8: OpenTelemetry Collector
Technical requirements
The purpose of OpenTelemetry Collector
Understanding the components of OpenTelemetry Collector
Receivers
Processors
Exporters
Extensions
Additional components
Transporting telemetry via OTLP
Encodings and protocols
Additional design considerations
Using OpenTelemetry Collector
Configuring the exporter
Configuring the collector
Modifying spans
Filtering metrics
Summary
Chapter 9: Deploying the Collector
Technical requirements
Collecting application telemetry
Deploying the sidecar
System-level telemetry
Deploying the agent
Connecting the sidecar and the agent
Adding resource attributes
Collector as a gateway
Autoscaling
OpenTelemetry Operator
Summary
Chapter 10: Configuring Backends
Technical requirements
Backend options for analyzing telemetry data
Tracing
Metrics
Logging
Running in production
High availability
Scalability
Data retention
Privacy regulations
Summary
Chapter 11: Diagnosing Problems
Technical requirements
Introducing a little chaos
Experiment #1 โ€“ increased latency
Experiment #2 โ€“ resource pressure
Experiment #3 โ€“ unexpected shutdown
Using telemetry first to answer questions
Summary
Chapter 12: Sampling
Technical requirements
Concepts of sampling across signals
Traces
Metrics
Logs
Sampling strategies
Samplers available
Sampling at the application level via the SDK
Using the OpenTelemetry Collector to sample data
Tail sampling processor
Summary
Index
Other Books You May Enjoy


๐Ÿ“œ SIMILAR VOLUMES


Cloud-Native Observability with OpenTele
โœ Alex Boten ๐Ÿ“‚ Library ๐Ÿ“… 2022 ๐Ÿ› Packt Publishing Pvt Ltd ๐ŸŒ English

Leverage OpenTelemetry's API, libraries, tools and the collector to produce and collect telemetry along with using open-source tools to analyze distributed traces, check metrics and logs, and gain insights into application health Key Features Get to grips with OpenTelemetry, an open-source cloud

Cloud Native Observability
โœ Kenichi Shibata, Rob Skillington, and Martin Mao ๐Ÿ“‚ Library ๐Ÿ“… 2024 ๐Ÿ› O'Reilly Media, Inc. ๐ŸŒ English

With this insightful guide, authors Kenichi Shibata, Rob Skillington, and Martin Mao take you through the differences between traditional and cloud native system observability. SREs, cloud native engineers, CIOs, and CTOs will learn that while many principles of cloud native and traditional systems

Cloud Native Observability
โœ Kenichi Shibata, Rob Skillington, and Martin Mao ๐Ÿ“‚ Library ๐Ÿ“… 2024 ๐Ÿ› O'Reilly Media, Inc. ๐ŸŒ English

With this insightful guide, authors Kenichi Shibata, Rob Skillington, and Martin Mao take you through the differences between traditional and cloud native system observability. SREs, cloud native engineers, CIOs, and CTOs will learn that while many principles of cloud native and traditional systems

Cloud Native Infrastructure with Azure:
โœ Nishant Singh, Michael Kehoe ๐Ÿ“‚ Library ๐Ÿ“… 2022 ๐Ÿ› O'Reilly Media ๐ŸŒ English

<div><p>The cloud is becoming the de facto home for companies ranging from enterprises to startups. Moving to the cloud means moving your applications from monolith to microservices. But once you do, maintaining and running these services brings its own level of complexity. The answer? Modularity, d