Edge Delta OTLP Destination Node

Configure the OTLP destination node in Edge Delta to send telemetry data over gRPC to a specified endpoint.

Overview

The OTLP (OpenTelemetry Protocol) destination node in Edge Delta is used to send logs, metrics, and traces over gRPC to a specified OTLP endpoint. This node can handle multiple data types, providing a comprehensive solution for telemetry data transmission. The OTLP output node requires Edge Delta version 1.32.0.

Example Configuration

nodes:
  - name: my_otlp_stream
    type: otlp_output
    endpoint: example.com
    port: 443
    buffer_max_bytesize: 10485760 # 10MB
    buffer_ttl: 15m
    buffer_path: /var/log/edgedelta/outputbuffer
    tls:
      enabled: true
      ignore_certificate_check: false
      ca_file: /path/to/ca_file.pem

Required Parameters

name

A descriptive name for the node. This is the name that will appear in pipeline builder 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_output

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>

endpoint

The endpoint parameter specifies the OTLP server endpoint to send telemetry data. It is required and must be specified as a string.

nodes:
  - name: <node name>
    type: otlp_output
    endpoint: <OTLP server URI>
    port: <port number>

port

The port parameter defines the port number for the OTLP endpoint. It should be an integer between 1 and 65535 and is required.

Optional Parameters

buffer_max_bytesize

The buffer_max_bytesize parameter configures the maximum byte size for total unsuccessful items. If the limit is reached, the remaining items are discarded until the buffer space becomes available. It is specified as a datasize.Size, has a default of 0 indicating no size limit, and it is optional.

nodes:
  - name: <node name>
    type: otlp_output
    endpoint: <OTLP server URI>
    port: <port number>
    buffer_max_bytesize: 2048

buffer_path

The buffer_path parameter configures the path to store unsuccessful items. Unsuccessful items are stored there to be retried back (exactly once delivery). It is specified as a string and it is optional.

nodes:
  - name: <node name>
    type: otlp_output
    endpoint: <OTLP server URI>
    port: <port number>
    buffer_path: <path to unsuccessful items folder>

buffer_ttl

The buffer_ttl parameter configures the time-to-Live for unsuccessful items, which indicates when to discard them. It is specified as a duration, has a default of 10m, and it is optional.

nodes:
  - name: <node name>
    type: otlp_output
    endpoint: <OTLP server URI>
    port: <port number>
    buffer_ttl: 20m

TLS Configuration

The tls parameter allows configuring SSL/TLS settings. It includes sub-parameters like enabled, ignore_certificate_check, ca_file, among others, which control the security configuration for gRPC connections. All TLS settings are optional.

nodes:
  - name: <node name>
    type: otlp_output
    endpoint: <OTLP server URI>
    port: <port number>
    tls:
      enabled: true
      ignore_certificate_check: true
      ca_file: /path/to/ca_file.pem