Integration with OpenTelemetry

CodeSee's Service Maps integrates with your existing OpenTelemetry infrastructure to generate complete maps of your application.

📘

Service Maps is an Enterprise-only feature

If you are using OpenTelemetry, there are two ways to export your trace data to CodeSee:

Configuring the OTEL Collector

  1. Setup an otlp exporter for CodeSee. Be sure to enter your CodeSee Ingestion Token where listed.
  2. Configure that exporter in a pipeline to export traces
exporters:
  otlp/codesee:
    endpoint: "in-otel.codesee.io:443"
    headers:
      "Authorization": "Bearer <CodeSee Ingestion Token>"
      
...

service:
  pipelines:
    traces:
      exporters: [otlp/codesee, <any other exporters go here>]
...

"exporters": {
  "otlp/codesee": {
    "endpoint": "in-otel.codesee.io:443",
    "headers": {
      "Authorization": "Bearer <CodeSee Ingestion Token>"
    }
  },
    
  ...
}

...

"service": {
  "pipelines": {
    "traces": {
      "exporters": ["otlp/codesee", <any other exporters go here>]
    },
      
    ...
  }
}

...

Configuring your service or OTEL Agent

If your service is sending trace data to an OTEL Collector, you do not need to do any additional configuration. Only follow the configuration steps in Configuring the OTEL Collector.

CodeSee is your only exporter

To configure your service to send trace data to CodeSee directly:

  1. Follow the OTEL Documentation for adding OTEL to your codebase
  2. Then add an otlp exporter to your OTEL setup with the following configuration:
otel.exporter.otlp.endpoint=https://in-otel.codesee.io:443
otel.exporter.otlp.protocol=grpc
otel.exporter.otlp.headers='Authorization=Bearer <CodeSee Ingestion Token>'
otel.metrics.exporter=none

Detailed documentation for Exporters can be found in the OTEL documentation.

You are already sending otel trace data to Honeycomb or similar

Unfortunately, OpenTelemetry does not support this use case well. We recommend using the OTEL Collector in this circumstance.

Depending on the programming language your system is written in, you may be able to setup multiple exporters manually in the code. Reach out to the CodeSee team ([email protected]) with questions on this path.