Skip to content

feat(faro.receiver): Add sourcemap fetching from remote locations#4614

Merged
kalleep merged 1 commit intografana:mainfrom
Oxel40:faro-fetch-sourcemaps-from-remote
Apr 9, 2026
Merged

feat(faro.receiver): Add sourcemap fetching from remote locations#4614
kalleep merged 1 commit intografana:mainfrom
Oxel40:faro-fetch-sourcemaps-from-remote

Conversation

@Oxel40
Copy link
Copy Markdown
Contributor

@Oxel40 Oxel40 commented Oct 15, 2025

PR Description

This adds the ability to fetch sourcemaps from remote locations over HTTP to the faro.receiver. Allowing sourcemaps > location blocks to point to an HTTP URL as the path, e.g., path = "https://foo.com/blob/sourcemaps/".

The motivation behind this feature is to support the use case where your frontend is served by an external CDN and Alloy is running on internal infrastructure, where external resources are not readily accessible, and managing and attaching volumes to the Alloy container is complex or undesired. This feature allows you to host your sourcemaps internally, e.g., on a blob storage service. It also fits the use case where you don't want to expose sourcemaps to customers but still want to be able to fetch them internally for faro.receiver's stack-trace transformations.

If multiple location blocks are defined, blocks pointing to on-disk paths will be checked first before attempting to fetch the sourcemaps over HTTP.

Which issue(s) this PR fixes

None.

Notes to the Reviewer

None.

PR Checklist

  • CHANGELOG.md updated
  • Documentation added
  • Tests updated

@Oxel40 Oxel40 requested review from a team and clayton-cornell as code owners October 15, 2025 11:40
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
@clayton-cornell clayton-cornell added the type/docs Docs Squad label across all Grafana Labs repos label Oct 21, 2025
@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch from 48dd657 to 688f75f Compare October 22, 2025 15:15
@clayton-cornell clayton-cornell requested a review from a team October 22, 2025 21:57
@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch from 688f75f to 9c9fb6d Compare October 28, 2025 17:07
@github-actions
Copy link
Copy Markdown
Contributor

This PR has not had any activity in the past 90 days, so the needs-attention label has been added to it.
If you do not have enough time to follow up on this PR or you think it's no longer relevant, consider closing it.
The needs-attention label signals to maintainers that something has fallen through the cracks. No action is needed by you; your PR will be kept open and you do not have to respond to this comment. The label will be removed the next time this job runs if there is new activity.
Thank you for your contributions!

@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch 3 times, most recently from 9c632f6 to a8a5f1f Compare January 27, 2026 10:45
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
Comment thread docs/sources/reference/components/faro/faro.receiver.md Outdated
@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch 4 times, most recently from 5d059fc to 41de0ec Compare January 31, 2026 21:02
@clayton-cornell clayton-cornell requested a review from a team February 4, 2026 07:23
@RobbanHoglund
Copy link
Copy Markdown

RobbanHoglund commented Feb 12, 2026

@clayton-cornell @tomglenn How do we get some attention on this one?

@clayton-cornell
Copy link
Copy Markdown
Contributor

The dev team @grafana/grafana-alloy-maintainers needs to review.

@nissy-dev
Copy link
Copy Markdown

@clayton-cornell @Oxel40
This looks really useful—do you know if it's still being worked on?

If not, I'd be happy to help continue the work or open a PR building on top of this. Let me know what you think!

@Oxel40
Copy link
Copy Markdown
Contributor Author

Oxel40 commented Mar 27, 2026

@clayton-cornell @Oxel40 This looks really useful—do you know if it's still being worked on?

If not, I'd be happy to help continue the work or open a PR building on top of this. Let me know what you think!

@nissy-dev I'm still monitoring this PR and ready to make updates based on feedback, though I’m still waiting for a review from the @grafana/grafana-alloy-maintainers team. Not sure if there is some official way to bring some eyes to this PR

@clayton-cornell
Copy link
Copy Markdown
Contributor

@Oxel40 The initial ping to the maintainers gets the PR into the queue. They all see the updates to the PR, so any activity within the PR will generate an email to the team. If you don't see any action from the maintainers over a couple of weeks you could try an @ ping (like you just did).

@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch 2 times, most recently from ef5ba89 to b8507bf Compare April 7, 2026 08:18
Copy link
Copy Markdown
Contributor

@kalleep kalleep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM but some things that needs to be addressed before we can merge this one

Comment thread docs/sources/reference/components/faro/faro.receiver.md
Comment thread CHANGELOG.md Outdated
@kalleep kalleep changed the title faro.receiver: add sourcemap fetching from remote locations feat(faro.receiver): Add sourcemap fetching from remote locations Apr 8, 2026
@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch from b8507bf to e6e7b8f Compare April 9, 2026 07:28
@Oxel40 Oxel40 force-pushed the faro-fetch-sourcemaps-from-remote branch from e6e7b8f to 4932128 Compare April 9, 2026 07:30
@Oxel40 Oxel40 requested a review from kalleep April 9, 2026 07:32
@kalleep kalleep merged commit b6cb5da into grafana:main Apr 9, 2026
47 checks passed
jharvey10 pushed a commit that referenced this pull request Apr 23, 2026
🤖 I have created a release *beep* *boop*
---


## [1.16.0](v1.15.0...v1.16.0)
(2026-04-22)


### Features 🌟

