Receives data via gRPC or HTTP using OTLP format.
Supported pipeline types: traces, metrics, logs
All that is required to enable the OTLP receiver is to include it in the receiver definitions. A protocol can be disabled by simply not specifying it in the list of protocols.
receivers:
otlp:
protocols:
grpc:
http:
The following settings are configurable:
endpoint
(default = 0.0.0.0:4317 for grpc protocol, 0.0.0.0:4318 http protocol): host:port to which the receiver is going to receive data. The valid syntax is described at https://github.com/grpc/grpc/blob/master/doc/naming.md.
Several helper files are leveraged to provide additional capabilities automatically:
The OTLP receiver can receive trace export calls via HTTP/JSON in addition to gRPC. The HTTP/JSON address is the same as gRPC as the protocol is recognized and processed accordingly. Note the format needs to be protobuf JSON serialization.
To write traces with HTTP/JSON, POST
to [address]/v1/traces
for traces,
to [address]/v1/metrics
for metrics, to [address]/v1/logs
for logs. The default
port is 4318
.
The HTTP/JSON endpoint can also optionally configure
CORS, which is enabled by
specifying a list of allowed CORS origins in the cors_allowed_origins
and optionally headers in cors_allowed_headers
:
receivers:
otlp:
protocols:
http:
endpoint: "localhost:4318"
cors_allowed_origins:
- http://test.com
# Origins can have wildcards with *, use * by itself to match any origin.
- https://*.example.com
cors_allowed_headers:
- TestHeader