Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com> |
||
|---|---|---|
| .. | ||
| internal | ||
| testdata | ||
| README.md | ||
| config.go | ||
| config.md | ||
| config_test.go | ||
| doc.go | ||
| encoder.go | ||
| factory.go | ||
| factory_test.go | ||
| otlp.go | ||
| otlp_test.go | ||
| otlphttp.go | ||
README.md
OTLP Receiver
| Status | |
|---|---|
| Stability | traces stable |
| metrics stable | |
| logs beta | |
| Supported pipeline types | traces, metrics, logs |
| Distributions | core, contrib |
Receives data via gRPC or HTTP using OTLP format.
Getting Started
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.
Advanced Configuration
Several helper files are leveraged to provide additional capabilities automatically:
Writing with HTTP/JSON
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 serialization format needs to be protobuf JSON.
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.
CORS (Cross-origin resource sharing)
The HTTP/JSON endpoint can also optionally configure CORS under cors:.
Specify what origins (or wildcard patterns) to allow requests from as
allowed_origins. To allow additional request headers outside of the default
safelist, set allowed_headers. Browsers can be instructed to
cache responses to preflight requests by setting max_age.
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
allowed_headers:
- Example-Header
max_age: 7200