description | docs | title | weight |
---|---|---|---|
Create an OpenTelemetry Protocol (OTLP) Integration for F5 NGINX Controller. |
DOCS-565 |
OTLP Integration |
30 |
Confirm that your OpenTelemetry Collector server meets the following configuration requirements:
The OpenTelemetry Collector server should be configured to allow the following OTLP receiver protocols:
- HTTP - for unencrypted connections.
- HTTPS - for encrypted connections. Certificate validation and mutual TLS are not supported.
- gRPC - for unencrypted gRPC connections.
- gRPC + TLS - for encrypted gRPC connections. Certificate validation and mutual TLS are not supported.
The server should expose the OTLP receiver.
The forwarder produces an OTLP protocol ExportMetricsServiceRequest
message with the following restrictions:
- every metric is mapped to
Gauge
. - unit is set to
1
(no unit). - the
ResourceMetrics
fields forSchemaUrl
andResource
are empty. - the
InstrumentationLibraryMetric
fields forInstrumentationLibrary
andSchemaUrl
are empty.
Authentication is currently not supported.
The following example configuration for OpenTelemetry Collector can receive OTLP on HTTP and HTTPS endpoints and forward it to DataDog:
receivers:
otlp/https:
protocols:
http:
endpoint: "0.0.0.0:4318"
tls_settings:
cert_file: /etc/otel/server.crt
key_file: /etc/otel/server.key
otlp/http:
protocols:
http:
endpoint: "0.0.0.0:4319"
otlp/grpc_tls:
protocols:
grpc:
endpoint: "0.0.0.0:4418"
tls_settings:
cert_file: /etc/otel/server.crt
key_file: /etc/otel/server.key
otlp/grpc:
protocols:
grpc:
endpoint: "0.0.0.0:4419"
exporters:
datadog:
api:
key: key
service:
pipelines:
metrics/1:
receivers: [otlp/http, otlp/https, otlp/grpc_tls, otlp/grpc]
exporters: [datadog]
Take the following steps to create an integration for OpenTelemetry Collector:
-
Open the F5 NGINX Controller user interface and log in.
-
Select the NGINX Controller menu icon, then select Platform.
-
On the Platform menu, select Integrations.
-
On the Integrations menu, select Create Integration.
-
Add a name.
-
(Optional) Add a display name.
-
(Optional) Add a description.
-
(Optional) Add tags.
-
In the Integration Type list, select
GENERIC_INTEGRATION
. -
In the Endpoint URI box, add the one of HTTP, HTTPS, gRPC or gRPC+TLS endpoint for your OpenTelemetry Collector. This is the same address that's configured in the OpenTelemetry Collector config in the receivers section. See the [example config]({{< ref "/controller/platform/integrations/otlp-integration.md#example-configuration-for-opentelemetry-collector" >}}):
- HTTP endpoint should be
http://collector_ip:4319
- HTTPS endpoint should be
https://collector_ip:4318
- gRPC endpoint should be
tcp://collector_ip:4419
- gRPC with TLS endpoint should be
tcp+tls://collector_ip:4418
- HTTP endpoint should be
-
In the Credential Type list, select
UNAUTHENTICATED
(at this time we do not support any authentication methods). -
Select Submit.