OpenTelemetry
NoSpamProxy supports the export of telemetry data via OpenTelemetry. OpenTelemetry is an open standard for collecting and sharing metrics, traces and other diagnostic data. This enables operational data from NoSpamProxy to be integrated into external monitoring and observability platforms. OpenTelemetry uses the OpenTelemetry Protocol (OTLP) for data transmission.
A typical OpenTelemetry architecture consists of three components:
Example of an OpenTelemetry architecture
NoSpamProxy
│
│ OTLP
▼
OpenTelemetry Collector
│
├── Grafana
├── Prometheus
├── Azure Monitor
├── Datadog
└── weitere Systeme
NoSpamProxy sends its telemetry data to an OpenTelemetry collector. The Collector processes the data and forwards it to the required monitoring platform. OpenTelemetry strongly recommends the use of a collector.
Enabling OpenTelemetry in NoSpamProxy
NoSpamProxy only exports telemetry data if an OpenTelemetry endpoint has been configured. Configuration is carried out via system environment variables in Windows.
NOTE: Configure the required OpenTelemetry system environment variables on all systems running NoSpamProxy components that are intended to export telemetry data.
General OTLP endpoint
This variable defines a common endpoint for all OpenTelemetry signals. These include, for example, metrics and traces.
Separate endpoints
NoSpamProxy also supports the environment variables defined by OpenTelemetry for separate endpoints.
By using separate endpoints, you can send traces, metrics and logs to different endpoints.
Example of the use of separate endpoints
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://tempo:4317
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT=http://prometheus-gateway:4317
OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=http://loki:4317
TIP: In most environments, using a single general endpoint is sufficient.
NOTE: If both a general endpoint and specific endpoints are configured, the specific endpoints take precedence. Further information on endpoints can be found in the OpenTelemetry documentation.
Protocol and standard port
NoSpamProxy uses the OTLP/HTTP protocol for OpenTelemetry and utilises port 4318. OTLP/HTTP uses port 4318 by default. Unless a different port is specified, NoSpamProxy expects an OTLP/HTTP endpoint on this port.
NoSpamProxy generally supports HTTPS for OpenTelemetry communication, provided the server in question offers this.
What is OTLP?
OTLP (OpenTelemetry Protocol) is OpenTelemetry’s standardised transmission protocol. It is used to send telemetry data, such as metrics, traces and logs, from applications to an OpenTelemetry Collector or another OpenTelemetry-compatible destination.
What is an OpenTelemetry Collector?
The OpenTelemetry Collector is a standalone service for receiving, processing and forwarding telemetry data. It acts as a central hub between applications and the actual monitoring systems.
An OpenTelemetry Collector offers the following benefits:
-
It acts as the central administrative unit for telemetry data.
-
It enables
-
forwarding to multiple destination systems,
-
aching and retries in the event of network failures,
-
the filtering or enrichment of data, as well as
-
the ability to easily customise the monitoring infrastructure without making any changes to NoSpamProxy.
-
TIP: Further information on OpenTelemetry collectors can be found in the OpenTelemetry documentation.