cw-infra-apps/grafana/charts/feature-integrations/docs/integrations/alloy.md
2025-05-28 10:01:42 +03:00

3.0 KiB

Grafana Alloy Integration

This integration captures the metrics and logs to understand the health and performance of your Grafana Alloy instances.

Values

Discovery Settings

Key Type Default Description
fieldSelectors list [] Discover Alloy instances based on field selectors.
labelSelectors object {} Discover Alloy instances based on label selectors. At least one is required.
metrics.portName string "http-metrics" Name of the port to scrape metrics from.
namespaces list [] Namespaces to look for Alloy instances in. Will automatically look for Alloy instances in all namespaces unless specified here

General Settings

Key Type Default Description
jobLabel string "integrations/alloy" The value of the job label for scraped metrics and logs
name string "" Name for this Alloy instance.

Metrics Settings

Key Type Default Description
metrics.enabled bool true Whether to enable metrics collection from Alloy.

Metric Processing Settings

Key Type Default Description
metrics.maxCacheSize string 100000 Sets the max_cache_size for prometheus.relabel component. This should be at least 2x-5x your largest scrape target or samples appended rate. (docs) Overrides global.maxCacheSize
metrics.tuning.excludeMetrics list [] Metrics to drop. Can use regular expressions.
metrics.tuning.includeMetrics list [] Metrics to keep. Can use regular expressions.
metrics.tuning.useDefaultAllowList bool true Filter the list of metrics from Grafana Alloy to the minimal set required for the Grafana Alloy integration.

Scrape Settings

Key Type Default Description
metrics.scrapeInterval string 60s How frequently to scrape metrics from Alloy.

Enabling

To enable this integration, create an instance with the Alloy names:

integrations:
  alloy:
    instances:
      - name: alloy
        labelSelectors:
          app.kubernetes.io/name: [alloy-metrics, alloy-singleton, alloy-logs]

Multiple instances can be used if you wish to set different configurations for each Alloy integration. For example, if you want full health and performance metrics for the alloy-metrics instance, but only the alloy_build_info metric for the other Alloy instances, you can use the following configuration:

integrations:
  alloy:
    instances:
      - name: alloy-metrics
        labelSelectors:
          app.kubernetes.io/name: alloy-metrics
      - name: alloy
        labelSelectors:
          app.kubernetes.io/name: [alloy-logs, alloy-singleton]
        metrics:
          tuning:
            useDefaultAllowList: false
            includedMetrics: [alloy_build_info]