Menu
Grafana Cloud

Use Adaptive Metrics to reduce cardinality

You can use Adaptive Metrics to solve increased cardinality issues and reduce your Grafana Cloud costs.

Set up the Adaptive Metrics HTTP API and upload the following aggregation rules that add the collector_id label to exported metrics:

json
{
  "rules": [
    {
      "metric": "traces_spanmetrics_latency_sum",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_spanmetrics_latency_count",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_spanmetrics_latency_bucket",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_spanmetrics_calls_total",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_spanmetrics_size_total",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_total",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_failed_total",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_server_seconds_sum",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_server_seconds_count",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_server_seconds_bucket",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_client_seconds_bucket",
      "drop_labels": ["collector_id", "namespace", "source"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_client_seconds_sum",
      "drop_labels": ["collector_id", "namespace", "source"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "traces_service_graph_request_client_seconds_count",
      "drop_labels": ["collector_id", "namespace", "source"],
      "aggregations": ["sum:counter"]
    },
    {
      "metric": "target_info",
      "drop_labels": ["collector_id"],
      "aggregations": ["sum:counter"]
    }
  ]
}