The following sections describe fundamental OpenTelemetry concepts, components, and building blocks, including their scope of functionality and how they interact with each other.
Traces offer an in-depth look into the execution flow of your services and provide details on function hot spots, execution times, and warnings or errors within your code.
For example, instrumenting (adding tracing to) a typical web application would map each request to a separate trace object with multiple child span objects, where each span potentially represent different parts of your business logic (for example, HTTP itself, database queries, and more).
For details, see OpenTelemetry Traces.
Metrics provide continuous insight into numerical and statistical data points on the performance of your applications and services.
For example, metrics can show you the CPU utilization of a machine or the number of concurrent users at a given time.
For details, see OpenTelemetry Metrics.
Logs are OpenTelemetry's approach to traditional log information. The purpose is to enable you to centrally save, aggregate, correlate, and analyze the content of log files and log sources in general.
For details, see OpenTelemetry Logs.
OTLP (OpenTelemetry protocol) is the exchange format used by OpenTelemetry-supported components to communicate with each other. OTLP specifies message structures and protocol details for the network layer.
For details, see OTLP.
Instrumentation is the process of extending your application to create, collect, and publish telemetry data. Depending on the language and platform, this can be fully automatic or may require changes to your code to include telemetry collection.
For details, see Instrumentation.