Introduction
Layerlog recommends that you use OpenTelemetry to gather trace transaction data from your system. Because of its versatility, OpenTelemetry has been widely adopted as the industry standard: OpenTelemetry can be equipped with many additional functionalities, one of which is collecting aggregated trace data. Beyond that, OpenTelemetry is set to be the best production-ready solution going forward.
However, if you already have Jaeger deployed in your local environment, to quickly move from your local Jaeger installation to Layerlog, the simplest solution is to replace the Jaeger collector with the Layerlog version of the Jaeger collector. The Layerlog collector makes sure that your tracing data and spans are sent to the Layerlog backend instead of to the local Jaeger installation.
Over time, should you decide to change to the OpenTelemetry collector, please feel free to explore the topic Installing the OpenTelemetry Collector for Distributed Tracing for the procedure to configure and deploy the OpenTelemetry collector. You can always return to the Jaeger collector as a secondary option if you experience issues with the OpenTelemetry collector.
This topic explains how to set up the Layerlog Jaeger collector. For an overview of the process to send traces to Layerlog, see Getting started with Layerlog Distributed Tracing.
Deploy the Jaeger collector with the Layerlog exporter
The Layerlog integration builds on the Jaeger collector base image and uses the gRPC plugin framework to enable communication between the collector and Layerlog.
Wherever you reference the Jaeger collector image in your Kubernetes configuration file or Docker script, all you need to do is replace it with the Layerlog image and include the relevant Layerlog parameters.
The Layerlog collector image is available via the Docker hub, here.
Update collector references to the Layerlog image in your configuration
Example
If you were using Jaeger collector version 1.22, in your Kubernetes config file or your Docker script, wherever jaegertracing/jaeger-collector:1.22 appears, replace it with the latest version of the Layerlog collector: logzio/jaeger-logzio-collector:latest.
Configure the Layerlog Jaeger Collector image with the required parameters
Update the Layerlog image with the relevant shell or environment variables. The required ports are described here, and the complete list of Layerlog collector parameters is presented below.
In addition to these parameters, you can also use Jaeger’s collector parameters. You’ll need to select the Jaeger version page for your deployment.
Parameters
| Parameter | Description | Required/Default |
|---|---|---|
| ACCOUNT_TOKEN | The Layerlog token for the Distributed Tracing account you want to send your data to: <<TRACING-SHIPPING-TOKEN>> . Required when you use the collector to ship traces to Layerlog. How do I look up my Distributed Tracing account token? |
Required |
| REGION | Your two-letter Layerlog account region code. Defaults to US East. Required only if your Layerlog region is different than US East. You can find your region code in the Available regions table. | Required DEFAULT: blank (US East) |
| GRPC_STORAGE_PLUGIN_LOG_LEVEL | The lowest log level to send. From lowest to highest, log levels are: trace, debug, info, warn, error. Controls logging only for the Jaeger Layerlog Collector. Does not affect Jaeger components. | DEFAULT: warn |