* Add clustering for `loki.source.kubernetes_events`
([#6027](#6027))
([3dbf587](3dbf587))
* Add otelcol.auth.google client auth provider
([#5526](#5526))
([da99a66](da99a66))
* **beyla.ebpf:** Bump to v3.7.0
([#5966](#5966))
([5126c2e](5126c2e))
* **database_observability:** Add support for GCP Cloud SQL metadata
([#5875](#5875))
([5d23245](5d23245))
* **database_observability:** Make targets optional
([#5924](#5924))
([54664b2](54664b2))
* **database_observability:** Update default excluded schemas and users
([#6080](#6080))
([b386fff](b386fff))
* **faro.receiver:** Add sourcemap fetching from remote locations
([#4614](#4614))
([b6cb5da](b6cb5da))
* **helm:** Add support for global.image.pullPolicy
([#6069](#6069))
([2e2ce72](2e2ce72))
* **helm:** Allow configuring image pull policy for config reloader
([#5923](#5923))
([991539b](991539b))
* **loki.secretfilter:** Add `label_timed_out` option to mark timed-out
log lines ([#5898](#5898))
([2ad8834](2ad8834))
* **loki.secretfilter:** Add `secrets_redacted_by_category_total` metric
combining rule and origin
([#5855](#5855))
([053a2f7](053a2f7))
* **loki.secretfilter:** Change secretfilter to use go-re2 regex library
instead of stdlib
([#5909](#5909))
([c16a660](c16a660))
* **loki.secretfilter:** Remove redundant
`secrets_redacted_by_rule_total` and `secrets_redacted_by_origin
metrics` ([#5970](#5970))
([b16decb](b16decb))
* Oracle exporter can scrape more than one DB
([#6008](#6008))
([6fbad38](6fbad38))
* **prometheus.exporter.cloudwatch:** Upgrade YACE and drop aws-sdk-go
v1 support ([#5936](#5936))
([f1c036d](f1c036d))
* **prometheus.exporter.mysql:** Update to mysqld_exporter 0.19.0
([#5836](#5836))
([4f49b57](4f49b57))
* **prometheus.remote_write:** Sync WAL with upstream Prometheus
([#5907](#5907))
([e74a91b](e74a91b))
* **pyroscope:** Add support for extra async-profiler CLI arguments
([#5472](#5472))
([9251e33](9251e33))
* **pyroscope:** Replace Parca gRPC debuginfo upload with Pyroscope
Connect API ([#5891](#5891))
([e7ea34a](e7ea34a))
* **pyroscope:** Update debuginfo client for HTTP/1.1 upload API
([#6037](#6037))
([879d8e5](879d8e5))


### Bug Fixes 🐛

* Change service stop command from 'sc' to 'net'
([#5906](#5906))
([450973d](450973d))
* **database_observability.mysql:** Refactor explain plan loop batch
size ([#5894](#5894))
([f0fcd6b](f0fcd6b))
* **database_observability.postgres:** Cleanup embedded exporter
collectors on reconnection
([#6079](#6079))
([f30d9ae](f30d9ae))
* **database_observability.postgres:** Fix EXPLAIN param count when
placeholders repeat
([#6082](#6082))
([b612b81](b612b81))
* **database_observability:** Drop `schema_detection` from logs
([#6076](#6076))
([b0105cb](b0105cb))
* **database_observability:** Ensure connection_info_monitor goroutine
exits on Stop ([#5874](#5874))
([1e3334b](1e3334b))
* **deps:** Update module github.com/aws/aws-sdk-go-v2/service/s3 to
v1.97.3 [SECURITY]
([#6004](#6004))
([38f4346](38f4346))
* **deps:** Update module github.com/go-git/go-git/v5 to v5.17.1
[SECURITY] ([#5934](#5934))
([a5154af](a5154af))
* **deps:** Update module github.com/go-git/go-git/v5 to v5.18.0
[SECURITY] ([#6090](#6090))
([0e59d64](0e59d64))
* **deps:** Update module github.com/nwaples/rardecode/v2 to v2.2.0
[SECURITY]
([b44d51a](b44d51a))
* **deps:** Update module
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp to
v1.43.0 [SECURITY]
([#6016](#6016))
([d92c5c0](d92c5c0))
* **deps:** Update module
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp to
v1.43.0 [SECURITY]
([#6017](#6017))
([e655bbc](e655bbc))
* **deps:** Update module go.opentelemetry.io/otel/sdk to v1.43.0
[SECURITY] ([#6018](#6018))
([94006e8](94006e8))
* **deps:** Update some minor go dep versions
([#5896](#5896))
([4ddd0ed](4ddd0ed))
* **go:** Update alloy builder image to Go 1.25.9
([#6012](#6012))
([d2ae8b8](d2ae8b8))
* **go:** Upgrade to Go 1.25.9
([#6019](#6019))
([d777ed1](d777ed1))
* **Helm:** RBAC template handles empty rule arrays
([#4860](#4860))
([c9430e9](c9430e9))
* **loki.process:** Eliminate per-stream goroutines in multiline stage
([#6036](#6036))
([c089e2e](c089e2e))
* **loki.process:** Prevent stage.structured_metadata from adding the
same metadata several times
([#5965](#5965))
([0ec8a26](0ec8a26))
* **loki.process:** Wrap template in a custom type and move validation
to syntax.Validator
([#5910](#5910))
([700dd7d](700dd7d))
* **prometheus.exporter.postgres:** Close DB connections on update
([#6021](#6021))
([8da97cf](8da97cf))
* **prometheus.scrape:** Update scrape_native_histograms to be updated
at runtime ([#6087](#6087))
([18b205c](18b205c))
* **pyroscope.ebpf:** Fix deadlock on LRU eviction in irsymcache
([#5911](#5911))
([03ca563](03ca563))
* **pyroscope.ebpf:** Move Pyroscope ebpf metrics registration after
component error handling
([#5540](#5540))
([a3c57c0](a3c57c0))
* **pyroscope:** Set user agent on debuginfo connect-go client
([#6022](#6022))
([38ad1ef](38ad1ef))
* **ui:** Large arguments are downloaded as files instead of rendered
([#5268](#5268))
([26c67b3](26c67b3))
* Update go-m1cpu v0.1.7 -> v0.2.1 to fix M5 chip crash
([#6034](#6034))
([7fa0cbc](7fa0cbc))
* **windows-installer:** Increase service restart on failure delays
([#5969](#5969))
([add15b1](add15b1))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: grafana-alloybot[bot] <167359181+grafana-alloybot[bot]@users.noreply.github.com>
renovate Bot added a commit to sdwilsh/sOS that referenced this pull request Apr 23, 2026
##### [\`v1.16.0\`](https://github.com/grafana/alloy/releases/tag/v1.16.0)

##### Features 🌟

- Add clustering for `loki.source.kubernetes_events` ([#6027](https://github.com/grafana/alloy/issues/6027)) ([3dbf587](https://github.com/grafana/alloy/commit/3dbf58784723bf5da23d12bbc99bb5b1378d8bba)) ([@petewall](https://github.com/petewall))
- Add otelcol.auth.google client auth provider ([#5526](https://github.com/grafana/alloy/issues/5526)) ([da99a66](https://github.com/grafana/alloy/commit/da99a66dde2dcf931ee1a07a9a0c401a56d4f510)) ([@dashpole](https://github.com/dashpole), [@clayton-cornell](https://github.com/clayton-cornell))
- **beyla.ebpf:** Bump to v3.7.0 ([#5966](https://github.com/grafana/alloy/issues/5966)) ([5126c2e](https://github.com/grafana/alloy/commit/5126c2e80d362f738eb0f86f7f4e7ac2256a172a)) ([@marctc](https://github.com/marctc))
- **database\_observability:** Add support for GCP Cloud SQL metadata ([#5875](https://github.com/grafana/alloy/issues/5875)) ([5d23245](https://github.com/grafana/alloy/commit/5d232459ad9d49d4ca66ad30f47ef503d3ec8718)) ([@cristiangreco](https://github.com/cristiangreco), [@clayton-cornell](https://github.com/clayton-cornell))
- **database\_observability:** Make targets optional ([#5924](https://github.com/grafana/alloy/issues/5924)) ([54664b2](https://github.com/grafana/alloy/commit/54664b207666c7f1e080d5b0f0fd297e5709347e)) ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability:** Update default excluded schemas and users ([#6080](https://github.com/grafana/alloy/issues/6080)) ([b386fff](https://github.com/grafana/alloy/commit/b386fffd713ad495d128c2671726914756802bd9)) ([@cristiangreco](https://github.com/cristiangreco))
- **faro.receiver:** Add sourcemap fetching from remote locations ([#4614](https://github.com/grafana/alloy/issues/4614)) ([b6cb5da](https://github.com/grafana/alloy/commit/b6cb5dac66addea4e43e08c864544e1d069558a6)) ([@Oxel40](https://github.com/Oxel40))
- **helm:** Add support for global.image.pullPolicy ([#6069](https://github.com/grafana/alloy/issues/6069)) ([2e2ce72](https://github.com/grafana/alloy/commit/2e2ce72cae99a00eecb9febe0f728de4c1465417)) ([@petewall](https://github.com/petewall))
- **helm:** Allow configuring image pull policy for config reloader ([#5923](https://github.com/grafana/alloy/issues/5923)) ([991539b](https://github.com/grafana/alloy/commit/991539bfc3c7bc0f32377f6eb45c445069a955bf)) ([@kalleep](https://github.com/kalleep))
- **loki.secretfilter:** Add `label_timed_out` option to mark timed-out log lines ([#5898](https://github.com/grafana/alloy/issues/5898)) ([2ad8834](https://github.com/grafana/alloy/commit/2ad8834551402bfd49cc33e659c4ae1308d09b05)) ([@kleimkuhler](https://github.com/kleimkuhler))
- **loki.secretfilter:** Add `secrets_redacted_by_category_total` metric combining rule and origin ([#5855](https://github.com/grafana/alloy/issues/5855)) ([053a2f7](https://github.com/grafana/alloy/commit/053a2f736b754fa67e2df718c1efe81e12dd973c)) ([@kleimkuhler](https://github.com/kleimkuhler))
- **loki.secretfilter:** Change secretfilter to use go-re2 regex library instead of stdlib ([#5909](https://github.com/grafana/alloy/issues/5909)) ([c16a660](https://github.com/grafana/alloy/commit/c16a660b912a948badc4e69de4eeab6edc1b3364)) ([@mikefat](https://github.com/mikefat))
- **loki.secretfilter:** Remove redundant `secrets_redacted_by_rule_total` and `secrets_redacted_by_origin metrics` ([#5970](https://github.com/grafana/alloy/issues/5970)) ([b16decb](https://github.com/grafana/alloy/commit/b16decb5ba4c6efe0c4aaeb0340c3e315c38bef7)) ([@kleimkuhler](https://github.com/kleimkuhler))
- Oracle exporter can scrape more than one DB ([#6008](https://github.com/grafana/alloy/issues/6008)) ([6fbad38](https://github.com/grafana/alloy/commit/6fbad386ed9afc99c51af073b8678f2b3321b1d1)) ([@ptodev](https://github.com/ptodev))
- **prometheus.exporter.cloudwatch:** Upgrade YACE and drop aws-sdk-go v1 support ([#5936](https://github.com/grafana/alloy/issues/5936)) ([f1c036d](https://github.com/grafana/alloy/commit/f1c036da4445a839a3f051bd187eb53fc7dae868)) ([@x1unix](https://github.com/x1unix))
- **prometheus.exporter.mysql:** Update to mysqld\_exporter 0.19.0 ([#5836](https://github.com/grafana/alloy/issues/5836)) ([4f49b57](https://github.com/grafana/alloy/commit/4f49b57829bcbb8f5ecd18daa8b58127743562ba)) ([@cristiangreco](https://github.com/cristiangreco))
- **prometheus.remote\_write:** Sync WAL with upstream Prometheus ([#5907](https://github.com/grafana/alloy/issues/5907)) ([e74a91b](https://github.com/grafana/alloy/commit/e74a91b346b5ec4ee0d93b6a82edb9921f6e26e6)) ([@x1unix](https://github.com/x1unix))
- **pyroscope:** Add support for extra async-profiler CLI arguments ([#5472](https://github.com/grafana/alloy/issues/5472)) ([9251e33](https://github.com/grafana/alloy/commit/9251e33515e953074722c23651cd4bc8f80861e0)) ([@ivanape](https://github.com/ivanape))
- **pyroscope:** Replace Parca gRPC debuginfo upload with Pyroscope Connect API ([#5891](https://github.com/grafana/alloy/issues/5891)) ([e7ea34a](https://github.com/grafana/alloy/commit/e7ea34adb71870b712d3a0d76fba71a5a56aebee)) ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))
- **pyroscope:** Update debuginfo client for HTTP/1.1 upload API ([#6037](https://github.com/grafana/alloy/issues/6037)) ([879d8e5](https://github.com/grafana/alloy/commit/879d8e508d3e617b3dd4eff666a4c2046a00cbcd)) ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))

##### Bug Fixes 🐛

- Change service stop command from 'sc' to 'net' ([#5906](https://github.com/grafana/alloy/issues/5906)) ([450973d](https://github.com/grafana/alloy/commit/450973d22b8174ed697f96b0bdef2ba104f098e6)) ([@mateuszdrab](https://github.com/mateuszdrab))
- **database\_observability.mysql:** Refactor explain plan loop batch size ([#5894](https://github.com/grafana/alloy/issues/5894)) ([f0fcd6b](https://github.com/grafana/alloy/commit/f0fcd6ba364e04df3712c2408d81b6986e8f0840)) ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Cleanup embedded exporter collectors on reconnection ([#6079](https://github.com/grafana/alloy/issues/6079)) ([f30d9ae](https://github.com/grafana/alloy/commit/f30d9ae51c78e9a18eedde8bd0a122d5bca48ad6)) ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Fix EXPLAIN param count when placeholders repeat ([#6082](https://github.com/grafana/alloy/issues/6082)) ([b612b81](https://github.com/grafana/alloy/commit/b612b811bd8a07702dc77111a412d403711e0a2f)) ([@rgeyer](https://github.com/rgeyer))
- **database\_observability:** Drop `schema_detection` from logs ([#6076](https://github.com/grafana/alloy/issues/6076)) ([b0105cb](https://github.com/grafana/alloy/commit/b0105cba30f219cf2ad32e107ef2d44d09e970b4)) ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability:** Ensure connection\_info\_monitor goroutine exits on Stop ([#5874](https://github.com/grafana/alloy/issues/5874)) ([1e3334b](https://github.com/grafana/alloy/commit/1e3334bca541fe3e77521f3203c95a0b4b4a26ff)) ([@cristiangreco](https://github.com/cristiangreco))
- **deps:** Update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.97.3 \[SECURITY] ([#6004](https://github.com/grafana/alloy/issues/6004)) ([38f4346](https://github.com/grafana/alloy/commit/38f43467eaced756ee6556767426a36d2624b1de))
- **deps:** Update module github.com/go-git/go-git/v5 to v5.17.1 \[SECURITY] ([#5934](https://github.com/grafana/alloy/issues/5934)) ([a5154af](https://github.com/grafana/alloy/commit/a5154af3dfc1ed58af087b34778fdbd135a51397))
- **deps:** Update module github.com/go-git/go-git/v5 to v5.18.0 \[SECURITY] ([#6090](https://github.com/grafana/alloy/issues/6090)) ([0e59d64](https://github.com/grafana/alloy/commit/0e59d6438c60c64b705e5f5192e0d53dc2c80cd9))
- **deps:** Update module github.com/nwaples/rardecode/v2 to v2.2.0 \[SECURITY] ([b44d51a](https://github.com/grafana/alloy/commit/b44d51ae1d282ee999498867e4590f39cf19c0ff)) ([@jharvey10](https://github.com/jharvey10))
- **deps:** Update module go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp to v1.43.0 \[SECURITY] ([#6016](https://github.com/grafana/alloy/issues/6016)) ([d92c5c0](https://github.com/grafana/alloy/commit/d92c5c07ac137784967bb1d03816a0c111901293))
- **deps:** Update module go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp to v1.43.0 \[SECURITY] ([#6017](https://github.com/grafana/alloy/issues/6017)) ([e655bbc](https://github.com/grafana/alloy/commit/e655bbc93ef51150d3cbcdc4ba13748ba9818f1a))
- **deps:** Update module go.opentelemetry.io/otel/sdk to v1.43.0 \[SECURITY] ([#6018](https://github.com/grafana/alloy/issues/6018)) ([94006e8](https://github.com/grafana/alloy/commit/94006e8b117a3e2e86649465082a9eec4473b9a3))
- **deps:** Update some minor go dep versions ([#5896](https://github.com/grafana/alloy/issues/5896)) ([4ddd0ed](https://github.com/grafana/alloy/commit/4ddd0ed7b672515ed2f5b5a502fdce5630617a69)) ([@jharvey10](https://github.com/jharvey10))
- **go:** Update alloy builder image to Go 1.25.9 ([#6012](https://github.com/grafana/alloy/issues/6012)) ([d2ae8b8](https://github.com/grafana/alloy/commit/d2ae8b82e5d751a9c6a6055af01aed0ea2339b2a)) ([@x1unix](https://github.com/x1unix))
- **go:** Upgrade to Go 1.25.9 ([#6019](https://github.com/grafana/alloy/issues/6019)) ([d777ed1](https://github.com/grafana/alloy/commit/d777ed157c4d8df15c4298dbc7f7b6ab05a94975)) ([@x1unix](https://github.com/x1unix), [@kalleep](https://github.com/kalleep))
- **Helm:** RBAC template handles empty rule arrays ([#4860](https://github.com/grafana/alloy/issues/4860)) ([c9430e9](https://github.com/grafana/alloy/commit/c9430e9208b4b4390afbae15efe4314388518d12)) ([@naptalie](https://github.com/naptalie), [@dehaansa](https://github.com/dehaansa), [@kalleep](https://github.com/kalleep))
- **loki.process:** Eliminate per-stream goroutines in multiline stage ([#6036](https://github.com/grafana/alloy/issues/6036)) ([c089e2e](https://github.com/grafana/alloy/commit/c089e2ed73ae82888aa9b51df0f10555da3c6e15)) ([@kgeckhart](https://github.com/kgeckhart))
- **loki.process:** Prevent stage.structured\_metadata from adding the same metadata several times ([#5965](https://github.com/grafana/alloy/issues/5965)) ([0ec8a26](https://github.com/grafana/alloy/commit/0ec8a26665b243c901925a139b3718c0825592dc)) ([@kalleep](https://github.com/kalleep), [@thampiotr](https://github.com/thampiotr))
- **loki.process:** Wrap template in a custom type and move validation to syntax.Validator ([#5910](https://github.com/grafana/alloy/issues/5910)) ([700dd7d](https://github.com/grafana/alloy/commit/700dd7d0f164f96293bbbb961f18587a2cc33a64)) ([@kalleep](https://github.com/kalleep))
- **prometheus.exporter.postgres:** Close DB connections on update ([#6021](https://github.com/grafana/alloy/issues/6021)) ([8da97cf](https://github.com/grafana/alloy/commit/8da97cf6732861f08c9047867f692dc5c7be8a8e)) ([@kalleep](https://github.com/kalleep))
- **prometheus.scrape:** Update scrape\_native\_histograms to be updated at runtime ([#6087](https://github.com/grafana/alloy/issues/6087)) ([18b205c](https://github.com/grafana/alloy/commit/18b205cf5ef3eed1fb5c513362a7ec347c0e6c67)) ([@kalleep](https://github.com/kalleep))
- **pyroscope.ebpf:** Fix deadlock on LRU eviction in irsymcache ([#5911](https://github.com/grafana/alloy/issues/5911)) ([03ca563](https://github.com/grafana/alloy/commit/03ca563b654eda057a9bcc70f18141ca13ba56eb)) ([@luweglarz](https://github.com/luweglarz))
- **pyroscope.ebpf:** Move Pyroscope ebpf metrics registration after component error handling ([#5540](https://github.com/grafana/alloy/issues/5540)) ([a3c57c0](https://github.com/grafana/alloy/commit/a3c57c0e5f6df99f21150c72af54db9177904c0b)) ([@crbednarz](https://github.com/crbednarz), [@marcsanmi](https://github.com/marcsanmi))
- **pyroscope:** Set user agent on debuginfo connect-go client ([#6022](https://github.com/grafana/alloy/issues/6022)) ([38ad1ef](https://github.com/grafana/alloy/commit/38ad1ef1823efd08836d681b79e4c1e971c6584b)) ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))
- **ui:** Large arguments are downloaded as files instead of rendered ([#5268](https://github.com/grafana/alloy/issues/5268)) ([26c67b3](https://github.com/grafana/alloy/commit/26c67b33ef830ce4aafa8fec46749a1caaa873c3)) ([@ptodev](https://github.com/ptodev))
- Update go-m1cpu v0.1.7 -> v0.2.1 to fix M5 chip crash ([#6034](https://github.com/grafana/alloy/issues/6034)) ([7fa0cbc](https://github.com/grafana/alloy/commit/7fa0cbce40c5d09cec5f6b45a10de823ec0c9732)) ([@ymotongpoo](https://github.com/ymotongpoo))
- **windows-installer:** Increase service restart on failure delays ([#5969](https://github.com/grafana/alloy/issues/5969)) ([add15b1](https://github.com/grafana/alloy/commit/add15b1aa026658d96de74ca6281c45027d09933)) ([@rknightion](https://github.com/rknightion))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.16/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.16/get-started/install/

---
##### [\`v1.15.1\`](https://github.com/grafana/alloy/releases/tag/v1.15.1)

##### Bug Fixes 🐛

- Correct a formatting issue in OpenTelemetry docs page ([#5995](https://github.com/grafana/alloy/issues/5995)) ([f714154](https://github.com/grafana/alloy/commit/f714154c5c271dcaebbe1144fdb7f6a7c6df16a6))
  ([@tiffany76](https://github.com/tiffany76))
- **database\_observability:** Ensure connection\_info\_monitor goroutine exits on Stop \[backport] ([#5952](https://github.com/grafana/alloy/issues/5952)) ([a9e01e7](https://github.com/grafana/alloy/commit/a9e01e758cad35a63eb9d49d21889ada0e289046))
  ([@cristiangreco](https://github.com/cristiangreco))
- **deps:** Update module github.com/go-git/go-git/v5 to v5.17.1 \[SECURITY] \[backport] ([#5984](https://github.com/grafana/alloy/issues/5984)) ([add0a5d](https://github.com/grafana/alloy/commit/add0a5d63440dc672731b7227951efc9609983f0))
- **deps:** Update module github.com/nwaples/rardecode/v2 to v2.2.0 \[SECURITY] \[backport] ([910a37b](https://github.com/grafana/alloy/commit/910a37bc58499a8379d8da7843b3a3739290a91d))
  ([@jharvey10](https://github.com/jharvey10))
- **deps:** Update module go.opentelemetry.io/otel/sdk to v1.43.0 \[SECURITY] \[backport] ([#6042](https://github.com/grafana/alloy/issues/6042)) ([833b178](https://github.com/grafana/alloy/commit/833b1782070e70e41cf7b9474a7c608f65030e6a))
- **deps:** Update npm dependency vite to v7.3.2 \[SECURITY] \[backport] ([#6043](https://github.com/grafana/alloy/issues/6043)) ([89e5ecf](https://github.com/grafana/alloy/commit/89e5ecf0f89df4f1f82955b93144ec523be95e3d))
  ([@jharvey10](https://github.com/jharvey10))
- **go:** Update alloy builder image to Go 1.25.9 \[backport] ([#6020](https://github.com/grafana/alloy/issues/6020)) ([126b1b5](https://github.com/grafana/alloy/commit/126b1b57bd3d3440d980fb5ea89fb21651f08e42))
  ([@x1unix](https://github.com/x1unix))
- **go:** Upgrade to Go 1.25.9 \[backport] ([#6024](https://github.com/grafana/alloy/issues/6024)) ([1bfd933](https://github.com/grafana/alloy/commit/1bfd933e06ad424c841d8faa7bdbc6bc0b85c430))
  ([@x1unix](https://github.com/x1unix), [@kalleep](https://github.com/kalleep))
- **prometheus.exporter.postgres:** Close DB connections on update \[backport] ([#6023](https://github.com/grafana/alloy/issues/6023)) ([b9eeb74](https://github.com/grafana/alloy/commit/b9eeb748d0245668a58c98a4748bd7b9c4f8f01c)) ([@kalleep](https://github.com/kalleep))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.15/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.15/get-started/install/

---
##### [\`v1.15.0\`](https://github.com/grafana/alloy/releases/tag/v1.15.0)

##### ⚠ BREAKING CHANGES

- **otelcol:** Upgrade to OTel Collector v0.147.0 ([#5784](https://github.com/grafana/alloy/issues/5784))
- Renamed undocumented metrics that was previously prefixed with \<component\_id>*\<metric\_name> to loki\_source\_awsfirehose*\<metric\_name>

##### Features 🌟

- **alloy-mixin:** Add filters, groupBy, and multi-select dashboard variables ([#5611](https://github.com/grafana/alloy/issues/5611)) ([3ef714e](https://github.com/grafana/alloy/commit/3ef714ea192ccba5c1536be727d81e02d4a425c1))
  ([@thampiotr](https://github.com/thampiotr), [@cursoragent](https://github.com/cursoragent))
- **beyla.ebpf:** Add support for Prometheus native histograms ([#5812](https://github.com/grafana/alloy/issues/5812)) ([7d806fb](https://github.com/grafana/alloy/commit/7d806fbf5a2b83b42d603e61fc917ddd5a4d272f))
  ([@fstab](https://github.com/fstab))
- **beyla.ebpf:** Bump Beyla to v3.6 ([#5833](https://github.com/grafana/alloy/issues/5833)) ([cd878d5](https://github.com/grafana/alloy/commit/cd878d590abe132d32d14f3b9cb5fb7f29801c7f))
  ([@marctc](https://github.com/marctc), [@tpaschalis](https://github.com/tpaschalis))
- **converters:** Support converting Promtail limits\_config ([#5777](https://github.com/grafana/alloy/issues/5777)) ([9491385](https://github.com/grafana/alloy/commit/9491385d8f695079e42aa0dd752946037b34f531))
  ([@ptodev](https://github.com/ptodev))
- **database\_observability.mysql:** Add filtering of query samples and wait events by minimum duration ([#5678](https://github.com/grafana/alloy/issues/5678)) ([5a4d03b](https://github.com/grafana/alloy/commit/5a4d03b0b3afe82bcab40ba9e50b212800c32ea1))
  ([@cristiangreco](https://github.com/cristiangreco), [@clayton-cornell](https://github.com/clayton-cornell))
- **database\_observability.mysql:** Embed prometheus exporter within db-o11y component ([#5711](https://github.com/grafana/alloy/issues/5711)) ([88bffb0](https://github.com/grafana/alloy/commit/88bffb0dd71d2e4bd5068048856604b6ba560f56))
  ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability.postgres:** Add configurable limit to `pg_stat_statements` query ([#5639](https://github.com/grafana/alloy/issues/5639)) ([0de0a3f](https://github.com/grafana/alloy/commit/0de0a3f1a76c109f62921fa5b795c5f218e59cb6))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Embed prometheus exporter within db-o11y component ([#5714](https://github.com/grafana/alloy/issues/5714)) ([9dc2e83](https://github.com/grafana/alloy/commit/9dc2e834eb8cba7a13f014f65bd545d25722fbec))
  ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability:** Add scaffolding for db-o11y integration tests ([#5575](https://github.com/grafana/alloy/issues/5575)) ([ca637d8](https://github.com/grafana/alloy/commit/ca637d8594eefa11abf0323609a09972c03b589d))
  ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability:** Promote components to stable ([#5736](https://github.com/grafana/alloy/issues/5736)) ([21a9af6](https://github.com/grafana/alloy/commit/21a9af67b1ccd9c2f3cda6c1a2ff8edfe5127445))
  ([@matthewnolf](https://github.com/matthewnolf), [@clayton-cornell](https://github.com/clayton-cornell))
- Expose Functionality to Handle syslogs with Empty MSG Field ([#5687](https://github.com/grafana/alloy/issues/5687)) ([178b1e6](https://github.com/grafana/alloy/commit/178b1e642eb5da666ccc1c4d79dd78aa1a526573))
  ([@blewis12](https://github.com/blewis12), [@clayton-cornell](https://github.com/clayton-cornell), [@x1unix](https://github.com/x1unix))
- **helm:** Allow setting `revisionHistoryLimit` in the helm chart ([#5847](https://github.com/grafana/alloy/issues/5847)) ([9713ad4](https://github.com/grafana/alloy/commit/9713ad4314e28b6bed4bbcee9cef5357dc58d4f4))
  ([@hegerdes](https://github.com/hegerdes))
- **loki.process:** Support structured metadata as source type of stage.labels for loki.process ([#5055](https://github.com/grafana/alloy/issues/5055)) ([eda3152](https://github.com/grafana/alloy/commit/eda315237843048856706ffbd5a3c0c278f71683))
  ([@baurmatt](https://github.com/baurmatt))
- **loki.secretfilter:** Add sampling for secretfilter entries ([#5663](https://github.com/grafana/alloy/issues/5663)) ([9997802](https://github.com/grafana/alloy/commit/9997802c5b6f2570834cf29d814a02320d02ac8b))
  ([@mikefat](https://github.com/mikefat), [@clayton-cornell](https://github.com/clayton-cornell))
- **loki.source.gcplog:** Add alloy config for MaxOutstandingBytes and MaxOutstandingMessages ([#5760](https://github.com/grafana/alloy/issues/5760)) ([c2b9f0b](https://github.com/grafana/alloy/commit/c2b9f0b5fc6287b4abb61df7f64102c28c06aaad))
  ([@kalleep](https://github.com/kalleep))
- **loki.write:** Add loki pipeline latency metric ([#5702](https://github.com/grafana/alloy/issues/5702)) ([cc744a1](https://github.com/grafana/alloy/commit/cc744a1f5abbd54f8a3a0680ca23161247a9bf8b))
  ([@kalleep](https://github.com/kalleep), [@thampiotr](https://github.com/thampiotr))
- **mixin:** Update loki dashboard ([#5848](https://github.com/grafana/alloy/issues/5848)) ([b616d58](https://github.com/grafana/alloy/commit/b616d585605af017cabb5f1a65124ad4736a63a7))
  ([@kalleep](https://github.com/kalleep))
- **otelcol.receiver.datadog:** Expose intake proxy and trace\_id\_cache\_size settings ([#5776](https://github.com/grafana/alloy/issues/5776)) ([0384ad4](https://github.com/grafana/alloy/commit/0384ad4bde5ee641e75ec3d27809e4929c4ecdf8))
  ([@thampiotr](https://github.com/thampiotr))
- **otelcol:** Upgrade to OTel Collector v0.147.0 ([#5784](https://github.com/grafana/alloy/issues/5784)) ([a9b5396](https://github.com/grafana/alloy/commit/a9b5396142bb84e97854296d093d1625c20d4410))
  ([@kalleep](https://github.com/kalleep), [@blewis12](https://github.com/blewis12), [@clayton-cornell](https://github.com/clayton-cornell))
- **prometheus.exporter.cloudwatch:** Use aws-sdk-go-v2 by default ([#5768](https://github.com/grafana/alloy/issues/5768)) ([a2f3489](https://github.com/grafana/alloy/commit/a2f34892f52f3a0cfddb3a48f82e5770b77951ba))
  ([@x1unix](https://github.com/x1unix))
- **pyroscope.ebpf:** Add comm, pid labels and kernel frame options ([#5769](https://github.com/grafana/alloy/issues/5769)) ([4fa7068](https://github.com/grafana/alloy/commit/4fa706876d43684d686f35e05e942f04e0bb3ad8))
  ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))
- **pyroscope.ebpf:** Expose OTel eBPF profiler internal metrics to Prometheus ([#5774](https://github.com/grafana/alloy/issues/5774)) ([e713392](https://github.com/grafana/alloy/commit/e71339232b1d0b28fdd11a2b15c2a2ceb93aafc3))
  ([@korniltsev-grafanista-yolo-vibecoder239](https://github.com/korniltsev-grafanista-yolo-vibecoder239), [@korniltsev-grafanista](https://github.com/korniltsev-grafanista))
- **pyroscope:** Copy prometheus common/config HTTP client into promhttp2 package ([#5810](https://github.com/grafana/alloy/issues/5810)) ([0b31aaa](https://github.com/grafana/alloy/commit/0b31aaa01c31f83e9a0146cbd1d3aa9fa21b92b7))
  ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))

##### Bug Fixes 🐛

- **beyla:** Inject Beyla version into binary via ldflags ([#5735](https://github.com/grafana/alloy/issues/5735)) ([71c03ec](https://github.com/grafana/alloy/commit/71c03ec65f2c41d24f8d54a4c3c2673b48f6e347))
  ([@pratik50](https://github.com/pratik50))
- Correctly handle the deprecated topic field in otelcol.receiver.kafka configuration ([#5726](https://github.com/grafana/alloy/issues/5726)) ([538ac75](https://github.com/grafana/alloy/commit/538ac7507e54b046fae46eded742b4d65f4c5e30))
  ([@thampiotr](https://github.com/thampiotr))
- **database\_observability.mysql:** Ensure result sets are properly closed ([#5893](https://github.com/grafana/alloy/issues/5893)) ([f28f91c](https://github.com/grafana/alloy/commit/f28f91c33dccfd419e10544b4dd0457696841f54))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability:** Ensure all collectors are properly stopped ([#5796](https://github.com/grafana/alloy/issues/5796)) ([6bfa2a7](https://github.com/grafana/alloy/commit/6bfa2a7227db525fb6cfd48d55648304a76bbbc2))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability:** Ensure that `connection_info` metric is only emitted for a given DB instance when it is available ([#5707](https://github.com/grafana/alloy/issues/5707)) ([bf0c3dc](https://github.com/grafana/alloy/commit/bf0c3dce4c80e5d870635e656a79c42449351914))
  ([@rgeyer](https://github.com/rgeyer))
- **database\_observability:** Solve test flakiness in MySQL and Postgres sample collectors ([#5130](https://github.com/grafana/alloy/issues/5130)) ([a7590d1](https://github.com/grafana/alloy/commit/a7590d1376f64119ce9c75f318d5b120d199bb0e))
  ([@gaantunes](https://github.com/gaantunes), [@cursoragent](https://github.com/cursoragent), [@cristiangreco](https://github.com/cristiangreco))
- **deps:** Update module github.com/buger/jsonparser to v1.1.2 \[SECURITY] ([#5834](https://github.com/grafana/alloy/issues/5834)) ([b2fee8a](https://github.com/grafana/alloy/commit/b2fee8a8a40bf3259e1b9f35ac4c89d40cef92cb))
- **deps:** Update module github.com/buger/jsonparser to v1.1.2 \[SECURITY] ([#5870](https://github.com/grafana/alloy/issues/5870)) ([698b4e7](https://github.com/grafana/alloy/commit/698b4e7688b1dd3206b158efd1b4ad7006e99b82))
- **deps:** Update module google.golang.org/grpc to v1.79.3 \[SECURITY] ([#5825](https://github.com/grafana/alloy/issues/5825)) ([5cfbcc4](https://github.com/grafana/alloy/commit/5cfbcc430600dba25a65edc255eec8345b72e923))
- **deps:** Update module google.golang.org/grpc to v1.79.3 \[SECURITY] ([#5871](https://github.com/grafana/alloy/issues/5871)) ([259152d](https://github.com/grafana/alloy/commit/259152dbbffdd9e18b4760a6c4f66b569e67d5c3))
- **deps:** Update npm dependencies ([#5876](https://github.com/grafana/alloy/issues/5876)) ([f0f6a11](https://github.com/grafana/alloy/commit/f0f6a11b9455eda8c4a344d17455eceebc5a2613))
- **deps:** Update npm deps across repo to address CVE-2026-26996 and  CVE-2026-22029 ([#5872](https://github.com/grafana/alloy/issues/5872)) ([df518dd](https://github.com/grafana/alloy/commit/df518dd738ec9354c37c99bba6a434efbd5e4562))
  ([@jharvey10](https://github.com/jharvey10))
- **go:** Update build image to go v1.25.8 ([#5832](https://github.com/grafana/alloy/issues/5832)) ([f9b3043](https://github.com/grafana/alloy/commit/f9b304387fb76167d96f8cb8f719502e6c15bb7d))
  ([@kalleep](https://github.com/kalleep), [@blewis12](https://github.com/blewis12))
- **go:** Update go to 1.25.8 ([#5844](https://github.com/grafana/alloy/issues/5844)) ([534e7db](https://github.com/grafana/alloy/commit/534e7db016849392b44be851f23cd74f3ae59dcb))
  ([@kalleep](https://github.com/kalleep))
- Helm: alloy.extraPorts not working with service.type=NodePort \[COPY] ([#5892](https://github.com/grafana/alloy/issues/5892)) ([162c6f7](https://github.com/grafana/alloy/commit/162c6f711b2cc34b312ce9f6241da43805e7921f))
  ([@blewis12](https://github.com/blewis12))
- **loki.enrich:** Use shared loki functions and fix locking ([#5821](https://github.com/grafana/alloy/issues/5821)) ([f916c72](https://github.com/grafana/alloy/commit/f916c72a18eac0df7985c7d1ad9f88b8bce1ec4a))
  ([@kalleep](https://github.com/kalleep))
- **loki.process:** Multiline no longer pass empty entry if start was flushed ([#5746](https://github.com/grafana/alloy/issues/5746)) ([7bdedf1](https://github.com/grafana/alloy/commit/7bdedf1af98a125f1c6ec4f6375c4f8b1de6e72d))
  ([@kalleep](https://github.com/kalleep), [@thampiotr](https://github.com/thampiotr))
- **loki.process:** Protect against json that does not look like docker json format ([#5761](https://github.com/grafana/alloy/issues/5761)) ([0af6eaa](https://github.com/grafana/alloy/commit/0af6eaa238e6967b190c46666a4e21dc39076ff8))
  ([@kalleep](https://github.com/kalleep))
- **loki.secretfilter:** Fix bug where entries were being shadow dropped ([#5786](https://github.com/grafana/alloy/issues/5786)) ([90243f9](https://github.com/grafana/alloy/commit/90243f9a9e30e847d11c8b755d8a09990cb76d6d))
  ([@mikefat](https://github.com/mikefat))
- **loki.source.file:** Fix position tracking when component stops ([#5800](https://github.com/grafana/alloy/issues/5800)) ([9762946](https://github.com/grafana/alloy/commit/9762946bb836a166c4815c15a33dc53131993ed8))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Keep positions for compressed files when reading is finished ([#5723](https://github.com/grafana/alloy/issues/5723)) ([fb41d0a](https://github.com/grafana/alloy/commit/fb41d0aedc14284533d4579a2715838b01f7e754))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.gcplog:** Update to pubsub v2 and fix shutdown semantics ([#5713](https://github.com/grafana/alloy/issues/5713)) ([e9d9b69](https://github.com/grafana/alloy/commit/e9d9b69b223ae5dbfa73b45485f145edbdd1a66a))
  ([@kalleep](https://github.com/kalleep), [@kgeckhart](https://github.com/kgeckhart))
- **loki.source.heroku:** Fix shutdown semantics and consume logs in batches ([#5804](https://github.com/grafana/alloy/issues/5804)) ([deda452](https://github.com/grafana/alloy/commit/deda4520fe29acaae5ad4f4a376753774b621875))
  ([@kalleep](https://github.com/kalleep))
- **loki.write:** Remove noisy log ([#5837](https://github.com/grafana/alloy/issues/5837)) ([8e28f35](https://github.com/grafana/alloy/commit/8e28f353e220c619b9fa5eb2a713a031cbd4a274))
  ([@kalleep](https://github.com/kalleep))
- **loki:** Make drain forward entries with fallback timeout ([#5830](https://github.com/grafana/alloy/issues/5830)) ([cfbca90](https://github.com/grafana/alloy/commit/cfbca9003399be738d68e7e71513550e3f962bd0))
  ([@kalleep](https://github.com/kalleep), [@kgeckhart](https://github.com/kgeckhart))
- **prometheus.scrape:** Update arguments and targets even if `scrape_native_histograms` and `extra_metrics` are updated ([#5787](https://github.com/grafana/alloy/issues/5787)) ([dc4cb0a](https://github.com/grafana/alloy/commit/dc4cb0a64aa4cbe576d897c9dcb67c4d71acbf80))
  ([@ptodev](https://github.com/ptodev))
- **pyroscope.ebpf:** Update opentelemetry-ebpf-profiler ([#5904](https://github.com/grafana/alloy/issues/5904)) ([dfaec47](https://github.com/grafana/alloy/commit/dfaec47c4ca2d035b34e9aeb0d28da3d2b380789))
  ([@korniltsev-grafanista](https://github.com/korniltsev-grafanista))
- Stop components in a deterministic order ([#5613](https://github.com/grafana/alloy/issues/5613)) ([00cd371](https://github.com/grafana/alloy/commit/00cd371e3a896093578ca23cdb71e55412f564d4))
  ([@kalleep](https://github.com/kalleep), [@kgeckhart](https://github.com/kgeckhart))

##### Chores

- Use shared source structures for aws firehose  ([#5739](https://github.com/grafana/alloy/issues/5739)) ([aef19dc](https://github.com/grafana/alloy/commit/aef19dccc245d6f92acd7228023117485c349070)) ([@kalleep](https://github.com/kalleep))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.15/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.15/get-started/install/

---
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

- **deps:** Update go version to 1.25.8 ([#5846](https://github.com/grafana/alloy/issues/5846)) ([b9add52](https://github.com/grafana/alloy/commit/b9add528fe215cdc27e006a726d4d7694ff71976))
  ([@blewis12](https://github.com/blewis12))
- **deps:** Update module github.com/buger/jsonparser to v1.1.2 \[SECURITY] \[backport] ([#5841](https://github.com/grafana/alloy/issues/5841)) ([33a64c5](https://github.com/grafana/alloy/commit/33a64c5e956973bbc72fbf5ee05c17c9619c7d79))
- **deps:** Update module google.golang.org/grpc to v1.79.3 \[SECURITY] \[backport] ([#5842](https://github.com/grafana/alloy/issues/5842)) ([be8150a](https://github.com/grafana/alloy/commit/be8150a9d29a92eb0bcd900fb1e172147f0505ff))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.14/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.14/get-started/install/

---
##### [\`v1.14.1\`](https://github.com/grafana/alloy/releases/tag/v1.14.1)

##### Bug Fixes 🐛

- Correctly handle the deprecated topic field in otelcol.receiver.kafka configuration \[backport] ([#5730](https://github.com/grafana/alloy/issues/5730)) ([4393054](https://github.com/grafana/alloy/commit/43930547d5f63b6983716a06dbe4fbd9ea435ebc))
  ([@thampiotr](https://github.com/thampiotr))
- **deps:** Update module golang.org/x/net to v0.51.0 \[SECURITY] \[backport] ([#5690](https://github.com/grafana/alloy/issues/5690)) ([9e8616c](https://github.com/grafana/alloy/commit/9e8616c97899caacd9e63ffe265a968250644fe4))
- **loki.process:** Protect against json that does not look like docker json format \[backport] ([#5773](https://github.com/grafana/alloy/issues/5773)) ([a0f1f8a](https://github.com/grafana/alloy/commit/a0f1f8acb96d3864d30e59ba6f8f1594c672849b))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Keep positions for compressed files when reading is finished \[backport] ([#5741](https://github.com/grafana/alloy/issues/5741)) ([4f6d548](https://github.com/grafana/alloy/commit/4f6d5488c95511e26cfcd965ed2cf51ae30a673d))
  ([@kalleep](https://github.com/kalleep))
- **otelcol.receiver.datadog:** Expose intake proxy and trace\_id\_cache\_size settings \[backport] ([#5785](https://github.com/grafana/alloy/issues/5785)) ([6d99ab5](https://github.com/grafana/alloy/commit/6d99ab55a0c80cea9cdaf27289c68323673014c6))
  ([@thampiotr](https://github.com/thampiotr))
- **prometheus.scrape:** Update arguments and targets even if `scrape_native_histograms` and `extra_metrics` are updated \[backport] ([#5792](https://github.com/grafana/alloy/issues/5792)) ([76d398f](https://github.com/grafana/alloy/commit/76d398f54cd23a8feff94b6479e736accbb94283)) ([@ptodev](https://github.com/ptodev))

##### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.14/release-notes/

##### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.14/get-started/install/

---
##### [\`v1.14.0\`](https://github.com/grafana/alloy/releases/tag/v1.14.0)

##### ⚠ BREAKING CHANGES

- **loki.secretfilter:** Some config options are removed entirely:
  - `partial_mask` (replaced with `redact_percent`)
  - `allowlist` (now controlled with custom gitleaks config)
  - `enable_entropy`
  - `include_generic` (now controlled with custom gitleaks config)
  - `types` (now controlled with custom gitleaks config)
- **otelcol.receiver.prometheus:** `otelcol.receiver.prometheus` no longer sets start times of OTLP metrics. Grafana Cloud and Mimir do not currently use OTLP metric start times. If you do want your metrics to have them, you can use `otelcol.processor.metric_start_time` with `strategy` set to `true_reset_point` to get the same behaviour.

##### Features 🌟

- Add automatic reconnection to database\_observability components ([#5444](https://github.com/grafana/alloy/issues/5444)) ([553f967](https://github.com/grafana/alloy/commit/553f9678c42abf63200cf0618a1e023eeebf0802))
  ([@gaantunes](https://github.com/gaantunes))
- Add limited type checking for validate command ([#5076](https://github.com/grafana/alloy/issues/5076)) ([045fb76](https://github.com/grafana/alloy/commit/045fb76d8cc4098611fbeafff68c29f7645a7e84))
  ([@kalleep](https://github.com/kalleep))
- **database\_observability.mysql:** Collect client info for query samples ([#5552](https://github.com/grafana/alloy/issues/5552)) ([257a699](https://github.com/grafana/alloy/commit/257a699984b42ae39a4edf00ce83899cce3aec88))
  ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability.postgres:** Add exclude databases/users for `logs` collector ([#5569](https://github.com/grafana/alloy/issues/5569)) ([5dddd9b](https://github.com/grafana/alloy/commit/5dddd9b793bd673085c8a0b308c866a4123a8fc2))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Add logs collector ([#5445](https://github.com/grafana/alloy/issues/5445)) ([46d79d4](https://github.com/grafana/alloy/commit/46d79d44e41858ceb2f1d219794f4ba234f048b8))
  ([@gaantunes](https://github.com/gaantunes), [@cursoragent](https://github.com/cursoragent), [@clayton-cornell](https://github.com/clayton-cornell), [@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Allow excluding queries ran by specific users ([#5544](https://github.com/grafana/alloy/issues/5544)) ([2d0ca15](https://github.com/grafana/alloy/commit/2d0ca15624f8dc20389a5b5515bf56589623f504))
  ([@cristiangreco](https://github.com/cristiangreco))
- Deprecate prometheus.write.queue ([#5509](https://github.com/grafana/alloy/issues/5509)) ([ee0f227](https://github.com/grafana/alloy/commit/ee0f227bc5b1363de9699e65de7d6ae3fe8e33a9))
  ([@kgeckhart](https://github.com/kgeckhart), [@clayton-cornell](https://github.com/clayton-cornell))
- Introduce SeriesRefMappingStore ([#5522](https://github.com/grafana/alloy/issues/5522)) ([33ee297](https://github.com/grafana/alloy/commit/33ee297fbd7a9b5380f98eaa0a83c9d05a718a9d))
  ([@x1unix](https://github.com/x1unix), [@kgeckhart](https://github.com/kgeckhart))
- **local.file\_match, loki.source.file:** Match multiple files using doublestar `{...}` expressions ([#5470](https://github.com/grafana/alloy/issues/5470)) ([284e48f](https://github.com/grafana/alloy/commit/284e48fa72bc8d7626e225a26e23281e6e941c8e))
  ([@ptodev](https://github.com/ptodev))
- **loki.process:** Add debug metrics for CRI stage to track truncation of lines and partial line flushing ([#5399](https://github.com/grafana/alloy/issues/5399)) ([a1728f6](https://github.com/grafana/alloy/commit/a1728f642d5679e2223fce96fa4a979fd4851ae5))
  ([@ptodev](https://github.com/ptodev))
- **mixin:** Add OTel Engine Overview dashboard ([#5573](https://github.com/grafana/alloy/issues/5573)) ([df52116](https://github.com/grafana/alloy/commit/df5211648c1f1c7cb5cbaf19f0b09152f7916091))
  ([@thampiotr](https://github.com/thampiotr), [@cursoragent](https://github.com/cursoragent))
- **mixin:** Add zipped dashboards as a release artifact ([#5603](https://github.com/grafana/alloy/issues/5603)) ([4f7fe85](https://github.com/grafana/alloy/commit/4f7fe85ec6859cc07725a7aa1b0e9918d8a23985))
  ([@thampiotr](https://github.com/thampiotr))
- **otel:** Add receivers used in the otel k8s helm chart presets ([#5466](https://github.com/grafana/alloy/issues/5466)) ([100f6ea](https://github.com/grafana/alloy/commit/100f6ea49056688ac93c9e82d0bcb74771bea95b))
  ([@kgeckhart](https://github.com/kgeckhart), [@blewis12](https://github.com/blewis12))
- **otelcol.receiver.prometheus:** Remove requirement to run Alloy with `--stability.level=experimental` in order to translate Prometheus native histograms into OTLP exponential histograms. ([#5308](https://github.com/grafana/alloy/issues/5308)) ([237e985](https://github.com/grafana/alloy/commit/237e985451f2a89b779c0c2f24ad9fe3c611b98e))
  ([@ptodev](https://github.com/ptodev))
- **otelcol:** Expose missing tail\_sampling drop and bytes\_limiting ([6021154](https://github.com/grafana/alloy/commit/6021154d159d186e45917aa03299158939d36333))
  ([@thampiotr](https://github.com/thampiotr))
- **prometheus.exporter.postgres:** Update to version `0.19.0` and expose new collectors settings  ([#4640](https://github.com/grafana/alloy/issues/4640)) ([aa01e45](https://github.com/grafana/alloy/commit/aa01e453ab1d9924192a7739ff3a0ac72f5b0b10))
  ([@cristiangreco](https://github.com/cristiangreco), [@clayton-cornell](https://github.com/clayton-cornell))
- **prometheus.exporter.postgres:** Update to version 0.19.1 ([#5659](https://github.com/grafana/alloy/issues/5659)) ([9f4e88f](https://github.com/grafana/alloy/commit/9f4e88f6b810d60cd18872250e3d7806e85b8aad))
  ([@cristiangreco](https://github.com/cristiangreco))
- Update github exporter with github app authentication ([#5377](https://github.com/grafana/alloy/issues/5377)) ([ca741a6](https://github.com/grafana/alloy/commit/ca741a61b294ef89d2ab24e88fb2dd51065186a5))
  ([@dehaansa](https://github.com/dehaansa), [@clayton-cornell](https://github.com/clayton-cornell))
- Update grafana cadvisor fork to v0.54.1 ([#5447](https://github.com/grafana/alloy/issues/5447)) ([2a3aba0](https://github.com/grafana/alloy/commit/2a3aba0184b92c206400ef6b23d2f8f0878ef441))
  ([@dehaansa](https://github.com/dehaansa), [@blewis12](https://github.com/blewis12))
- Upgrade prometheus to version 0.309.1 ([#5479](https://github.com/grafana/alloy/issues/5479)) ([633944b](https://github.com/grafana/alloy/commit/633944b76e9ad2eef7204d3047adb063a23b7570))
  ([@jharvey10](https://github.com/jharvey10))

##### Bug Fixes 🐛

- Add /FORCEREGISTRY flag to windows installer ([#5517](https://github.com/grafana/alloy/issues/5517)) ([6b22d4e](https://github.com/grafana/alloy/commit/6b22d4e7b86b4ad5f98546b4e50064452defa9ef))
  ([@kalleep](https://github.com/kalleep), [@clayton-cornell](https://github.com/clayton-cornell))
- Add missing otelcol alias to make OTel Engine work with OTel Collector helm chart ([#5473](https://github.com/grafana/alloy/issues/5473)) ([90478cd](https://github.com/grafana/alloy/commit/90478cdeb12f0c6d20d72b34b95fec4ae64fbf6a))
  ([@thampiotr](https://github.com/thampiotr))
- **controller:** Prevent duplicate loaders from being created ([#5446](https://github.com/grafana/alloy/issues/5446)) ([31d5eea](https://github.com/grafana/alloy/commit/31d5eea269b5a9c5ac1c789856cb6d247962e75a))
  ([@kgeckhart](https://github.com/kgeckhart))
- **database\_observability.mysql:** Skip wait events with `NULL` timer\_wait ([#5478](https://github.com/grafana/alloy/issues/5478)) ([48750e5](https://github.com/grafana/alloy/commit/48750e5848b5bcae2f87807ffd02b46249c0aebc))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Correctly handle table name casing when parsing postgres queries ([#5440](https://github.com/grafana/alloy/issues/5440)) ([7cca2b9](https://github.com/grafana/alloy/commit/7cca2b93037a4f8f15fb64ac43bde2a4f79fa5cd))
  ([@cristiangreco](https://github.com/cristiangreco))
- **deps:** Update module github.com/go-git/go-git/v5 to v5.16.5 \[SECURITY] ([#5485](https://github.com/grafana/alloy/issues/5485)) ([71a1b8b](https://github.com/grafana/alloy/commit/71a1b8ba28d59ca2ff01fef5d44cffb4f054c66d))
- Ensure Valid/Clear States in Alloy Engine Extension ([#5551](https://github.com/grafana/alloy/issues/5551)) ([99ad024](https://github.com/grafana/alloy/commit/99ad0242853f6cce1c1439f341e141a77b760dc1))
  ([@blewis12](https://github.com/blewis12))
- Expose missing `otelcol.processor.tail_sampling` options ([#5606](https://github.com/grafana/alloy/issues/5606)) ([6021154](https://github.com/grafana/alloy/commit/6021154d159d186e45917aa03299158939d36333))
  ([@thampiotr](https://github.com/thampiotr))
- **loki.process:** Registration of stage.metric when used inside stage.match ([#5460](https://github.com/grafana/alloy/issues/5460)) ([81caf72](https://github.com/grafana/alloy/commit/81caf72c3d9b3d62c5874aed59e3288a90689021))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.docker:** Parse timestamp correctly when log line only contains newline ([#5489](https://github.com/grafana/alloy/issues/5489)) ([162011d](https://github.com/grafana/alloy/commit/162011dbaf1fa06932d4c435f913271a571e2008))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Close file if we cannot find encoding ([#5528](https://github.com/grafana/alloy/issues/5528)) ([56bcb26](https://github.com/grafana/alloy/commit/56bcb2664c0c7f21523a985ba664a2fe2014a2e7))
  ([@kalleep](https://github.com/kalleep))
- **mixin:** Support OTel exporter batching ([#5618](https://github.com/grafana/alloy/issues/5618)) ([f2b7cb8](https://github.com/grafana/alloy/commit/f2b7cb8f7285cf4cb4777c0acd2b653483efe2d6))
  ([@thampiotr](https://github.com/thampiotr))
- **prometheus.echo:** Return zero for SeriesRef ([#5622](https://github.com/grafana/alloy/issues/5622)) ([31a8680](https://github.com/grafana/alloy/commit/31a86805cd1f0154edc96545ecc60ba5a13cdcb3))
  ([@kgeckhart](https://github.com/kgeckhart))
- **prometheus.exporter.cloudwatch:** Respect debug flag ([#5469](https://github.com/grafana/alloy/issues/5469)) ([44ade00](https://github.com/grafana/alloy/commit/44ade003e16de4559609ad7379dd85dfbf8df3be))
  ([@holgerjh](https://github.com/holgerjh))
- **prometheus.receive\_http:** Bump prometheus patch for bugfix ([#5505](https://github.com/grafana/alloy/issues/5505)) ([b7a1d05](https://github.com/grafana/alloy/commit/b7a1d056cc2213e89484f8bcacca0409e11264e6))
  ([@kgeckhart](https://github.com/kgeckhart))
- **prometheus.remote\_write:** Fix sent\_batch\_duration\_seconds measuring before the request was sent \[backport] ([#5698](https://github.com/grafana/alloy/issues/5698)) ([150aecb](https://github.com/grafana/alloy/commit/150aecb11e8a1072c56c55330bf315335949f4e3))
  ([@kgeckhart](https://github.com/kgeckhart))
- Use read-write mutex locks to prevent concurrent tagsCache map reads and writes ([#5534](https://github.com/grafana/alloy/issues/5534)) ([8efed2e](https://github.com/grafana/alloy/commit/8efed2e6a21dc9680b32da2d11b8ee8776c4a3db))
  ([@bennettatoms](https://github.com/bennettatoms))

##### Performance

- **loki.secretfilter:** Change secretfilter implementation to use Gitleaks ([#5503](https://github.com/grafana/alloy/issues/5503)) ([08e265c](https://github.com/grafana/alloy/commit/08e265cca7fa6a37cb1a3938ebbdec48ba73e0b6)) ([@kleimkuhler](https://github.com/kleimkuhler))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.14/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.14/get-started/install/

---
##### [\`v1.13.2\`](https://github.com/grafana/alloy/releases/tag/v1.13.2)

##### Bug Fixes 🐛

- Expose missing `otelcol.processor.tail_sampling` options \[backport] ([#5614](https://github.com/grafana/alloy/issues/5614)) ([3225ea3](https://github.com/grafana/alloy/commit/3225ea38da1cbf31f065cc5da0b1ee0645eefa15)) ([@thampiotr](https://github.com/thampiotr))
- **mixin:** Add zipped dashboards as a release artifact \[backport] ([#5625](https://github.com/grafana/alloy/issues/5625)) ([37ff20f](https://github.com/grafana/alloy/commit/37ff20fd3074869adc57420d7f88a6c9386898d6)) ([@thampiotr](https://github.com/thampiotr))
- **profiler:** Backport Go 1.26 gopclntab textStart fix ([#5572](https://github.com/grafana/alloy/issues/5572)) ([5ca05c9](https://github.com/grafana/alloy/commit/5ca05c9d69ebb3ef3b4f9cfce5585a90e4d4432c)) ([@marcsanmi](https://github.com/marcsanmi))
- **prometheus.exporter.postgres:** Update version of the exporter fork to fix pg\_settings ([#5574](https://github.com/grafana/alloy/issues/5574)) ([62a52f8](https://github.com/grafana/alloy/commit/62a52f8537cd15c9cf1a329c4c35f32f86316740)) ([@cristiangreco](https://github.com/cristiangreco))
- **pyroscope.ebpf:** Backport dotnet nibble map fix ([#5553](https://github.com/grafana/alloy/issues/5553)) ([6c62760](https://github.com/grafana/alloy/commit/6c62760e6121b1f2c6c75276f7ee6f7f7055bd5e)) ([@marcsanmi](https://github.com/marcsanmi))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.13/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.13/get-started/install/

---
##### [\`v1.13.1\`](https://github.com/grafana/alloy/releases/tag/v1.13.1)

##### Bug Fixes 🐛

- **database\_observability.mysql:** Make query sample text nullable in MySQL query details collector \[backport] ([#5519](https://github.com/grafana/alloy/issues/5519)) ([fc49bfe](https://github.com/grafana/alloy/commit/fc49bfe172aaed8a9ef5ee8bce7e639e59f432fb)) ([@fridgepoet](https://github.com/fridgepoet))
- **database\_observability.mysql:** Skip wait events with `NULL` timer\_wait \[backport] ([#5521](https://github.com/grafana/alloy/issues/5521)) ([2f43c91](https://github.com/grafana/alloy/commit/2f43c9123ef8ad75af72bd7c85dc3d08b4034ed1)) ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Improvements to SET search\_path for postgres explain plans \[backport] ([#5520](https://github.com/grafana/alloy/issues/5520)) ([ecbb577](https://github.com/grafana/alloy/commit/ecbb577fce3ca5061294aae74406e98f5f2a464a)) ([@rgeyer](https://github.com/rgeyer))
- **loki.process:** Registration of stage.metric when used inside stage.match \[backport] ([#5495](https://github.com/grafana/alloy/issues/5495)) ([2bbc37e](https://github.com/grafana/alloy/commit/2bbc37e1c810d4c6c5655ec4204ff7e30a703d05))
- **loki.source.docker:** Parse timestamp correctly when log line only contains newline \[backport] ([#5496](https://github.com/grafana/alloy/issues/5496)) ([55a82f0](https://github.com/grafana/alloy/commit/55a82f0f634f57bbd5634e486afe276d8c176e51)) ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Close file if we cannot find encoding \[backport] ([#5531](https://github.com/grafana/alloy/issues/5531)) ([ccda4a5](https://github.com/grafana/alloy/commit/ccda4a50c38e230b2ed9caff718a8487da2b3f73)) ([@kalleep](https://github.com/kalleep))
- **prometheus.receive\_http:** Bump prometheus patch for bugfix \[backport] ([#5516](https://github.com/grafana/alloy/issues/5516)) ([b3531fb](https://github.com/grafana/alloy/commit/b3531fb8730256eac7f34c877fa6cf73c5a8a60b)) ([@kgeckhart](https://github.com/kgeckhart))
- **scheduling:** Shutdown runnables with a timeout before starting new ones \[backport] ([#5443](https://github.com/grafana/alloy/issues/5443)) ([d446610](https://github.com/grafana/alloy/commit/d44661062d11711e9dae216fa98aaad61f027c30)) ([@kgeckhart](https://github.com/kgeckhart))

#### Upgrading

Read the [release notes] for specific instructions on upgrading from older versions:

[release notes]: https://grafana.com/docs/alloy/v1.13/release-notes/

#### Installation

Refer to our [installation guide] for how to install Grafana Alloy.

[installation guide]: https://grafana.com/docs/alloy/v1.13/get-started/install/

---
##### [\`v1.13.0\`](https://github.com/grafana/alloy/blob/HEAD/CHANGELOG.md#1130-2026-02-05)

##### ⚠ BREAKING CHANGES

- **otelcol:** Upgrade to OTel Collector v0.142.0
- **otelcol.receiver.kafka:** The global `topic` attribute has been deleted; use the `topics` attributes inside the `logs`, `metrics`, and `traces` blocks instead.
- `otelcol.exporter` > `sending_queue` > `batch` > `min_size` changed from `8192` to `2000` and `max_size` changed from `0` to `3000`

##### Features 🌟

- Add a `virtual_node_peer_attributes` and `virtual_node_extra_label` arguments to `otelcol.connector.servicegraph` ([#5058](https://github.com/grafana/alloy/issues/5058)) ([20900c6](https://github.com/grafana/alloy/commit/20900c6cc1c60800b60313c68c6a81834c4adab3))
- Add an `otelcol.processor.metric_start_time` component ([#5342](https://github.com/grafana/alloy/issues/5342)) ([3fb13ac](https://github.com/grafana/alloy/commit/3fb13ac2809176a043e6021d938479300ba69e77))
- Add job level `period`, `length`, and `add_cloudwatch_timestamp` options and labels\_snake\_case to CW exporter \[backport] ([#5355](https://github.com/grafana/alloy/issues/5355)) ([60d73b7](https://github.com/grafana/alloy/commit/60d73b7813f2fe1e3c9b2e57e4a84d3be5f310c4))
- Add missing configuration parameter `deployment_name_from_replicaset` to k8sattributes processor ([#5183](https://github.com/grafana/alloy/issues/5183)) ([b54ca77](https://github.com/grafana/alloy/commit/b54ca777eed56cbbd7f76ed84e71f7b7174747c5))
- Add parcas symbols upload to pyroscope.ebpf ([#4948](https://github.com/grafana/alloy/issues/4948)) ([30f2242](https://github.com/grafana/alloy/commit/30f2242ca15b9888150f77968f8f5854f1fd37cb))
- Add sharding for loki.write ([#4882](https://github.com/grafana/alloy/issues/4882)) ([7570d65](https://github.com/grafana/alloy/commit/7570d656498501c8777f7e970108795f7bbf4173))
- Add unexposed otel engine and extension to codebase and change build structure ([#5114](https://github.com/grafana/alloy/issues/5114)) ([6438176](https://github.com/grafana/alloy/commit/6438176d0451b2ba17feb553eb24f2efeb079310))
- **beyla.ebpf:** Add meta\_cache\_address to beyla.ebpf.attributes.kubernetes ([#4871](https://github.com/grafana/alloy/issues/4871)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **beyla.ebpf:** Upgrade Beyla to v2.8.5 ([f1f457f](https://github.com/grafana/alloy/commit/f1f457fa110e97623228426ee36479558a6397d4))
- Change the defaults for `sending_queue` > `batch` block inside `otelcol.exporter` components ([#5061](https://github.com/grafana/alloy/issues/5061)) ([714a2ed](https://github.com/grafana/alloy/commit/714a2ed6c57b3aa7172b8da194caf1fe8a724680))
- **cluster:** Support DNS discovery mode prefixes in --cluster.join-addresses flag ([#5034](https://github.com/grafana/alloy/issues/5034)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **converter:** Update promtail converter to use file\_match block for loki.source.file ([#4791](https://github.com/grafana/alloy/issues/4791)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Database\_observability: add health check collector for postgres component ([#5222](https://github.com/grafana/alloy/issues/5222)) ([80917b1](https://github.com/grafana/alloy/commit/80917b1bc494b22faa4ea8df20c841bfe8579a76))
- Database\_observability: expose `exclude_schemas` and `exclude_databases` settings ([#5334](https://github.com/grafana/alloy/issues/5334)) ([37656f8](https://github.com/grafana/alloy/commit/37656f894551bfd857a5aed88462f87fc5a89361))
- Database\_observability: support Azure cloud provider config data ([#5245](https://github.com/grafana/alloy/issues/5245)) ([d7a469f](https://github.com/grafana/alloy/commit/d7a469fe41c26fd9ddb220bb512b1e942dfae48f))
- Database\_observability: support Azure privatelink db name ([#5260](https://github.com/grafana/alloy/issues/5260)) ([22e4991](https://github.com/grafana/alloy/commit/22e4991e4d21728bb22ab513d513dfc6840311b1))
- Database\_observability.mysql: support excluding schemas in all collectors \[backport] ([#5380](https://github.com/grafana/alloy/issues/5380)) ([d67268c](https://github.com/grafana/alloy/commit/d67268c7d3013015bb67babddd252a3a955deb01))
- Database\_observability.postgres: support excluding DBs in all collectors \[backport] ([#5383](https://github.com/grafana/alloy/issues/5383)) ([165492c](https://github.com/grafana/alloy/commit/165492c8b2cd63d73179111f02cddf3d6d567f90))
- **database\_observability:** Add health\_check collector to validate configuration ([#5115](https://github.com/grafana/alloy/issues/5115)) ([6d96740](https://github.com/grafana/alloy/commit/6d96740f7b758ce8ffa1872108ffacdbda99b276))
- **database\_observability:** Always send explain plan log for each query including status ([#4969](https://github.com/grafana/alloy/issues/4969)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **database\_observability:** Append cloud provider information labels to metrics ([#4942](https://github.com/grafana/alloy/issues/4942)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **database\_observability:** Stop tracking own instrumentation queries ([#4991](https://github.com/grafana/alloy/issues/4991)) ([0b55557](https://github.com/grafana/alloy/commit/0b55557657fa3e9f1a3463444c372b6fdde4bcf2))
- **deps:** Update Prometheus to v3.8.0 and Loki to v3.6.2 ([#5035](https://github.com/grafana/alloy/issues/5035)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Expose otel subcommand and add user-facing documentation ([#5244](https://github.com/grafana/alloy/issues/5244)) ([93f20b8](https://github.com/grafana/alloy/commit/93f20b83c247c6e9444444644c59278d0015e330))
- Improve faro.receiver.sourcemaps caching strategy ([#4337](https://github.com/grafana/alloy/issues/4337)) ([41e655c](https://github.com/grafana/alloy/commit/41e655c75da5f78645d617ab34b778a1db7479e3))
- **loki.process:** Mark stage.windowsevent as GA ([#4879](https://github.com/grafana/alloy/issues/4879)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **loki.source.file:** Refactor tailer to reduce resource usage ([#5003](https://github.com/grafana/alloy/issues/5003)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **loki.source.syslog:** Implement livedebugging support ([#5216](https://github.com/grafana/alloy/issues/5216)) ([e26badb](https://github.com/grafana/alloy/commit/e26badb1bb22d0dbe418bffe2e14e3b2dfc0eb08))
- **loki.source.syslog:** Support cisco-specific syslog fields ([#5165](https://github.com/grafana/alloy/issues/5165)) ([3230ba0](https://github.com/grafana/alloy/commit/3230ba0560991c28e267e0f27c5f6ac3a2be5242))
- **loki.source.syslog:** Support raw format ([#5140](https://github.com/grafana/alloy/issues/5140)) ([923d127](https://github.com/grafana/alloy/commit/923d127c50949f88a37ac808154240de0649df09))
- **mimir.alerts.kubernetes:** Add `alertmanagerconfig_matcher` block to change the matcher strategy ([f2b9671](https://github.com/grafana/alloy/commit/f2b9671603375b2f42c81fa6195b994c3436bfec))
- **mimir.alerts.kubernetes:** Add component to discover AlertmanagerConfig Kubernetes resources ([#3448](https://github.com/grafana/alloy/issues/3448)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **mixin:** Provide rendered mixin outputs ([#5118](https://github.com/grafana/alloy/issues/5118)) ([738b9fb](https://github.com/grafana/alloy/commit/738b9fb4e99595d5d202db9dbc89f71e95402ce0))
- **otelcol.auth.basic:** Add htpasswd file based authentication ([#3916](https://github.com/grafana/alloy/issues/3916)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **otelcol.connector.count:** Add component to count spans, metrics, and logs ([#4913](https://github.com/grafana/alloy/issues/4913)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **otelcol.exporter.file:** Add `otelcol.exporter.file` component to write metrics, logs, and traces to disk with optional rotation, compression, and grouping by resource attribute ([#4475](https://github.com/grafana/alloy/issues/4475)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **otelcol.exporter.prometheus:** Add `honor_metadata` config argument \[backport] ([#5439](https://github.com/grafana/alloy/issues/5439)) ([32cb175](https://github.com/grafana/alloy/commit/32cb175fca3bf00250fdc2508a92024d2ac847ba))
- **otelcol.receiver.awss3:** Add experimental receiver for traces stored in S3 ([#4928](https://github.com/grafana/alloy/issues/4928)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **otelcol.receiver.kafka:** Deprecate the `topic` attribute inside the `logs`, `metrics`, and `traces` blocks in favour of a new `topics` attribute. ([f1f457f](https://github.com/grafana/alloy/commit/f1f457fa110e97623228426ee36479558a6397d4))
- **otelcol.receiver.kafka:** Remove the global `topic` attribute ([f1f457f](https://github.com/grafana/alloy/commit/f1f457fa110e97623228426ee36479558a6397d4))
- **otelcol:** Upgrade to OTel Collector v0.142.0 ([f1f457f](https://github.com/grafana/alloy/commit/f1f457fa110e97623228426ee36479558a6397d4))
- **prometheus.echo:** Add component for local metrics inspection in exposition format ([#4105](https://github.com/grafana/alloy/issues/4105)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **prometheus.exporter.cloudwatch:** Add delay option to account for CloudWatch ingestion latency ([#4936](https://github.com/grafana/alloy/issues/4936)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **prometheus.exporter.databricks:** Add Databricks exporter component ([#5054](https://github.com/grafana/alloy/issues/5054)) ([4442836](https://github.com/grafana/alloy/commit/44428361a210476c2fa89c4dbfd447a091391488))
- **prometheus.operator.scrapeconfigs:** Add HTTP service discovery support via httpSDConfigs ([#4826](https://github.com/grafana/alloy/issues/4826)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **prometheus.remote\_write:** Add metadata support to `prometheus.remote_write` component, but only if Remote Write v2 has been configured. In order for `prometheus.remote_write` to receive metadata, `prometheus.scrape` must be configured with `honor_metadata = true`. ([#5045](https://github.com/grafana/alloy/issues/5045)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **prometheus:** Reduce resource overhead by removing unnecessary labelstore usage ([#4890](https://github.com/grafana/alloy/issues/4890)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **pyroscope.ebpf:** Add `lazy_mode` argument to the `pyroscope.ebpf` to defer eBPF profiler startup until there are targets to profile ([#4824](https://github.com/grafana/alloy/issues/4824)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **pyroscope.enrich:** Add experimental component to enrich profiles using discovery labels ([#4797](https://github.com/grafana/alloy/issues/4797)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Strip comments from normalized sql text in `database_observability.postgres` ([#5005](https://github.com/grafana/alloy/issues/5005)) ([a58721a](https://github.com/grafana/alloy/commit/a58721a0aa8e076fc66508f22e3f8317cee933d1))
- Support setting default scrape limit for prometheus.operator components ([#5280](https://github.com/grafana/alloy/issues/5280)) ([40ffe08](https://github.com/grafana/alloy/commit/40ffe08377bebbbf8550b07b144c7180c54cb3cb))
- **tracing:** Add send\_traceparent option to enable traceparent header propagation ([#4874](https://github.com/grafana/alloy/issues/4874)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))

##### Bug Fixes 🐛

- Add support for compressed files for tail package \[backport] ([#5415](https://github.com/grafana/alloy/issues/5415)) ([311662f](https://github.com/grafana/alloy/commit/311662f5a163d4ec6b2f75fcd725fde980a421ac))
- Allow loki.source.file to read renaming lines of a deleted file before it tries to re open a new one  ([#5270](https://github.com/grafana/alloy/issues/5270)) ([f8b1de8](https://github.com/grafana/alloy/commit/f8b1de892a8235edbf098131f8dc58c388f1d961))
- Compute signatures from files so that loki.source.file can handle atomic writes ([#5143](https://github.com/grafana/alloy/issues/5143)) ([3090c4a](https://github.com/grafana/alloy/commit/3090c4a141430444864f6f5c1476265a14ed212c))
- **converter:** Fix promtail converter to limit Kubernetes discovery to same node ([#5046](https://github.com/grafana/alloy/issues/5046)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Database\_observability: add Azure provider relabeling rules \[backport] ([#5382](https://github.com/grafana/alloy/issues/5382)) ([c121178](https://github.com/grafana/alloy/commit/c12117889fbad3de21962111b18c55327536e34a))
- Database\_observability: allow setting limit for mysql query\_details ([#5314](https://github.com/grafana/alloy/issues/5314)) ([085f300](https://github.com/grafana/alloy/commit/085f300442915b85bde472bd0e5c410b9ee66ed3))
- Database\_observability: fix race in postgres query samples test ([#5315](https://github.com/grafana/alloy/issues/5315)) ([4f01753](https://github.com/grafana/alloy/commit/4f01753b6e393e64b4969ea77f5d72186db5c60e))
- Database\_observability: grant check only require SELECT *.* on perf\_schema ([#5294](https://github.com/grafana/alloy/issues/5294)) ([490017c](https://github.com/grafana/alloy/commit/490017cdd16eebdb586f177d13c25d40ac796f8e))
- Database\_observability: reuse cloud provider regexes ([#5262](ht…
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Apr 24, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

frozen-due-to-age type/docs Docs Squad label across all Grafana Labs repos

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants