Set up Traces Collection for Other Environments
Sumo Logic leverages OpenTelemetry standards for trace collection. To gather the spans generated by tracing clients, follow the instructions at Instrument your application with OpenTelemetry.
Additionally, you'll need to run the OpenTelemetry Collector instance. It receives and buffers data, optionally attaches metadata tags, and pushes them to a Sumo Logic Hosted Collector endpoint that resides in the cloud.
Preparation
Depending on the architecture of the environment, OpenTelemetry Collector can be run in two types of deployment scenarios:
- a gateway that retrieves all data, processes it and sends it to the backend (Sumo Logic Receiver)
- an optional (though recommended) Agent, which can be run on each node or as a sidecar next to the service; it buffers and tags spans, sending them to the gateway
Due to the fact that vital metadata (information about the host and its OS) is available only for collectors inside individual node/host, we recommend that instances of OpenTelemetry Collector should be run at least on each of the nodes/hosts as agents. Doing so allows you to collect metadata tags locally and also in case of high volume environments, to buffer the messages, reducing the number of requests for each individual collector instance.
Prerequisites
Account Type | Account Level |
---|---|
Credits | Enterprise Operations and Enterprise Suite Essentials get up to 5 GB a day |
Installation steps for OpenTelemetry Collector Gateway
Step 1 - Generating OTLP/HTTP Endpoint
Create new OTLP/HTTP source.
Step 2 - Prepare config file
config.yaml for OpenTelemetry Collector Gateway:
Use the sample gateway configuration template available at GitHub and apply the following changes:
- ENDPOINT_URL needs to be replaced with the value retrieved in Step 1.
Save the file as config.yaml
. This file name will be used in next step. If you use a different filename, make note of that name.
Step 3 - Prepare the OpenTelemetry Collector binaries and run them
As spans are sent over TCP or UDP connections, the OpenTelemetry Collector service needs to have relevant ports exposed. You will use the
config file (config.yaml
) you set up in Step 2.
The templates provided above support the following protocols:
- OTLP/HTTP on port 4318
- OTLP/gRPC on port 4317
- Zipkin/HTTP on port 9411
- Jaeger/gRPC on port 14250
- Jaeger/HTTP on port 14268
- Jaeger/Compact on port 6831 (UDP)
- OpenCensus on port 55678