Grafana Agent
This is release v0.39.0 of Grafana Agent.
Upgrading
Read the relevant upgrade guides for specific instructions on upgrading from older versions:
Notable changes:
Breaking changes
-
otelcol.receiver.prometheuswill drop allotel_scope_infometrics when converting them to OTLP. (@wildum)- If the
otel_scope_infometric has labelsotel_scope_nameandotel_scope_version, their values will be used to set OTLP Instrumentation Scope name and version respectively. - Labels of
otel_scope_infometrics other thanotel_scope_nameandotel_scope_versionare added as scope attributes with the matching name and version.
- If the
-
The
targetblock inprometheus.exporter.blackboxrequires a mandatorynameargument instead of a block label. (@hainenber) -
In the azure exporter, dimension options will no longer be validated by the Azure API. (@kgeckhart)
- This change will not break any existing configurations and you can opt in to validation via the
validate_dimensionsconfiguration option. - Before this change, pulling metrics for azure resources with variable dimensions required one configuration per metric + dimension combination to avoid an error.
- After this change, you can include all metrics and dimensions in a single configuration and the Azure APIs will only return dimensions which are valid for the various metrics.
- This change will not break any existing configurations and you can opt in to validation via the
Features
- A new
discovery.ovhcloudcomponent for discovering scrape targets on OVHcloud. (@ptodev) - Allow specifying additional containers to run. (@juangom)
Enhancements
-
Flow Windows service: Support environment variables. (@jkroepke)
-
Allow disabling collection of root Cgroup stats in
prometheus.exporter.cadvisor(flow mode) and thecadvisorintegration (static mode). (@hainenber) -
Grafana Agent on Windows now automatically restarts on failure. (@hainenber)
-
Added metrics, alerts and dashboard visualisations to help diagnose issues with unhealthy components and components that take too long to evaluate. (@thampiotr)
-
The
httpconfig block may now reference exports from any component. Previously, onlyremote.*andlocal.*components could be referenced without a circular dependency. (@rfratto) -
Add support for Basic Auth-secured connection with Elasticsearch cluster using
prometheus.exporter.elasticsearch. (@hainenber) -
Add a
resource_to_telemetry_conversionargument tootelcol.exporter.prometheusfor converting resource attributes to Prometheus labels. (@hainenber) -
pyroscope.ebpfsupport python on arm64 platforms. (@korniltsev) -
otelcol.receiver.prometheusdoes not drop histograms without buckets anymore. (@wildum) -
Added exemplars support to
otelcol.receiver.prometheus. (@wildum) -
mimir.rules.kubernetesmay now retry its startup on failure. (@hainenber) -
Added links between compatible components in the documentation to make it easier to discover them. (@thampiotr)
-
Allow defining
HTTPClientConfigfordiscovery.ec2. (@cmbrad) -
The
remote.httpcomponent can optionally define a request body. (@tpaschalis) -
Added support for
loki.writeto flush WAL on agent shutdown. (@thepalbi) -
Add support for
integrations-nextstatic to flow config conversion. (@erikbaranowski) -
Add support for passing extra arguments to the static converter such as
-config.expand-env. (@erikbaranowski) -
Added 'country' mmdb-type to log pipeline-stage geoip. (@superstes)
-
Azure exporter enhancements for flow and static mode, (@kgeckhart)
- Allows for pulling metrics at the Azure subscription level instead of resource by resource
- Disable dimension validation by default to reduce the number of exporter instances needed for full dimension coverage
-
Add
max_cache_sizetoprometheus.relabelto allow configurability instead of hard coded 100,000. (@mattdurham) -
Add support for
http_sd_configwithin ascrape_configfor prometheus to flow config conversion. (@erikbaranowski) -
discovery.lightsailnow supports additional parameters for configuring HTTP client settings. (@ptodev) -
Add
sample_age_limitto remote_write config to drop samples older than a specified duration. (@marctc)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guides for how to install the variants of Grafana Agent: