396 lines
12 KiB
Markdown
396 lines
12 KiB
Markdown
---
|
|
title: Glossary
|
|
description: >-
|
|
Terminology you may or may not be familiar with used by the OpenTelemetry
|
|
project.
|
|
weight: 100
|
|
---
|
|
|
|
The OpenTelemetry project uses terminology you may or may not be familiar with.
|
|
In addition, the project may define the terminology in a different way than
|
|
others. This page captures terminology used in the project and what it means.
|
|
|
|
## Generic Terminology
|
|
|
|
### **Aggregation**
|
|
|
|
The process of combining multiple measurements into exact or estimated
|
|
statistics about the measurements that took place during an interval of time,
|
|
during program execution. Used by the [`Metric`](#metric)
|
|
[`Data Source`](#data-source).
|
|
|
|
### **API**
|
|
|
|
Application Programming Interface. In the OpenTelemetry project, used to define
|
|
how telemetry data is generated per [`Data Source`](#data-source).
|
|
|
|
### **Application**
|
|
|
|
One or more [`Services`](#service) designed for end users or other applications.
|
|
|
|
### **APM**
|
|
|
|
Application Performance Monitoring is about monitoring software applications,
|
|
their performance (speed, reliability, availability, etc.) to detect issues,
|
|
alerting and tooling for finding the root cause.
|
|
|
|
### **Attribute**
|
|
|
|
A key-value pair. Used across telemetry signals - e.g. in [`Traces`](#trace) to
|
|
attach data to a [`Span`](#span), or in [`Metrics`](#metric). See [attribute
|
|
spec][attribute].
|
|
|
|
### **Automatic Instrumentation**
|
|
|
|
Refers to telemetry collection methods that do not require the end-user to
|
|
modify application's source code. Methods vary by programming language, and
|
|
examples include bytecode injection or monkey patching.
|
|
|
|
### **Baggage**
|
|
|
|
A mechanism for propagating name/value pairs to help establish a causal
|
|
relationship between events and services. See [baggage spec][baggage].
|
|
|
|
### **Client Library**
|
|
|
|
See [`Instrumented Library`](#instrumented-library).
|
|
|
|
### **Client-side App**
|
|
|
|
A component of an [`Application`](#application) that is not running inside a
|
|
private infrastructure and is typically used directly by end-users. Examples of
|
|
client-side apps are browser apps, mobile apps, and apps running on IoT devices.
|
|
|
|
### **Collector**
|
|
|
|
A vendor-agnostic implementation on how to receive, process, and export
|
|
telemetry data. A single binary that can be deployed as an agent or gateway.
|
|
|
|
Also known as the OpenTelemetry Collector. More on the Collector
|
|
[here][collector].
|
|
|
|
### **Contrib**
|
|
|
|
Several [`Instrumentation Libraries`](#instrumentation-library) and the
|
|
[`Collector`](#collector) offer a set of core capabilities as well as a
|
|
dedicated contrib repository for non-core capabilities including vendor
|
|
`Exporters`.
|
|
|
|
### **Context Propagation**
|
|
|
|
Allows all [`Data Sources`](#data-source) to share an underlying context
|
|
mechanism for storing state and accessing data across the lifespan of a
|
|
[`Transaction`](#transaction). See [context propagation
|
|
spec][context propagation].
|
|
|
|
### **DAG**
|
|
|
|
[Directed Acyclic Graph][dag].
|
|
|
|
### **Data Source**
|
|
|
|
See [`Signal`](#signal)
|
|
|
|
### **Dimension**
|
|
|
|
See [`Label`](#label).
|
|
|
|
### **Distributed Tracing**
|
|
|
|
Tracks the progression of a single [`Request`](#request), called a
|
|
[`Trace`](#trace), as it is handled by [`Services`](#service) that make up an
|
|
[`Application`](#application). A [`Distributed Trace`](#distributed-tracing)
|
|
transverses process, network and security boundaries.
|
|
|
|
More on Distributed Tracing [here][distributed tracing].
|
|
|
|
### **Event**
|
|
|
|
Something that happened where representation depends on the
|
|
[`Data Source`](#data-source). For example, [`Spans`](#span).
|
|
|
|
### **Exporter**
|
|
|
|
Provides functionality to emit telemetry to consumers. Used by
|
|
[`Instrumentation Libraries`][spec-exporter-lib] and the
|
|
[`Collector`](/docs/collector/configuration#basics). Exporters can be push- or
|
|
pull-based.
|
|
|
|
### **Field**
|
|
|
|
Name/value pairs added to [`Log Records`](#log-record) (similar to
|
|
[`Attributes`](#attribute) for [`Spans`](#span) and [`Labels`](#label) for
|
|
[`Metrics`](#metric)). See [field spec][field].
|
|
|
|
### **gRPC**
|
|
|
|
A high-performance, open source universal [`RPC`](#rpc) framework. More on gRPC
|
|
[here](https://grpc.io).
|
|
|
|
### **HTTP**
|
|
|
|
Short for [Hypertext Transfer Protocol][http].
|
|
|
|
### **Instrumented Library**
|
|
|
|
Denotes the [`Library`](#library) for which the telemetry signals
|
|
([`Traces`](#trace), [`Metrics`](#metric), [`Logs`](#log)) are gathered. See
|
|
[more][spec-instrumented-lib].
|
|
|
|
### **Instrumentation Library**
|
|
|
|
Denotes the [`Library`](#library) that provides the instrumentation for a given
|
|
[`Instrumented Library`](#instrumented-library).
|
|
[`Instrumented Library`](#instrumented-library) and
|
|
[`Instrumentation Library`](#instrumentation-library) may be the same
|
|
[`Library`](#library) if it has built-in OpenTelemetry instrumentation. See
|
|
[more][spec-instrumentation-lib].
|
|
|
|
### **JSON**
|
|
|
|
Short for [JavaScript Object Notation][json].
|
|
|
|
### **Label**
|
|
|
|
See [Attribute](#attribute).
|
|
|
|
### **Language**
|
|
|
|
Programming Language.
|
|
|
|
### **Library**
|
|
|
|
A language-specific collection of behavior invoked by an interface.
|
|
|
|
### **Log**
|
|
|
|
Sometimes used to refer to a collection of [`Log Records`](#log-record). May be
|
|
ambiguous, since people also sometimes use [`Log`](#log) to refer to a single
|
|
[`Log Record`](#log-record), thus this term should be used carefully and in the
|
|
context where ambiguity is possible additional qualifiers should be used (e.g.
|
|
`Log Record`). See [more][log].
|
|
|
|
### **Log Record**
|
|
|
|
A recording of an [`Event`](#event). Typically the record includes a timestamp
|
|
indicating when the [`Event`](#event) happened as well as other data that
|
|
describes what happened, where it happened, etc. See [more][log record].
|
|
|
|
### **Metadata**
|
|
|
|
A name/value pair added to telemetry data. OpenTelemetry calls this
|
|
[`Attributes`](#attribute) on [`Spans`](#span), [`Labels`](#label) on
|
|
[`Metrics`](#metric) and [`Fields`](#field) on [`Logs`](#log).
|
|
|
|
### **Metric**
|
|
|
|
Records a data point, either raw measurements or predefined aggregation, as time
|
|
series with [`Metadata`](#metadata). See [more][metric].
|
|
|
|
### **OC**
|
|
|
|
Short form for [`OpenCensus`](#opencensus).
|
|
|
|
### **OpenCensus**
|
|
|
|
A set of libraries for various languages that allow you to collect application
|
|
metrics and distributed traces, then transfer the data to a backend of your
|
|
choice in real time.
|
|
[Precursor to OpenTelemetry](/docs/what-is-opentelemetry/#history). See
|
|
[more][opencensus].
|
|
|
|
### **OpenTracing**
|
|
|
|
Vendor-neutral APIs and instrumentation for distributed tracing.
|
|
[Precursor to OpenTelemetry](/docs/what-is-opentelemetry/#history). See
|
|
[more][opentracing].
|
|
|
|
### **OT**
|
|
|
|
Short form for [`OpenTracing`](#opentracing).
|
|
|
|
### **OTel**
|
|
|
|
Short form for [OpenTelemetry](/docs/what-is-opentelemetry/).
|
|
|
|
### **OTelCol**
|
|
|
|
Short form for [OpenTelemetry Collector](#collector).
|
|
|
|
### **OTLP**
|
|
|
|
Short for [OpenTelemetry Protocol](/docs/specs/otlp/).
|
|
|
|
### **Processor**
|
|
|
|
Operation performed on data between being received and being exported. For
|
|
example, batching. Used by
|
|
['Instrumentation Libraries'](#instrumentation-library) and the
|
|
[Collector](/docs/collector/configuration/#processors).
|
|
|
|
### **Propagators**
|
|
|
|
Used to serialize and deserialize specific parts of telemetry data such as span
|
|
context and [`Baggage`](#baggage) in [`Spans`](#span). See [more][propagators].
|
|
|
|
### **Proto**
|
|
|
|
Language independent interface types. See [more][proto].
|
|
|
|
### **Receiver**
|
|
|
|
Term used by the [`Collector`](/docs/collector/configuration/#receivers) to
|
|
define how telemetry data is received. Receivers can be push- or pull-based. See
|
|
[more][receiver].
|
|
|
|
### **Request**
|
|
|
|
See [`Distributed Tracing`](#distributed-tracing).
|
|
|
|
### **Resource**
|
|
|
|
Captures information about the entity for which telemetry is recorded. For
|
|
example, a process producing telemetry that is running in a container on
|
|
Kubernetes has a pod name, it is in a namespace and possibly is part of a
|
|
deployment which also has a name. All three of these attributes can be included
|
|
in the `Resource` and applied to any data source.
|
|
|
|
### **REST**
|
|
|
|
Short for [Representational State Transfer][rest].
|
|
|
|
### **RPC**
|
|
|
|
Short for [Remote Procedure Call][rpc].
|
|
|
|
### **Sampling**
|
|
|
|
A mechanism to control the amount of data exported. Most commonly used with the
|
|
[`Tracing`](#trace) [`Data Source`](#data-source). See [more][sampling].
|
|
|
|
### **SDK**
|
|
|
|
Short for Software Development Kit. Refers to a telemetry SDK that denotes a
|
|
[`Library`](#library) that implement the OpenTelemetry [`API`](#api).
|
|
|
|
### **Semantic Conventions**
|
|
|
|
Defines standard names and values of [`Metadata`](#metadata) in order to provide
|
|
vendor-agnostic telemetry data.
|
|
|
|
### **Service**
|
|
|
|
A component of an [`Application`](#application). Multiple instances of a
|
|
[`Service`](#service) are typically deployed for high availability and
|
|
scalability. A [`Service`](#service) may be deployed in multiple locations.
|
|
|
|
### **Signal**
|
|
|
|
One of [`Traces`](#trace), [`Metrics`](#metric) or [`Logs`](#log). More on
|
|
Signals [here][signals].
|
|
|
|
### **Span**
|
|
|
|
Represents a single operation within a [`Trace`](#trace). See [more][span].
|
|
|
|
### **Span Link**
|
|
|
|
A span link is a link between causally-related spans. For details see
|
|
[Links between spans](/docs/specs/otel/overview#links-between-spans) and
|
|
[Specifying Links](/docs/specs/otel/trace/api#specifying-links).
|
|
|
|
### **Specification**
|
|
|
|
Describes the cross-language requirements and expectations for all
|
|
implementations. See [more][specification].
|
|
|
|
### **Status**
|
|
|
|
The result of the operation. Typically used to indicate whether an error
|
|
occurred. See [more][status].
|
|
|
|
### **Tag**
|
|
|
|
See [`Metadata`](#metadata).
|
|
|
|
### **Trace**
|
|
|
|
A [`DAG`](#dag) of [`Spans`](#span), where the edges between [`Spans`](#span)
|
|
are defined as parent/child relationship. See [more][trace].
|
|
|
|
### **Tracer**
|
|
|
|
Responsible for creating [`Spans`](#span). See [more][tracer].
|
|
|
|
### **Transaction**
|
|
|
|
See [`Distributed Tracing`](#distributed-tracing).
|
|
|
|
### **zPages**
|
|
|
|
An in-process alternative to external exporters. When included, they collect and
|
|
aggregate tracing and metrics information in the background; this data is served
|
|
on web pages when requested. See [more][zpages].
|
|
|
|
## Additional Terminology
|
|
|
|
### Traces
|
|
|
|
#### **[Trace API Terminology](/docs/specs/otel/trace/api)**
|
|
|
|
#### **[Trace SDK Terminology](/docs/specs/otel/trace/sdk)**
|
|
|
|
### Metrics
|
|
|
|
#### **[Metric API Terminology](/docs/specs/otel/metrics/api#overview)**
|
|
|
|
#### **[Metric SDK Terminology](/docs/specs/otel/metrics#specifications)**
|
|
|
|
### Logs
|
|
|
|
#### **[Trace Context Fields](/docs/specs/otel/logs/data-model#trace-context-fields)**
|
|
|
|
#### **[Severity Fields](/docs/specs/otel/logs/data-model#severity-fields)**
|
|
|
|
#### **[Log Record Fields](/docs/specs/otel/logs/data-model#log-and-event-record-definition)**
|
|
|
|
### Semantic Conventions
|
|
|
|
#### **[Resource Conventions](/docs/specs/otel/resource/semantic_conventions)**
|
|
|
|
#### **[Span Conventions](/docs/specs/otel/trace/semantic_conventions)**
|
|
|
|
#### **[Metric Conventions](/docs/specs/otel/metrics/semantic_conventions)**
|
|
|
|
[baggage]: /docs/specs/otel/baggage/api/
|
|
[attribute]: /docs/specs/otel/common/#attributes
|
|
[collector]: /docs/collector
|
|
[context propagation]: /docs/specs/otel/overview#context-propagation
|
|
[dag]: https://en.wikipedia.org/wiki/Directed_acyclic_graph
|
|
[distributed tracing]: /docs/concepts/signals/traces/
|
|
[field]: /docs/specs/otel/logs/data-model#field-kinds
|
|
[http]: https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
|
|
[json]: https://en.wikipedia.org/wiki/JSON
|
|
[log]: /docs/specs/otel/glossary#log
|
|
[log record]: /docs/specs/otel/glossary#log-record
|
|
[metric]: /docs/concepts/signals/metrics/
|
|
[opencensus]: https://opencensus.io
|
|
[opentracing]: https://opentracing.io
|
|
[propagators]: /docs/instrumentation/go/manual/#propagators-and-context
|
|
[proto]: https://github.com/open-telemetry/opentelemetry-proto
|
|
[receiver]: /docs/collector/configuration/#receivers
|
|
[rest]: https://en.wikipedia.org/wiki/Representational_state_transfer
|
|
[rpc]: https://en.wikipedia.org/wiki/Remote_procedure_call
|
|
[sampling]: /docs/specs/otel/trace/sdk#sampling
|
|
[signals]: /docs/concepts/signals/
|
|
[span]: /docs/specs/otel/trace/api#span
|
|
[spec-exporter-lib]: /docs/specs/otel/glossary/#exporter-library
|
|
[spec-instrumentation-lib]: /docs/specs/otel/glossary/#instrumentation-library
|
|
[spec-instrumented-lib]: /docs/specs/otel/glossary/#instrumented-library
|
|
[specification]: /docs/concepts/components/#specification
|
|
[status]: /docs/specs/otel/trace/api#set-status
|
|
[trace]: /docs/specs/otel/overview#traces
|
|
[tracer]: /docs/specs/otel/trace/api#tracer
|
|
[zpages]:
|
|
https://github.com/open-telemetry/opentelemetry-specification/blob/main/experimental/trace/zpages.md
|