Releases: grafana/alloy
v1.11.0-rc.0
This is release v1.11.0-rc.0
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Breaking changes
-
Prometheus dependency had a major version upgrade from v2.55.1 to v3.4.2. (@thampiotr)
-
The
.
pattern in regular expressions in PromQL matches newline characters now. With this change a regular expressions like.*
matches strings that include\n
. This applies to matchers in queries and relabel configs in Prometheus and Loki components. -
The
enable_http2
inprometheus.remote_write
component's endpoints has been changed tofalse
by default. Previously, in Prometheus v2 the remote write http client would default to use http2. In order to parallelize multiple remote write queues across multiple sockets its preferable to not default to http2. If you prefer to use http2 for remote write you must now setenable_http2
totrue
in yourprometheus.remote_write
endpoints configuration section. -
The experimental CLI flag
--feature.prometheus.metric-validation-scheme
has been deprecated and has no effect. You can configure the metric validation scheme individually for eachprometheus.scrape
component. -
Log message format has changed for some of the
prometheus.*
components as part of the upgrade to Prometheus v3. -
The values of the
le
label of classic histograms and thequantile
label of summaries are now normalized upon ingestion. In previous Alloy versions, that used Prometheus v2, the value of these labels depended on the scrape protocol (protobuf vs text format) in some situations. This led to label values changing based on the scrape protocol. E.g. a metric exposed asmy_classic_hist{le="1"}
would be ingested asmy_classic_hist{le="1"}
via the text format, but asmy_classic_hist{le="1.0"}
via protobuf. This changed the identity of the metric and caused problems when querying the metric. In current Alloy release, which uses Prometheus v3, these label values will always be normalized to a float like representation. I.e. the above example will always result inmy_classic_hist{le="1.0"}
being ingested into Prometheus, no matter via which protocol. The effect of this change is that alerts, recording rules and dashboards that directly reference label values as whole numbers such asle="1"
will stop working.The recommended way to deal with this change is to fix references to integer
le
andquantile
label values, but otherwise do nothing and accept that some queries that span the transition time will produce inaccurate or unexpected results.
See the upstream Prometheus v3 migration guide for more details.
-
-
prometheus.exporter.windows
dependency has been updated to v0.31.1. (@dehaansa)- There are various renamed metrics and two removed collectors (
cs
,logon
).
- There are various renamed metrics and two removed collectors (
-
Add
otel_attrs_to_hec_metadata
configuration block tootelcol.exporter.splunkhec
to matchotelcol.receiver.splunkhec
. (@cgetzen) -
[
otelcol.processor.batch
] Two arguments have different default values. (@ptodev)send_batch_size
is now set to 2000 by default. It used to be 8192.send_batch_max_size
is now set to 3000 by default. It used to be 0.- This helps prevent issues with ingestion of batches that are too large.
-
OpenTelemetry Collector dependencies upgraded from v0.128.0 to v0.134.0. (@ptodev)
- The
otelcol.receiver.opencensus
component has been deprecated and will be removed in a future release, useotelcol.receiver.otelp
instead. - [
otelcol.exporter.*
] The deprecatedblocking
argument in thesending_queue
block has been removed.
Useblock_on_overflow
instead. - [
otelcol.receiver.kafka
,otelcol.exporter.kafka
]: Removed thebroker_addr
argument from theaws_msk
block.
Also removed theSASL/AWS_MSK_IAM
authentication mechanism. - [
otelcol.exporter.splunkhec
] Thebatcher
block is deprecated and will be removed in a future release. Use thequeue
block instead. - [
otelcol.exporter.loadbalancing
] Use a linear probe to decrease variance caused by hash collisions, which was causing a non-uniform distribution of loadbalancing. - [
otelcol.connector.servicegraph
] Thedatabase_name_attribute
argument has been removed. - [
otelcol.connector.spanmetrics
] Adds a default maximum number of exemplars within the metric export interval. - [
otelcol.processor.tail_sampling
] Add a newblock_on_overflow
config attribute.
- The
Features
-
Add the
otelcol.receiver.fluentforward
receiver to receive logs via Fluent Forward Protocol. (@rucciva) -
Add the
prometheus.enrich
component to enrich metrics using labels fromdiscovery.*
components. (@ArkovKonstantin) -
Add
node_filter
configuration block toloki.source.podlogs
component to enable node-based filtering for pod discovery. When enabled, only pods running on the specified node will be discovered and monitored, significantly reducing API server load and network traffic in DaemonSet deployments. (@QuentinBisson) -
(Experimental) Additions to experimental
database_observability.mysql
component:query_sample
collector now supports auto-enabling the necessarysetup_consumers
settings (@cristiangreco)query_sample
collector is now compatible with mysql less than 8.0.28 (@cristiangreco)- include
server_id
label on log entries (@matthewnolf) - support receiving targets argument and relabel those to include
server_id
(@matthewnolf) - updated the config blocks and documentation (@cristiangreco)
-
(Experimental) Additions to experimental
database_observability.postgres
component:- add
query_tables
collector for postgres (@matthewnolf) - add
cloud_provider.aws
configuration that enables optionally supplying the ARN of the database under observation. The ARN is appended to metric samples as labels for easier filtering and grouping of resources. - add
query_sample
collector for postgres (@gaantunes) - add
schema_table
collector for postgres (@fridgepoet) - include
server_id
label on logs and metrics (@matthewnolf)
- add
-
Add
otelcol.receiver.googlecloudpubsub
community component to receive metrics, traces, and logs from Google Cloud Pub/Sub subscription. (@eraac) -
(Experimental) Add a
honor_metadata
configuration argument to theprometheus.scrape
component.
When set totrue
, it will propagate metric metadata to downstream components. -
Add a flag to pyroscope.ebpf alloy configuration to set the off-cpu profiling threshold. (@luweglarz)
-
Add
encoding.url_encode
andencoding.url_decode
std lib functions. (@kalleep)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.10.2
This is release v1.10.2
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Bugfixes
-
Fix issue in
prometheus.write.queue
causing inability to increase shard count if existing WAL data was present on start. (@kgeckhart) -
Fix issue with
loki.source.gcplog
when push messages sent by gcp pub/sub only includesmessageId
. (@kalleep)
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.10.1
This is release v1.10.1
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Bugfixes
-
Fix issue with
faro.receiver
cors not allowing X-Scope-OrgID and traceparent headers. (@mar4uk) -
Fix issues with propagating cluster peers change notifications to components configured with remotecfg. (@dehaansa)
-
Fix issues with statistics reporter not including components only configured with remotecfg. (@dehaansa)
-
Fix issues with
prometheus.exporter.windows
not propagatingdns
collector config. (@dehaansa) -
Fixed a bug in
prometheus.write.queue
which caused retries even whenmax_retry_attempts
was set to0
. (@ptodev) -
Fixed a bug in
prometheus.write.queue
which caused labelling issues when providing more than one label inexternal_labels
. (@dehaansa) -
Add
application_host
andnetwork_inter_zone
features tobeyla.ebpf
component. (@marctc) -
Fix issues in
loki.process
wherestage.multiline
did not pass through structured metadata. (@jan-mrm) -
Fix URLs in the Windows installer being wrapped in quotes. (@martincostello)
-
Fixed an issue where certain
otelcol.*
components could prevent Alloy from shutting down when provided invalid configuration. (@thampiotr)
For a full list of changes, please refer to the CHANGELOG
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.10.0
This is release v1.10.0
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions.
Notable changes
Breaking changes
- Removing the
nanoserver-1809
container image for Windows 2019. (@ptodev)
This is due to the deprecation ofwindows-2019
GitHub Actions runners.
Thewindowsservercore-ltsc2022
Alloy image is still being published to DockerHub.
Bugfixes
- Upgrade
otelcol
components from OpenTelemetry v0.126.0 to v0.128.0 (@korniltsev, @dehaansa)- [
otelcol.exporter.kafka
]: Allow kafka exporter to produce to topics based on metadata key values. - [
otelcol.receiver.kafka
]: Enforce a backoff mechanism on non-permanent errors, such as when the queue is full. - [
otelcol.receiver.kafka
]: Don't restart the Kafka consumer on failed errors when message marking is enabled for them. - [
otelcol.connector.spanmetrics
]: Fix bug causing span metrics calls count to be always 0 when using delta temporality.
- [
Features
-
(Experimental) Add an
array.group_by
stdlib function to group items in an array by a key. (@wildum) -
Add the
otelcol.exporter.faro
exporter to export traces and logs to Faro endpoint. (@mar4uk) -
Add the
otelcol.receiver.faro
receiver to receive traces and logs from the Grafana Faro Web SDK. (@mar4uk) -
Add entropy support for
loki.secretfilter
(@romain-gaillard)
Enhancements
-
Add
hash_string_id
argument toforeach
block to hash the string representation of the pipeline id instead of using the string itself. (@wildum) -
(Experimental) Additions to experimental
database_observability.mysql
component:- Add
explain_plan
collector todatabase_observability.mysql
component. (@rgeyer) locks
: addition of data locks collector (@gaantunes @fridgepoet)- Query sample collector is now enabled by default (@matthewnolf)
- Add
-
(Experimental)
prometheus.write.queue
add support for exemplars. (@dehaansa) -
Wire in survey block for beyla.ebpf component. (@grcevski, @tpaschalis)
-
Upgrade
otelcol
components from OpenTelemetry v0.126.0 to v0.128.0 (@korniltsev, @dehaansa)- [
otelcol.processor.resourcedetection
]: Add additional OS properties to resource detection:os.build.id
andos.name
. - [
otelcol.processor.resourcedetection
]: Addhost.interface
resource attribute tosystem
detector. - [
otelcol.exporter.kafka
]: Fix Snappy compression codec support for the Kafka exporter. - [
otelcol.receiver.filelog
]: Introduceutf8-raw
encoding to avoid replacing invalid bytes with \uFFFD when reading UTF-8 input. - [
otelcol.processor.k8sattributes
]: Support extracting labels and annotations from k8s Deployments. - [
otelcol.processor.k8sattributes
]: Add option to configure automatic service resource attributes. - [
otelcol.exporter.datadog
]: Addshostname_detection_timeout
configuration option for Datadog Exporter and sets default to 25 seconds. - [
otelcol.receiver.datadog
]: Address semantic conventions noncompliance and add support for http/db. - [
otelcol.exporter.awss3
]: Add the retry mode, max attempts and max backoff to the settings.
- [
-
Add support for
conditions
and statement-specificerror_mode
inotelcol.processor.transform
. (@ptodev) -
Add
storage
andstart_from
args to cloudwatch logs receiver. (@boernd)
Bugfixes
- Fix extension registration for
otelcol.receiver.splunkhec
auth extensions. (@dehaansa)
Other changes
-
Mark
pyroscope.receive_http
andpyroscope.relabel
components as GA. (@marcsanmi) -
Upgrade
otelcol.exporter.windows
to v0.30.8 to get bugfixes and fixupdate
collector support. (@dehaansa)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.10.0-rc.0
This is release v1.10.0-rc.0
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Breaking changes
- Removing the
nanoserver-1809
container image for Windows 2019. (@ptodev)
This is due to the deprecation ofwindows-2019
GitHub Actions runners.
Thewindowsservercore-ltsc2022
Alloy image is still being published to DockerHub.
Bugfixes
- Upgrade
otelcol
components from OpenTelemetry v0.126.0 to v0.128.0 (@korniltsev, @dehaansa)- [
otelcol.exporter.kafka
]: Allow kafka exporter to produce to topics based on metadata key values. - [
otelcol.receiver.kafka
]: Enforce a backoff mechanism on non-permanent errors, such as when the queue is full. - [
otelcol.receiver.kafka
]: Don't restart the Kafka consumer on failed errors when message marking is enabled for them. - [
otelcol.connector.spanmetrics
]: Fix bug causing span metrics calls count to be always 0 when using delta temporality.
- [
Features
-
(Experimental) Add an
array.group_by
stdlib function to group items in an array by a key. (@wildum) -
Add the
otelcol.exporter.faro
exporter to export traces and logs to Faro endpoint. (@mar4uk) -
Add the
otelcol.receiver.faro
receiver to receive traces and logs from the Grafana Faro Web SDK. (@mar4uk) -
Add entropy support for
loki.secretfilter
(@romain-gaillard)
Enhancements
-
Add
hash_string_id
argument toforeach
block to hash the string representation of the pipeline id instead of using the string itself. (@wildum) -
(Experimental) Additions to experimental
database_observability.mysql
component:- Add
explain_plan
collector todatabase_observability.mysql
component. (@rgeyer) locks
: addition of data locks collector (@gaantunes @fridgepoet)- Query sample collector is now enabled by default (@matthewnolf)
- Add
-
(Experimental)
prometheus.write.queue
add support for exemplars. (@dehaansa) -
Wire in survey block for beyla.ebpf component. (@grcevski, @tpaschalis)
-
Upgrade
otelcol
components from OpenTelemetry v0.126.0 to v0.128.0 (@korniltsev, @dehaansa)- [
otelcol.processor.resourcedetection
]: Add additional OS properties to resource detection:os.build.id
andos.name
. - [
otelcol.processor.resourcedetection
]: Addhost.interface
resource attribute tosystem
detector. - [
otelcol.exporter.kafka
]: Fix Snappy compression codec support for the Kafka exporter. - [
otelcol.receiver.filelog
]: Introduceutf8-raw
encoding to avoid replacing invalid bytes with \uFFFD when reading UTF-8 input. - [
otelcol.processor.k8sattributes
]: Support extracting labels and annotations from k8s Deployments. - [
otelcol.processor.k8sattributes
]: Add option to configure automatic service resource attributes. - [
otelcol.exporter.datadog
]: Addshostname_detection_timeout
configuration option for Datadog Exporter and sets default to 25 seconds. - [
otelcol.receiver.datadog
]: Address semantic conventions noncompliance and add support for http/db. - [
otelcol.exporter.awss3
]: Add the retry mode, max attempts and max backoff to the settings.
- [
-
Add support for
conditions
and statement-specificerror_mode
inotelcol.processor.transform
. (@ptodev) -
Add
storage
andstart_from
args to cloudwatch logs receiver. (@boernd)
Bugfixes
- Fix extension registration for
otelcol.receiver.splunkhec
auth extensions. (@dehaansa)
Other changes
-
Mark
pyroscope.receive_http
andpyroscope.relabel
components as GA. (@marcsanmi) -
Upgrade
otelcol.exporter.windows
to v0.30.8 to get bugfixes and fixupdate
collector support. (@dehaansa)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.9.2
This is release v1.9.2
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions.
Notable changes:
Bugfixes
-
Send profiles concurrently from
pyroscope.ebpf
. (@korniltsev) -
Fix the
validate
command not understanding thelivedebugging
block. (@dehaansa) -
Fix invalid class names in python profiles obtained with
pyroscope.ebpf
. (@korniltsev) -
Fixed a bug which prevented non-secret optional secrets to be passed in as
number
arguments. (@ptodev) -
For CRD-based components (
prometheus.operator.*
), retry initializing informers if the apiserver request fails. This rectifies issues where the apiserver is not reachable immediately after node restart. (@dehaansa)
Other changes
- Add no-op blocks and attributes to the
prometheus.exporter.windows
component (@ptodev).
Version 1.9.0 of Alloy removed themsmq
block, as well as theenable_v2_collector
,where_clause
, anduse_api
attributes in theservice
block.
This made it difficult for users to upgrade, so those attributes have now been made a no-op instead of being removed.
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.9.1
This is release v1.9.1
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Bugfixes
-
Update the
prometheus.exporter.windows
component to version v0.30.7. This fixes an error with the exchange collector and terminal_services collector (@dehaansa) -
Fix
loki.source.firehose
to propagate specific cloudwatch event timestamps when useIncomingTs is set to true. (@michaelPotter) -
Fix elevated CPU usage when using some
otelcol
components due to debug logging. (@thampiotr)
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.9.0
This is release v1.9.0
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Breaking changes
-
The
prometheus.exporter.windows
component has been update to version v0.30.6. This update includes a significant rework of the exporter and includes some breaking changes. (@dehaansa)- The
msmq
andservice
collectors can no longer be configured with a WMI where clause. Any filtering previously done in a where clause will need to be done in aprometheus.relabel
component. - The
service
collector no longer providesenable_v2_collector
anduse_api
configuration options. - The
mscluster_*
andnetframework_*
collectors are now replaced with onemscluster
andnetframework
collector that allows you to enable the separate metric groupings individually. - The
teradici_pcoip
andvmware_blast
collectors have been removed from the exporter.
- The
-
The
prometheus.exporter.oracledb
component now embeds theoracledb_exporter from oracle
instead of the deprecatedoracledb_exporter from iamseth
for collecting metrics from an OracleDB server: (@wildum)- The arguments
username
,password
,default_metrics
, andcustom_metrics
are now supported. - The previously undocumented argument
custom_metrics
is now expecting a list of paths to custom metrics files. - The following metrics are no longer available by default: oracledb_sessions_activity, oracledb_tablespace_free_bytes
- The arguments
-
(Experimental) The
enable_context_propagation
argument inbeyla.ebpf
has been replaced with thecontext_propagation
argument.
Setenable_context_propagation
toall
to get the same behaviour asenable_context_propagation
being set totrue
.
Features
-
Bump snmp_exporter and embedded modules in
prometheus.exporter.snmp
to v0.29.0, add cisco_device module support (@v-zhuravlev) -
Add the
otelcol.storage.file
extension to support persistent sending queues andotelcol.receiver.filelog
file state tracking between restarts. (@dehaansa) -
Add
otelcol.exporter.googlecloud
community component to export metrics, traces, and logs to Google Cloud. (@motoki317) -
Add support to configure basic authentication for alloy http server. (@kalleep)
-
Add
validate
command to alloy that will perform limited validation of alloy configuration files. (@kalleep) -
Add support to validate foreach block when using
validate
command. (@kalleep) -
Add
otelcol.receiver.splunkhec
component to receive events in splunk hec format and forward them to otherotelcol.*
components. (@kalleep) -
Add support for Mimir federated rule groups in
mimir.rules.kubernetes
(@QuentinBisson)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.9.0-rc.2
This is release v1.9.0-rc.2
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Bugfixes
- Fix
pyroscope.scrape
scraping godeltaprof profiles. (@korniltsev)
Installation
Refer to our installation guide for how to install Grafana Alloy.
v1.9.0-rc.1
This is release v1.9.0-rc.1
of Grafana Alloy.
Upgrading
Read the release notes for specific instructions on upgrading from older versions:
Notable changes:
Breaking changes
-
The
prometheus.exporter.windows
component has been update to version v0.30.6. This update includes a significant rework of the exporter and includes some breaking changes. (@dehaansa)- The
msmq
andservice
collectors can no longer be configured with a WMI where clause. Any filtering previously done in a where clause will need to be done in aprometheus.relabel
component. - The
service
collector no longer providesenable_v2_collector
anduse_api
configuration options. - The
mscluster_*
andnetframework_*
collectors are now replaced with onemscluster
andnetframework
collector that allows you to enable the separate metric groupings individually. - The
teradici_pcoip
andvmware_blast
collectors have been removed from the exporter.
- The
-
The
prometheus.exporter.oracledb
component now embeds theoracledb_exporter from oracle
instead of the deprecatedoracledb_exporter from iamseth
for collecting metrics from an OracleDB server: (@wildum)- The arguments
username
,password
,default_metrics
, andcustom_metrics
are now supported. - The previously undocumented argument
custom_metrics
is now expecting a list of paths to custom metrics files. - The following metrics are no longer available by default: oracledb_sessions_activity, oracledb_tablespace_free_bytes
- The arguments
-
(Experimental) The
enable_context_propagation
argument inbeyla.ebpf
has been replaced with thecontext_propagation
argument.
Setenable_context_propagation
toall
to get the same behaviour asenable_context_propagation
being set totrue
.
Features
-
Bump snmp_exporter and embedded modules in
prometheus.exporter.snmp
to v0.29.0, add cisco_device module support (@v-zhuravlev) -
Add the
otelcol.storage.file
extension to support persistent sending queues andotelcol.receiver.filelog
file state tracking between restarts. (@dehaansa) -
Add
otelcol.exporter.googlecloud
community component to export metrics, traces, and logs to Google Cloud. (@motoki317) -
Add support to configure basic authentication for alloy http server. (@kalleep)
-
Add
validate
command to alloy that will perform limited validation of alloy configuration files. (@kalleep) -
Add support to validate foreach block when using
validate
command. (@kalleep) -
Add
otelcol.receiver.splunkhec
component to receive events in splunk hec format and forward them to otherotelcol.*
components. (@kalleep) -
Add support for Mimir federated rule groups in
mimir.rules.kubernetes
(@QuentinBisson)
For a full list of changes, please refer to the CHANGELOG!
Installation
Refer to our installation guide for how to install Grafana Alloy.