Edge Delta OTLP Input

Consume OTLP traffic.

Overview

The OTLP input node consumes logs directly from OTLP configured data sources. The node is configured with the port that the agent should listen on.

Note: The node can ingest either logs or metrics (processed as gauges) per endpoint. To ingest both logs and metrics, two OTLP input nodes are required with separate endpoints.

Configure OTLP

Obtain the port number from the OTLP configuration:

  • Instrumentation Libraries: When using the OpenTelemetry SDKs, the port used to emit OTLP logs is part of the exporter configuration. The endpoint (which includes the host and port) is set when setting up the OpenTelemetry exporter within your application code.
  • OpenTelemetry Collector: The port number on which the collector should send outgoing OTLP data is specified in the exporter section.
  • Auto-Instrumentation Agents: Similar to the instrumentation libraries, auto-instrumentation agents are configured to send data to a specified endpoint. This configuration includes the port number to which OTLP logs will be sent.
  • Sidecars: In a Kubernetes environment, a sidecar that runs an instance of the OpenTelemetry Collector is set up using a configuration file, in which you can find the port for the OTLP receiver and exporter.
  • Log Routers and Forwarders: Log routers and forwarders may have plugins or output configurations that support OTLP. Within these configurations,the endpoint is defined, including the port, where the logs should be sent in OTLP format.

Example Configuration

This node collects OTEL logs from port 4318.

This node collects OTEL metrics from port 4319.

nodes:
- name: otlp_logs
  type: otlp_input
  port: 4318
  data_type: log
- name: otlp_metrics
  type: otlp_input
  port: 4319
  data_type: metric

Required Parameters

name

A descriptive name for the node. This is the name that will appear in Visual Pipelines and you can reference this node in the yaml using the name. It must be unique across all nodes. It is a yaml list element so it begins with a - and a space followed by the string. It is a required parameter for all nodes.

nodes:
  - name: <node name>
    type: <node type>

type: otlp_input

The type parameter specifies the type of node being configured. It is specified as a string from a closed list of node types. It is a required parameter.

nodes:
  - name: <node name>
    type: <node type>

port

The port parameter specifies the port number to listen on. It is specified as an integer and is required.

nodes:
- name: <node name>
  type: otlp_input
  port: <port number>
  data_type: <signal data type>

data_type

The data_type parameter specifies the type of OTLP signal to consume on the port. You can choose log or metric. If you need both you must configure a separate OTLP node for each data type with its own endpoint. It is specified as an string and is required.

Note: the OTLP legacy summary metric item is not supported. Metrics are processed as gauges.

nodes:
- name: <node name>
  type: otlp_input
  port: <port>
  data_type: <log | metric>