Menu

This is documentation for the next version of Tempo. For the latest stable release, go to the latest version.

Open source

Enable service graphs

Caution

Grafana Alloy is the new name for our distribution of the OTel collector. Grafana Agent has been deprecated and is in Long-Term Support (LTS) through October 31, 2025. Grafana Agent will reach an End-of-Life (EOL) on November 1, 2025. Read more about why we recommend migrating to Grafana Alloy.

A service graph is a visual representation of the interrelationships between various services. Service graphs help to understand the structure of a distributed system, and the connections and dependencies between its components.

The same service graph metrics can also be generated by Tempo. This is more efficient and recommended for larger installations. For a deep look into service graphs, visit this section.

Service graphs are also used in the application performance management dashboard. For more information, refer to the service graph view documentation.

Before you begin

Service graphs are generated in Grafana Agent and pushed to a Prometheus-compatible backend. Once generated, they can be represented in Grafana as a graph. You need these components to fully use service graphs.

Note

Grafana Alloy provides tooling to convert your Agent Static or Flow configuration files into a format that can be used by Alloy.

For more information, refer to Migrate to Alloy.

Enable service graphs in Grafana Agent

To start using service graphs, enable the feature in Grafana Agent configuration.

yaml
traces:
  configs:
    - name: default
      ...
      service_graphs:
        enabled: true

To see all the available configuration options, refer to the configuration reference.

Metrics are registered in the Agent’s default registerer. Therefore, they are exposed at /metrics in the Agent’s server port (default 12345). One option is to use the Agent self-scrape capabilities to export the metrics to a Prometheus-compatible backend.

yaml
metrics:
  configs:
    - name: default
      scrape_configs:
        - job_name: local_scrape
          static_configs:
            - targets: ['127.0.0.1:12345']
      remote_write:
        - url: <remote_write>

Grafana

The same service graph metrics can also be generated by Tempo. This is more efficient and recommended for larger installations.

For additional information about viewing service graph metrics in Grafana and calculating cardinality, refer to the server side documentation.