To get the most out of this book
The examples in this book were developed with .NET 7.0. Most of them are cross-platform and run in Docker Linux containers or with the dotnet
CLI tools. Examples were tested on Windows OS with OpenTelemetry version 1.4.0. They should work with future versions of .NET and OpenTelemetry libraries. We use pinned versions of OpenTelemetry Collector, Prometheus, Jaeger, and other external images in the docker-compose
files.
In Chapter 3, The .NET Observability Ecosystem, we will experiment with AWS and Azure client libraries and serverless environments. AWS and/or Azure subscriptions are recommended, but not essential. We will stay within the free tier on AWS and within promotional credits amount available on Azure.
Software/hardware covered in the book |
Operating system requirements |
.NET SDK 7.0 |
Windows, macOS, or Linux |
OpenTelemetry for .NET version 1.4.0 |
Windows, macOS, or Linux |
Docker and |
Windows, macOS, or Linux |
.NET Framework 4.6.2 (used in an example of a legacy system in Chapter 15) |
Windows |
PerfView tool (in Chapter 4) |
Windows, cross-platform alternatives are available |
While OpenTelemetry guarantees API compatibility in future versions, the semantic conventions mentioned in this book are not stable. So spans, metrics, events, and attributes may be renamed or changed in a different way. Please refer to OpenTelemetry specification repo (https://github.com/open-telemetry/opentelemetry-specification) to find what’s new in the semantic conventions area.
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.