Skip to main content
Correlations connect datasets that describe the same system from different telemetry signals. A correlation group records which logs, traces, and metrics datasets belong together. Use correlations to move between related signals without manually copying IDs or rebuilding context in another query.

What correlations are

A correlation group contains up to three datasets:
  • Logs dataset: OpenTelemetry log records with trace context.
  • Traces dataset: OpenTelemetry trace spans.
  • Metrics dataset: OpenTelemetry metrics stored in MetricsDB.
Axiom uses the datasets in a correlation group to find related data during an investigation. For example, a log event that contains a trace ID links to the matching trace. A trace links back to log records from the correlated logs dataset. A span in a trace links to metrics from the correlated metrics dataset.

Prerequisites

Before you create a correlation group, prepare the datasets that you plan to connect:
  • Send logs, traces, and metrics to separate datasets.
  • Use a dedicated OpenTelemetry metrics dataset for metrics.
  • Ensure logs include trace_id and span_id for log-to-trace and trace-to-log navigation. This should happen by default if you use Logger.emit or the equivalent in your OpenTelemetry library.
  • Use OpenTelemetry semantic conventions when possible

Create a correlation group

  1. In Axiom Console, go to Datasets.
  2. Click Correlations.
  3. Click New correlation group.
  4. Enter a Name.
  5. Enter a Slug.
  6. Select one or more datasets:
    • Logs dataset
    • Traces dataset
    • Metrics dataset
  7. Click Create correlation group.
Create a correlation group from logs, traces, and metrics datasets
Alternatively, you can create a correlation group from new datasets. This will create logs, traces, and metrics datasets with a prefix and optional suffix of your choice, and create a correlation group that contains them.

Use correlations

Use correlations from query results and trace details to move between telemetry signals.
Trace details with correlated logs and metrics

Go from logs to traces

When a log event belongs to a correlated logs dataset and contains a trace ID, Axiom links the event to the matching trace in the correlated traces dataset.

Query view

  1. Run a query against a logs dataset that has correlated traces.
  2. Click a log event to view details.
  3. Click View trace to open the matching trace in the Trace view.

Stream tab

  1. Open the stream for a logs dataset that has correlated traces.
  2. Click a log event to view details.
  3. Click View trace to open the matching trace in the Trace view.

Go from traces to logs

When a trace belongs to a correlated traces dataset, Axiom queries the correlated logs dataset for log records in the trace time range. Use this flow when a trace shows a slow or failed span and the investigation needs nearby log records from the same request.

Go from traces to metrics

When a trace belongs to a correlated traces dataset and the group has a metrics dataset, Axiom shows relevant span metrics in the span details panel. Trace-to-metrics correlation uses OpenTelemetry semantic conventions and the metric catalog to show common runtime, process, container, and service metrics. Each metric includes an Explore action that opens the generated MPL query in the Query tab. Use this flow when a span shows latency or errors and the investigation needs resource or service health around the same time.
Trace-to-metrics correlation requires the correlated metrics dataset to use an edge deployment.

What’s next