Skip to content

fix(deps): Update module google.golang.org/grpc to v1.79.3 [SECURITY] [backport]#5842

Merged
kalleep merged 1 commit into
release/v1.14from
backport/pr-5825-to-v1.14
Mar 20, 2026
Merged

fix(deps): Update module google.golang.org/grpc to v1.79.3 [SECURITY] [backport]#5842
kalleep merged 1 commit into
release/v1.14from
backport/pr-5825-to-v1.14

Conversation

@grafana-alloybot
Copy link
Copy Markdown
Contributor

Backport of #5825

This PR backports #5825 to release/v1.14.

Original PR Author

@renovate-sh-app[bot]

Description

This PR contains the following updates:

Package Change Age Confidence
google.golang.org/grpc v1.78.0v1.79.3 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

GitHub Vulnerability Alerts

CVE-2026-33186

Impact

What kind of vulnerability is it? Who is impacted?

It is an Authorization Bypass resulting from Improper Input Validation of the HTTP/2 :path pseudo-header.

The gRPC-Go server was too lenient in its routing logic, accepting requests where the :path omitted the mandatory leading slash (e.g., Service/Method instead of /Service/Method). While the server successfully routed these requests to the correct handler, authorization interceptors (including the official grpc/authz package) evaluated the raw, non-canonical path string. Consequently, "deny" rules defined using canonical paths (starting with /) failed to match the incoming request, allowing it to bypass the policy if a fallback "allow" rule was present.

Who is impacted?
This affects gRPC-Go servers that meet both of the following criteria:

  1. They use path-based authorization interceptors, such as the official RBAC implementation in google.golang.org/grpc/authz or custom interceptors relying on info.FullMethod or grpc.Method(ctx).
  2. Their security policy contains specific "deny" rules for canonical paths but allows other requests by default (a fallback "allow" rule).

The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed :path headers directly to the gRPC server.

Patches

Has the problem been patched? What versions should users upgrade to?

Yes, the issue has been patched. The fix ensures that any request with a :path that does not start with a leading slash is immediately rejected with a codes.Unimplemented error, preventing it from reaching authorization interceptors or handlers with a non-canonical path string.

Users should upgrade to the following versions (or newer):

  • v1.79.3
  • The latest master branch.

It is recommended that all users employing path-based authorization (especially grpc/authz) upgrade as soon as the patch is available in a tagged release.

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods:

1. Use a Validating Interceptor (Recommended Mitigation)

Add an "outermost" interceptor to your server that validates the path before any other authorization logic runs:

func pathValidationInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
    if info.FullMethod == "" || info.FullMethod[0] != '/' {
        return nil, status.Errorf(codes.Unimplemented, "malformed method name")
    }   
    return handler(ctx, req)
}

// Ensure this is the FIRST interceptor in your chain
s := grpc.NewServer(
    grpc.ChainUnaryInterceptor(pathValidationInterceptor, authzInterceptor),
)

2. Infrastructure-Level Normalization

If your gRPC server is behind a reverse proxy or load balancer (such as Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to enforce strict HTTP/2 compliance for pseudo-headers and reject or normalize requests where the :path header does not start with a leading slash.

3. Policy Hardening

Switch to a "default deny" posture in your authorization policies (explicitly listing all allowed paths and denying everything else) to reduce the risk of bypasses via malformed inputs.


gRPC-Go has an authorization bypass via missing leading slash in :path

CVE-2026-33186 / GHSA-p77j-4mvh-x3m3

More information

Details

Impact

What kind of vulnerability is it? Who is impacted?

It is an Authorization Bypass resulting from Improper Input Validation of the HTTP/2 :path pseudo-header.

The gRPC-Go server was too lenient in its routing logic, accepting requests where the :path omitted the mandatory leading slash (e.g., Service/Method instead of /Service/Method). While the server successfully routed these requests to the correct handler, authorization interceptors (including the official grpc/authz package) evaluated the raw, non-canonical path string. Consequently, "deny" rules defined using canonical paths (starting with /) failed to match the incoming request, allowing it to bypass the policy if a fallback "allow" rule was present.

Who is impacted?
This affects gRPC-Go servers that meet both of the following criteria:

  1. They use path-based authorization interceptors, such as the official RBAC implementation in google.golang.org/grpc/authz or custom interceptors relying on info.FullMethod or grpc.Method(ctx).
  2. Their security policy contains specific "deny" rules for canonical paths but allows other requests by default (a fallback "allow" rule).

The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed :path headers directly to the gRPC server.

Patches

Has the problem been patched? What versions should users upgrade to?

Yes, the issue has been patched. The fix ensures that any request with a :path that does not start with a leading slash is immediately rejected with a codes.Unimplemented error, preventing it from reaching authorization interceptors or handlers with a non-canonical path string.

Users should upgrade to the following versions (or newer):

  • v1.79.3
  • The latest master branch.

It is recommended that all users employing path-based authorization (especially grpc/authz) upgrade as soon as the patch is available in a tagged release.

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods:

1. Use a Validating Interceptor (Recommended Mitigation)

Add an "outermost" interceptor to your server that validates the path before any other authorization logic runs:

func pathValidationInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
    if info.FullMethod == "" || info.FullMethod[0] != '/' {
        return nil, status.Errorf(codes.Unimplemented, "malformed method name")
    }   
    return handler(ctx, req)
}

// Ensure this is the FIRST interceptor in your chain
s := grpc.NewServer(
    grpc.ChainUnaryInterceptor(pathValidationInterceptor, authzInterceptor),
)
2. Infrastructure-Level Normalization

If your gRPC server is behind a reverse proxy or load balancer (such as Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to enforce strict HTTP/2 compliance for pseudo-headers and reject or normalize requests where the :path header does not start with a leading slash.

3. Policy Hardening

Switch to a "default deny" posture in your authorization policies (explicitly listing all allowed paths and denying everything else) to reduce the risk of bypasses via malformed inputs.

Severity

  • CVSS Score: 9.1 / 10 (Critical)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Release Notes

grpc/grpc-go (google.golang.org/grpc)

v1.79.3: Release 1.79.3

Compare Source

Security

  • server: fix an authorization bypass where malformed :path headers (missing the leading slash) could bypass path-based restricted "deny" rules in interceptors like grpc/authz. Any request with a non-canonical path is now immediately rejected with an Unimplemented error. (#​8981)

v1.79.2: Release 1.79.2

Compare Source

Bug Fixes

  • stats: Prevent redundant error logging in health/ORCA producers by skipping stats/tracing processing when no stats handler is configured. (#​8874)

v1.79.1: Release 1.79.1

Compare Source

Bug Fixes

  • grpc: Remove the -dev suffix from the User-Agent header. (#​8902)

v1.79.0: Release 1.79.0

Compare Source

API Changes

  • mem: Add experimental API SetDefaultBufferPool to change the default buffer pool. (#​8806)
  • experimental/stats: Update MetricsRecorder to require embedding the new UnimplementedMetricsRecorder (a no-op struct) in all implementations for forward compatibility. (#​8780)

Behavior Changes

  • balancer/weightedtarget: Remove handling of Addresses and only handle Endpoints in resolver updates. (#​8841)

New Features

  • experimental/stats: Add support for asynchronous gauge metrics through the new AsyncMetricReporter and RegisterAsyncReporter APIs. (#​8780)
  • pickfirst: Add support for weighted random shuffling of endpoints, as described in gRFC A113.
    • This is enabled by default, and can be turned off using the environment variable GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING. (#​8864)
  • xds: Implement :authority rewriting, as specified in gRFC A81. (#​8779)
  • balancer/randomsubsetting: Implement the random_subsetting LB policy, as specified in gRFC A68. (#​8650)

Bug Fixes

  • credentials/tls: Fix a bug where the port was not stripped from the authority override before validation. (#​8726)
  • xds/priority: Fix a bug causing delayed failover to lower-priority clusters when a higher-priority cluster is stuck in CONNECTING state. (#​8813)
  • health: Fix a bug where health checks failed for clients using legacy compression options (WithDecompressor or RPCDecompressor). (#​8765)
  • transport: Fix an issue where the HTTP/2 server could skip header size checks when terminating a stream early. (#​8769)
  • server: Propagate status detail headers, if available, when terminating a stream during request header processing. (#​8754)

Performance Improvements

  • credentials/alts: Optimize read buffer alignment to reduce copies. (#​8791)
  • mem: Optimize pooling and creation of buffer objects. (#​8784)
  • transport: Reduce slice re-allocations by reserving slice capacity. (#​8797)

Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

Need help?

You can ask for more help in the following Slack channel: #proj-renovate-self-hosted. In that channel you can also find ADR and FAQ docs in the Resources section.


This backport was created automatically.

…#5825)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) |
`v1.78.0` → `v1.79.3` |
![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgrpc/v1.79.3?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgrpc/v1.78.0/v1.79.3?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/4569) for more information.

### GitHub Vulnerability Alerts

####
[CVE-2026-33186](https://github.com/grpc/grpc-go/security/advisories/GHSA-p77j-4mvh-x3m3)

### Impact
_What kind of vulnerability is it? Who is impacted?_

It is an **Authorization Bypass** resulting from **Improper Input
Validation** of the HTTP/2 `:path` pseudo-header.

The gRPC-Go server was too lenient in its routing logic, accepting
requests where the `:path` omitted the mandatory leading slash (e.g.,
`Service/Method` instead of `/Service/Method`). While the server
successfully routed these requests to the correct handler, authorization
interceptors (including the official `grpc/authz` package) evaluated the
raw, non-canonical path string. Consequently, "deny" rules defined using
canonical paths (starting with `/`) failed to match the incoming
request, allowing it to bypass the policy if a fallback "allow" rule was
present.

**Who is impacted?**
This affects gRPC-Go servers that meet both of the following criteria:
1. They use path-based authorization interceptors, such as the official
RBAC implementation in `google.golang.org/grpc/authz` or custom
interceptors relying on `info.FullMethod` or `grpc.Method(ctx)`.
2. Their security policy contains specific "deny" rules for canonical
paths but allows other requests by default (a fallback "allow" rule).

The vulnerability is exploitable by an attacker who can send raw HTTP/2
frames with malformed `:path` headers directly to the gRPC server.

### Patches
_Has the problem been patched? What versions should users upgrade to?_

Yes, the issue has been patched. The fix ensures that any request with a
`:path` that does not start with a leading slash is immediately rejected
with a `codes.Unimplemented` error, preventing it from reaching
authorization interceptors or handlers with a non-canonical path string.

Users should upgrade to the following versions (or newer):
* **v1.79.3**
* The latest **master** branch.

It is recommended that all users employing path-based authorization
(especially `grpc/authz`) upgrade as soon as the patch is available in a
tagged release.

### Workarounds
_Is there a way for users to fix or remediate the vulnerability without
upgrading?_

While upgrading is the most secure and recommended path, users can
mitigate the vulnerability using one of the following methods:

#### 1. Use a Validating Interceptor (Recommended Mitigation)
Add an "outermost" interceptor to your server that validates the path
before any other authorization logic runs:

```go
func pathValidationInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
    if info.FullMethod == "" || info.FullMethod[0] != '/' {
        return nil, status.Errorf(codes.Unimplemented, "malformed method name")
    }
    return handler(ctx, req)
}

// Ensure this is the FIRST interceptor in your chain
s := grpc.NewServer(
    grpc.ChainUnaryInterceptor(pathValidationInterceptor, authzInterceptor),
)
```

#### 2. Infrastructure-Level Normalization
If your gRPC server is behind a reverse proxy or load balancer (such as
Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to
enforce strict HTTP/2 compliance for pseudo-headers and reject or
normalize requests where the `:path` header does not start with a
leading slash.

#### 3. Policy Hardening
Switch to a "default deny" posture in your authorization policies
(explicitly listing all allowed paths and denying everything else) to
reduce the risk of bypasses via malformed inputs.

---

### gRPC-Go has an authorization bypass via missing leading slash in
:path
[CVE-2026-33186](https://nvd.nist.gov/vuln/detail/CVE-2026-33186) /
[GHSA-p77j-4mvh-x3m3](https://github.com/advisories/GHSA-p77j-4mvh-x3m3)

<details>
<summary>More information</summary>

#### Details
##### Impact
_What kind of vulnerability is it? Who is impacted?_

It is an **Authorization Bypass** resulting from **Improper Input
Validation** of the HTTP/2 `:path` pseudo-header.

The gRPC-Go server was too lenient in its routing logic, accepting
requests where the `:path` omitted the mandatory leading slash (e.g.,
`Service/Method` instead of `/Service/Method`). While the server
successfully routed these requests to the correct handler, authorization
interceptors (including the official `grpc/authz` package) evaluated the
raw, non-canonical path string. Consequently, "deny" rules defined using
canonical paths (starting with `/`) failed to match the incoming
request, allowing it to bypass the policy if a fallback "allow" rule was
present.

**Who is impacted?**
This affects gRPC-Go servers that meet both of the following criteria:
1. They use path-based authorization interceptors, such as the official
RBAC implementation in `google.golang.org/grpc/authz` or custom
interceptors relying on `info.FullMethod` or `grpc.Method(ctx)`.
2. Their security policy contains specific "deny" rules for canonical
paths but allows other requests by default (a fallback "allow" rule).

The vulnerability is exploitable by an attacker who can send raw HTTP/2
frames with malformed `:path` headers directly to the gRPC server.

##### Patches
_Has the problem been patched? What versions should users upgrade to?_

Yes, the issue has been patched. The fix ensures that any request with a
`:path` that does not start with a leading slash is immediately rejected
with a `codes.Unimplemented` error, preventing it from reaching
authorization interceptors or handlers with a non-canonical path string.

Users should upgrade to the following versions (or newer):
* **v1.79.3**
* The latest **master** branch.

It is recommended that all users employing path-based authorization
(especially `grpc/authz`) upgrade as soon as the patch is available in a
tagged release.

##### Workarounds
_Is there a way for users to fix or remediate the vulnerability without
upgrading?_

While upgrading is the most secure and recommended path, users can
mitigate the vulnerability using one of the following methods:

##### 1. Use a Validating Interceptor (Recommended Mitigation)
Add an "outermost" interceptor to your server that validates the path
before any other authorization logic runs:

```go
func pathValidationInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (any, error) {
    if info.FullMethod == "" || info.FullMethod[0] != '/' {
        return nil, status.Errorf(codes.Unimplemented, "malformed method name")
    }
    return handler(ctx, req)
}

// Ensure this is the FIRST interceptor in your chain
s := grpc.NewServer(
    grpc.ChainUnaryInterceptor(pathValidationInterceptor, authzInterceptor),
)
```

##### 2. Infrastructure-Level Normalization
If your gRPC server is behind a reverse proxy or load balancer (such as
Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to
enforce strict HTTP/2 compliance for pseudo-headers and reject or
normalize requests where the `:path` header does not start with a
leading slash.

##### 3. Policy Hardening
Switch to a "default deny" posture in your authorization policies
(explicitly listing all allowed paths and denying everything else) to
reduce the risk of bypasses via malformed inputs.

#### Severity
- CVSS Score: 9.1 / 10 (Critical)
- Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N`

#### References
-
[https://github.com/grpc/grpc-go/security/advisories/GHSA-p77j-4mvh-x3m3](https://github.com/grpc/grpc-go/security/advisories/GHSA-p77j-4mvh-x3m3)
-
[https://github.com/grpc/grpc-go](https://github.com/grpc/grpc-go)

This data is provided by
[OSV](https://osv.dev/vulnerability/GHSA-p77j-4mvh-x3m3) and the [GitHub
Advisory Database](https://github.com/github/advisory-database)
([CC-BY
4.0](https://github.com/github/advisory-database/blob/main/LICENSE.md)).
</details>

---

### Release Notes

<details>
<summary>grpc/grpc-go (google.golang.org/grpc)</summary>

###
[`v1.79.3`](https://github.com/grpc/grpc-go/releases/tag/v1.79.3):
Release 1.79.3

[Compare
Source](https://github.com/grpc/grpc-go/compare/v1.79.2...v1.79.3)

### Security

- server: fix an authorization bypass where malformed :path headers
(missing the leading slash) could bypass path-based restricted "deny"
rules in interceptors like `grpc/authz`. Any request with a
non-canonical path is now immediately rejected with an `Unimplemented`
error.
([#&#8203;8981](https://github.com/grpc/grpc-go/issues/8981))

###
[`v1.79.2`](https://github.com/grpc/grpc-go/releases/tag/v1.79.2):
Release 1.79.2

[Compare
Source](https://github.com/grpc/grpc-go/compare/v1.79.1...v1.79.2)

### Bug Fixes

- stats: Prevent redundant error logging in health/ORCA producers by
skipping stats/tracing processing when no stats handler is configured.
([#&#8203;8874](https://github.com/grpc/grpc-go/pull/8874))

###
[`v1.79.1`](https://github.com/grpc/grpc-go/releases/tag/v1.79.1):
Release 1.79.1

[Compare
Source](https://github.com/grpc/grpc-go/compare/v1.79.0...v1.79.1)

### Bug Fixes

- grpc: Remove the `-dev` suffix from the User-Agent header.
([#&#8203;8902](https://github.com/grpc/grpc-go/pull/8902))

###
[`v1.79.0`](https://github.com/grpc/grpc-go/releases/tag/v1.79.0):
Release 1.79.0

[Compare
Source](https://github.com/grpc/grpc-go/compare/v1.78.0...v1.79.0)

### API Changes

- mem: Add experimental API `SetDefaultBufferPool` to change the default
buffer pool.
([#&#8203;8806](https://github.com/grpc/grpc-go/issues/8806))
- Special Thanks: [@&#8203;vanja-p](https://github.com/vanja-p)
- experimental/stats: Update `MetricsRecorder` to require embedding the
new `UnimplementedMetricsRecorder` (a no-op struct) in all
implementations for forward compatibility.
([#&#8203;8780](https://github.com/grpc/grpc-go/issues/8780))

### Behavior Changes

- balancer/weightedtarget: Remove handling of `Addresses` and only
handle `Endpoints` in resolver updates.
([#&#8203;8841](https://github.com/grpc/grpc-go/issues/8841))

### New Features

- experimental/stats: Add support for asynchronous gauge metrics through
the new `AsyncMetricReporter` and `RegisterAsyncReporter` APIs.
([#&#8203;8780](https://github.com/grpc/grpc-go/issues/8780))
- pickfirst: Add support for weighted random shuffling of endpoints, as
described in [gRFC
A113](https://github.com/grpc/proposal/pull/535).
- This is enabled by default, and can be turned off using the
environment variable `GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING`.
([#&#8203;8864](https://github.com/grpc/grpc-go/issues/8864))
- xds: Implement `:authority` rewriting, as specified in [gRFC
A81](https://github.com/grpc/proposal/blob/master/A81-xds-authority-rewriting.md).
([#&#8203;8779](https://github.com/grpc/grpc-go/issues/8779))
- balancer/randomsubsetting: Implement the `random_subsetting` LB
policy, as specified in [gRFC
A68](https://github.com/grpc/proposal/blob/master/A68-random-subsetting.md).
([#&#8203;8650](https://github.com/grpc/grpc-go/issues/8650))
- Special Thanks:
[@&#8203;marek-szews](https://github.com/marek-szews)

### Bug Fixes

- credentials/tls: Fix a bug where the port was not stripped from the
authority override before validation.
([#&#8203;8726](https://github.com/grpc/grpc-go/issues/8726))
- Special Thanks:
[@&#8203;Atul1710](https://github.com/Atul1710)
- xds/priority: Fix a bug causing delayed failover to lower-priority
clusters when a higher-priority cluster is stuck in `CONNECTING` state.
([#&#8203;8813](https://github.com/grpc/grpc-go/issues/8813))
- health: Fix a bug where health checks failed for clients using legacy
compression options (`WithDecompressor` or `RPCDecompressor`).
([#&#8203;8765](https://github.com/grpc/grpc-go/issues/8765))
- Special Thanks: [@&#8203;sanki92](https://github.com/sanki92)
- transport: Fix an issue where the HTTP/2 server could skip header size
checks when terminating a stream early.
([#&#8203;8769](https://github.com/grpc/grpc-go/issues/8769))
- Special Thanks:
[@&#8203;joybestourous](https://github.com/joybestourous)
- server: Propagate status detail headers, if available, when
terminating a stream during request header processing.
([#&#8203;8754](https://github.com/grpc/grpc-go/issues/8754))
- Special Thanks:
[@&#8203;joybestourous](https://github.com/joybestourous)

### Performance Improvements

- credentials/alts: Optimize read buffer alignment to reduce copies.
([#&#8203;8791](https://github.com/grpc/grpc-go/issues/8791))
- mem: Optimize pooling and creation of `buffer` objects.
([#&#8203;8784](https://github.com/grpc/grpc-go/issues/8784))
- transport: Reduce slice re-allocations by reserving slice capacity.
([#&#8203;8797](https://github.com/grpc/grpc-go/issues/8797))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

## Need help?
You can ask for more help in the following Slack channel:
#proj-renovate-self-hosted. In that channel you can also find ADR and
FAQ docs in the Resources section.

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My42NS4wIiwidXBkYXRlZEluVmVyIjoiNDMuNjUuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiYXV0b21lcmdlLXNlY3VyaXR5LXVwZGF0ZSIsInNldmVyaXR5OkNSSVRJQ0FMIiwidXBkYXRlLW1pbm9yIl19-->

Signed-off-by: renovate-sh-app[bot] <219655108+renovate-sh-app[bot]@users.noreply.github.com>
Co-authored-by: renovate-sh-app[bot] <219655108+renovate-sh-app[bot]@users.noreply.github.com>
(cherry picked from commit 5cfbcc4)
@grafana-alloybot grafana-alloybot Bot requested a review from a team as a code owner March 20, 2026 09:41
@github-actions
Copy link
Copy Markdown
Contributor

🔍 Dependency Review

Below are the changes to Go module dependencies found in the provided go.mod diffs. For each, I reviewed the changelogs and public APIs between the as-is and to-be versions and summarized any actionable code changes (if any).

Scope: Only dependencies that changed in go.mod are assessed (per instructions). go.sum-only changes are ignored unless they correspond to a go.mod change.

cel.dev/expr v0.24.0 -> v0.25.1 — ✅ Safe
  • What changed

    • cel.dev/expr provides the CEL proto definitions and related generated code.
    • v0.25.1 is a minor release on top of v0.24.0 and, per published release notes and diffs, consists of regenerated proto definitions and small compatibility updates.
  • Impact

    • No public Go API removals or breaking changes called out between v0.24.x and v0.25.1.
    • This module is indirect in all updated go.mod files. Unless your code imports cel.dev/expr proto types directly and performs strict/exhaustive enum or field handling, no changes are required.
  • Actions

    • None required.
  • References

github.com/cncf/xds/go v0.0.0-20251022180443-0feb69152e9f -> v0.0.0-20251210132809-ee656c7534f5 — ✅ Safe
  • What changed

    • This is the xDS protocol’s Go protos. Pseudo-version bump brings in newer generated protos.
  • Impact

    • Proto updates of this nature are backward compatible for consumers unless you rely on removed fields (none indicated) or exact enum value sets. No API removals are noted.
    • Your go.mod lists this as indirect.
  • Actions

    • None required.
  • References

go.opentelemetry.io/contrib/detectors/gcp v1.38.0 -> v1.39.0 — ✅ Safe
google.golang.org/grpc v1.78.0 -> v1.79.3 — ✅ Safe

Notes

  • The changes to github.com/envoyproxy/go-control-plane shown in go.sum are not associated with a go.mod change in this PR, so they are not assessed here (per instructions).
  • All four reviewed upgrades are indirect except for google.golang.org/grpc in the root module. No required code changes were identified for these bumps.
  • If you maintain exhaustive switch statements or strict wire compatibility checks over generated proto enums/messages (cel.dev/expr, cncf/xds), re-run tests to surface any new enum values or fields, though no removals are indicated in the reviewed ranges.

@kalleep kalleep merged commit be8150a into release/v1.14 Mar 20, 2026
44 checks passed
@kalleep kalleep deleted the backport/pr-5825-to-v1.14 branch March 20, 2026 10:26
blewis12 pushed a commit that referenced this pull request Mar 24, 2026
🤖 I have created a release *beep* *boop*
---


## [1.14.2](v1.14.1...v1.14.2)
(2026-03-24)


### Bug Fixes 🐛

* **deps:** Update go version to 1.25.8
([#5846](#5846))
([b9add52](b9add52))
* **deps:** Update module github.com/buger/jsonparser to v1.1.2
[SECURITY] [backport]
([#5841](#5841))
([33a64c5](33a64c5))
* **deps:** Update module google.golang.org/grpc to v1.79.3 [SECURITY]
[backport] ([#5842](#5842))
([be8150a](be8150a))

---
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>
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Mar 25, 2026
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [grafana/alloy](https://github.com/grafana/alloy) | patch | `v1.14.1` → `v1.14.2` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>grafana/alloy (grafana/alloy)</summary>

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

[Compare Source](grafana/alloy@v1.14.1...v1.14.2)

##### Bug Fixes 🐛

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

#### 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/

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My44Ny4xIiwidXBkYXRlZEluVmVyIjoiNDMuODcuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90IiwiYXV0b21hdGlvbjpib3QtYXV0aG9yZWQiLCJkZXBlbmRlbmN5LXR5cGU6OnBhdGNoIl19-->
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 28, 2026
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

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

#### 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/
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 28, 2026
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

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

#### 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/
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 28, 2026
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

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

#### 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/
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 28, 2026
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

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

#### 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/
renovate Bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 28, 2026
##### [\`v1.14.2\`](https://github.com/grafana/alloy/releases/tag/v1.14.2)

##### Bug Fixes 🐛

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

#### 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/
renovate Bot added a commit to sdwilsh/sOS that referenced this pull request Mar 30, 2026
##### [\`v1.15.0\`](grafana/alloy@v1.14.2...v1.15.0-rc.0)


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

##### Bug Fixes 🐛

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

#### 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](grafana/alloy#5730)) ([4393054](grafana/alloy@4393054))
  ([@thampiotr](https://github.com/thampiotr))
- **deps:** Update module golang.org/x/net to v0.51.0 \[SECURITY] \[backport] ([#5690](grafana/alloy#5690)) ([9e8616c](grafana/alloy@9e8616c))
- **loki.process:** Protect against json that does not look like docker json format \[backport] ([#5773](grafana/alloy#5773)) ([a0f1f8a](grafana/alloy@a0f1f8a))
  ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Keep positions for compressed files when reading is finished \[backport] ([#5741](grafana/alloy#5741)) ([4f6d548](grafana/alloy@4f6d548))
  ([@kalleep](https://github.com/kalleep))
- **otelcol.receiver.datadog:** Expose intake proxy and trace\_id\_cache\_size settings \[backport] ([#5785](grafana/alloy#5785)) ([6d99ab5](grafana/alloy@6d99ab5))
  ([@thampiotr](https://github.com/thampiotr))
- **prometheus.scrape:** Update arguments and targets even if `scrape_native_histograms` and `extra_metrics` are updated \[backport] ([#5792](grafana/alloy#5792)) ([76d398f](grafana/alloy@76d398f)) ([@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](grafana/alloy#5444)) ([553f967](grafana/alloy@553f967))
  ([@gaantunes](https://github.com/gaantunes))
- Add limited type checking for validate command ([#5076](grafana/alloy#5076)) ([045fb76](grafana/alloy@045fb76))
  ([@kalleep](https://github.com/kalleep))
- **database\_observability.mysql:** Collect client info for query samples ([#5552](grafana/alloy#5552)) ([257a699](grafana/alloy@257a699))
  ([@matthewnolf](https://github.com/matthewnolf))
- **database\_observability.postgres:** Add exclude databases/users for `logs` collector ([#5569](grafana/alloy#5569)) ([5dddd9b](grafana/alloy@5dddd9b))
  ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Add logs collector ([#5445](grafana/alloy#5445)) ([46d79d4](grafana/alloy@46d79d4))
  ([@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](grafana/alloy#5544)) ([2d0ca15](grafana/alloy@2d0ca15))
  ([@cristiangreco](https://github.com/cristiangreco))
- Deprecate prometheus.write.queue ([#5509](grafana/alloy#5509)) ([ee0f227](grafana/alloy@ee0f227))
  ([@kgeckhart](https://github.com/kgeckhart), [@clayton-cornell](https://github.com/clayton-cornell))
- Introduce SeriesRefMappingStore ([#5522](grafana/alloy#5522)) ([33ee297](grafana/alloy@33ee297))
  ([@x1unix](https://github.com/x1unix), [@kgeckhart](https://github.com/kgeckhart))
- **local.file\_match, loki.source.file:** Match multiple files using doublestar `{...}` expressions ([#5470](grafana/alloy#5470)) ([284e48f](grafana/alloy@284e48f))
  ([@ptodev](https://github.com/ptodev))
- **loki.process:** Add debug metrics for CRI stage to track truncation of lines and partial line flushing ([#5399](grafana/alloy#5399)) ([a1728f6](grafana/alloy@a1728f6))
  ([@ptodev](https://github.com/ptodev))
- **mixin:** Add OTel Engine Overview dashboard ([#5573](grafana/alloy#5573)) ([df52116](grafana/alloy@df52116))
  ([@thampiotr](https://github.com/thampiotr), [@cursoragent](https://github.com/cursoragent))
- **mixin:** Add zipped dashboards as a release artifact ([#5603](grafana/alloy#5603)) ([4f7fe85](grafana/alloy@4f7fe85))
  ([@thampiotr](https://github.com/thampiotr))
- **otel:** Add receivers used in the otel k8s helm chart presets ([#5466](grafana/alloy#5466)) ([100f6ea](grafana/alloy@100f6ea))
  ([@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](grafana/alloy#5308)) ([237e985](grafana/alloy@237e985))
  ([@ptodev](https://github.com/ptodev))
- **otelcol:** Expose missing tail\_sampling drop and bytes\_limiting ([6021154](grafana/alloy@6021154))
  ([@thampiotr](https://github.com/thampiotr))
- **prometheus.exporter.postgres:** Update to version `0.19.0` and expose new collectors settings  ([#4640](grafana/alloy#4640)) ([aa01e45](grafana/alloy@aa01e45))
  ([@cristiangreco](https://github.com/cristiangreco), [@clayton-cornell](https://github.com/clayton-cornell))
- **prometheus.exporter.postgres:** Update to version 0.19.1 ([#5659](grafana/alloy#5659)) ([9f4e88f](grafana/alloy@9f4e88f))
  ([@cristiangreco](https://github.com/cristiangreco))
- Update github exporter with github app authentication ([#5377](grafana/alloy#5377)) ([ca741a6](grafana/alloy@ca741a6))
  ([@dehaansa](https://github.com/dehaansa), [@clayton-cornell](https://github.com/clayton-cornell))
- Update grafana cadvisor fork to v0.54.1 ([#5447](grafana/alloy#5447)) ([2a3aba0](grafana/alloy@2a3aba0))
  ([@dehaansa](https://github.com/dehaansa), [@blewis12](https://github.com/blewis12))
- Upgrade prometheus to version 0.309.1 ([#5479](grafana/alloy#5479)) ([633944b](grafana/alloy@633944b))
  ([@jharvey10](https://github.com/jharvey10))

##### Bug Fixes 🐛

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

##### Performance

- **loki.secretfilter:** Change secretfilter implementation to use Gitleaks ([#5503](grafana/alloy#5503)) ([08e265c](grafana/alloy@08e265c)) ([@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](grafana/alloy#5614)) ([3225ea3](grafana/alloy@3225ea3)) ([@thampiotr](https://github.com/thampiotr))
- **mixin:** Add zipped dashboards as a release artifact \[backport] ([#5625](grafana/alloy#5625)) ([37ff20f](grafana/alloy@37ff20f)) ([@thampiotr](https://github.com/thampiotr))
- **profiler:** Backport Go 1.26 gopclntab textStart fix ([#5572](grafana/alloy#5572)) ([5ca05c9](grafana/alloy@5ca05c9)) ([@marcsanmi](https://github.com/marcsanmi))
- **prometheus.exporter.postgres:** Update version of the exporter fork to fix pg\_settings ([#5574](grafana/alloy#5574)) ([62a52f8](grafana/alloy@62a52f8)) ([@cristiangreco](https://github.com/cristiangreco))
- **pyroscope.ebpf:** Backport dotnet nibble map fix ([#5553](grafana/alloy#5553)) ([6c62760](grafana/alloy@6c62760)) ([@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](grafana/alloy#5519)) ([fc49bfe](grafana/alloy@fc49bfe)) ([@fridgepoet](https://github.com/fridgepoet))
- **database\_observability.mysql:** Skip wait events with `NULL` timer\_wait \[backport] ([#5521](grafana/alloy#5521)) ([2f43c91](grafana/alloy@2f43c91)) ([@cristiangreco](https://github.com/cristiangreco))
- **database\_observability.postgres:** Improvements to SET search\_path for postgres explain plans \[backport] ([#5520](grafana/alloy#5520)) ([ecbb577](grafana/alloy@ecbb577)) ([@rgeyer](https://github.com/rgeyer))
- **loki.process:** Registration of stage.metric when used inside stage.match \[backport] ([#5495](grafana/alloy#5495)) ([2bbc37e](grafana/alloy@2bbc37e))
- **loki.source.docker:** Parse timestamp correctly when log line only contains newline \[backport] ([#5496](grafana/alloy#5496)) ([55a82f0](grafana/alloy@55a82f0)) ([@kalleep](https://github.com/kalleep))
- **loki.source.file:** Close file if we cannot find encoding \[backport] ([#5531](grafana/alloy#5531)) ([ccda4a5](grafana/alloy@ccda4a5)) ([@kalleep](https://github.com/kalleep))
- **prometheus.receive\_http:** Bump prometheus patch for bugfix \[backport] ([#5516](grafana/alloy#5516)) ([b3531fb](grafana/alloy@b3531fb)) ([@kgeckhart](https://github.com/kgeckhart))
- **scheduling:** Shutdown runnables with a timeout before starting new ones \[backport] ([#5443](grafana/alloy#5443)) ([d446610](grafana/alloy@d446610)) ([@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](grafana/alloy#5058)) ([20900c6](grafana/alloy@20900c6))
- Add an `otelcol.processor.metric_start_time` component ([#5342](grafana/alloy#5342)) ([3fb13ac](grafana/alloy@3fb13ac))
- Add job level `period`, `length`, and `add_cloudwatch_timestamp` options and labels\_snake\_case to CW exporter \[backport] ([#5355](grafana/alloy#5355)) ([60d73b7](grafana/alloy@60d73b7))
- Add missing configuration parameter `deployment_name_from_replicaset` to k8sattributes processor ([#5183](grafana/alloy#5183)) ([b54ca77](grafana/alloy@b54ca77))
- Add parcas symbols upload to pyroscope.ebpf ([#4948](grafana/alloy#4948)) ([30f2242](grafana/alloy@30f2242))
- Add sharding for loki.write ([#4882](grafana/alloy#4882)) ([7570d65](grafana/alloy@7570d65))
- Add unexposed otel engine and extension to codebase and change build structure ([#5114](grafana/alloy#5114)) ([6438176](grafana/alloy@6438176))
- **beyla.ebpf:** Add meta\_cache\_address to beyla.ebpf.attributes.kubernetes ([#4871](grafana/alloy#4871)) ([08796f8](grafana/alloy@08796f8))
- **beyla.ebpf:** Upgrade Beyla to v2.8.5 ([f1f457f](grafana/alloy@f1f457f))
- Change the defaults for `sending_queue` > `batch` block inside `otelcol.exporter` components ([#5061](grafana/alloy#5061)) ([714a2ed](grafana/alloy@714a2ed))
- **cluster:** Support DNS discovery mode prefixes in --cluster.join-addresses flag ([#5034](grafana/alloy#5034)) ([08796f8](grafana/alloy@08796f8))
- **converter:** Update promtail converter to use file\_match block for loki.source.file ([#4791](grafana/alloy#4791)) ([08796f8](grafana/alloy@08796f8))
- Database\_observability: add health check collector for postgres component ([#5222](grafana/alloy#5222)) ([80917b1](grafana/alloy@80917b1))
- Database\_observability: expose `exclude_schemas` and `exclude_databases` settings ([#5334](grafana/alloy#5334)) ([37656f8](grafana/alloy@37656f8))
- Database\_observability: support Azure cloud provider config data ([#5245](grafana/alloy#5245)) ([d7a469f](grafana/alloy@d7a469f))
- Database\_observability: support Azure privatelink db name ([#5260](grafana/alloy#5260)) ([22e4991](grafana/alloy@22e4991))
- Database\_observability.mysql: support excluding schemas in all collectors \[backport] ([#5380](grafana/alloy#5380)) ([d67268c](grafana/alloy@d67268c))
- Database\_observability.postgres: support excluding DBs in all collectors \[backport] ([#5383](grafana/alloy#5383)) ([165492c](grafana/alloy@165492c))
- **database\_observability:** Add health\_check collector to validate configuration ([#5115](grafana/alloy#5115)) ([6d96740](grafana/alloy@6d96740))
- **database\_observability:** Always send explain plan log for each query including status ([#4969](grafana/alloy#4969)) ([08796f8](grafana/alloy@08796f8))
- **database\_observability:** Append cloud provider information labels to metrics ([#4942](grafana/alloy#4942)) ([08796f8](grafana/alloy@08796f8))
- **database\_observability:** Stop tracking own instrumentation queries ([#4991](grafana/alloy#4991)) ([0b55557](grafana/alloy@0b55557))
- **deps:** Update Prometheus to v3.8.0 and Loki to v3.6.2 ([#5035](grafana/alloy#5035)) ([08796f8](grafana/alloy@08796f8))
- Expose otel subcommand and add user-facing documentation ([#5244](grafana/alloy#5244)) ([93f20b8](grafana/alloy@93f20b8))
- Improve faro.receiver.sourcemaps caching strategy ([#4337](grafana/alloy#4337)) ([41e655c](grafana/alloy@41e655c))
- **loki.process:** Mark stage.windowsevent as GA ([#4879](grafana/alloy#4879)) ([08796f8](grafana/alloy@08796f8))
- **loki.source.file:** Refactor tailer to reduce resource usage ([#5003](grafana/alloy#5003)) ([08796f8](grafana/alloy@08796f8))
- **loki.source.syslog:** Implement livedebugging support ([#5216](grafana/alloy#5216)) ([e26badb](grafana/alloy@e26badb))
- **loki.source.syslog:** Support cisco-specific syslog fields ([#5165](grafana/alloy#5165)) ([3230ba0](grafana/alloy@3230ba0))
- **loki.source.syslog:** Support raw format ([#5140](grafana/alloy#5140)) ([923d127](grafana/alloy@923d127))
- **mimir.alerts.kubernetes:** Add `alertmanagerconfig_matcher` block to change the matcher strategy ([f2b9671](grafana/alloy@f2b9671))
- **mimir.alerts.kubernetes:** Add component to discover AlertmanagerConfig Kubernetes resources ([#3448](grafana/alloy#3448)) ([08796f8](grafana/alloy@08796f8))
- **mixin:** Provide rendered mixin outputs ([#5118](grafana/alloy#5118)) ([738b9fb](grafana/alloy@738b9fb))
- **otelcol.auth.basic:** Add htpasswd file based authentication ([#3916](grafana/alloy#3916)) ([08796f8](grafana/alloy@08796f8))
- **otelcol.connector.count:** Add component to count spans, metrics, and logs ([#4913](grafana/alloy#4913)) ([08796f8](grafana/alloy@08796f8))
- **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](grafana/alloy#4475)) ([08796f8](grafana/alloy@08796f8))
- **otelcol.exporter.prometheus:** Add `honor_metadata` config argument \[backport] ([#5439](grafana/alloy#5439)) ([32cb175](grafana/alloy@32cb175))
- **otelcol.receiver.awss3:** Add experimental receiver for traces stored in S3 ([#4928](grafana/alloy#4928)) ([08796f8](grafana/alloy@08796f8))
- **otelcol.receiver.kafka:** Deprecate the `topic` attribute inside the `logs`, `metrics`, and `traces` blocks in favour of a new `topics` attribute. ([f1f457f](grafana/alloy@f1f457f))
- **otelcol.receiver.kafka:** Remove the global `topic` attribute ([f1f457f](grafana/alloy@f1f457f))
- **otelcol:** Upgrade to OTel Collector v0.142.0 ([f1f457f](grafana/alloy@f1f457f))
- **prometheus.echo:** Add component for local metrics inspection in exposition format ([#4105](grafana/alloy#4105)) ([08796f8](grafana/alloy@08796f8))
- **prometheus.exporter.cloudwatch:** Add delay option to account for CloudWatch ingestion latency ([#4936](grafana/alloy#4936)) ([08796f8](grafana/alloy@08796f8))
- **prometheus.exporter.databricks:** Add Databricks exporter component ([#5054](grafana/alloy#5054)) ([4442836](grafana/alloy@4442836))
- **prometheus.operator.scrapeconfigs:** Add HTTP service discovery support via httpSDConfigs ([#4826](grafana/alloy#4826)) ([08796f8](grafana/alloy@08796f8))
- **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](grafana/alloy#5045)) ([08796f8](grafana/alloy@08796f8))
- **prometheus:** Reduce resource overhead by removing unnecessary labelstore usage ([#4890](grafana/alloy#4890)) ([08796f8](grafana/alloy@08796f8))
- **pyroscope.ebpf:** Add `lazy_mode` argument to the `pyroscope.ebpf` to defer eBPF profiler startup until there are targets to profile ([#4824](grafana/alloy#4824)) ([08796f8](grafana/alloy@08796f8))
- **pyroscope.enrich:** Add experimental component to enrich profiles using discovery labels ([#4797](grafana/alloy#4797)) ([08796f8](grafana/alloy@08796f8))
- Strip comments from normalized sql text in `database_observability.postgres` ([#5005](grafana/alloy#5005)) ([a58721a](grafana/alloy@a58721a))
- Support setting default scrape limit for prometheus.operator components ([#5280](grafana/alloy#5280)) ([40ffe08](grafana/alloy@40ffe08))
- **tracing:** Add send\_traceparent option to enable traceparent header propagation ([#4874](grafana/alloy#4874)) ([08796f8](grafana/alloy@08796f8))

##### Bug Fixes 🐛

- Add support for compressed files for tail package \[backport] ([#5415](grafana/alloy#5415)) ([311662f](grafana/alloy@311662f))
- Allow loki.source.file to read renaming lines of a deleted file before it tries to re open a new one  ([#5270](grafana/alloy#5270)) ([f8b1de8](grafana/alloy@f8b1de8))
- Compute signatures from files so that loki.source.file can handle atomic writes ([#5143](grafana/alloy#5143)) ([3090c4a](grafana/alloy@3090c4a))
- **converter:** Fix promtail converter to limit Kubernetes discovery to same node ([#5046](grafana/alloy#5046)) ([08796f8](grafana/alloy@08796f8))
- Database\_observability: add Azure provider relabeling rules \[backport] ([#5382](grafana/alloy#5382)) ([c121178](grafana/alloy@c121178))
- Database\_observability: allow setting limit for mysql query\_details ([#5314](grafana/alloy#5314)) ([085f300](grafana/alloy@085f300))
- Database\_observability: fix race in postgres query samples test ([#5315](grafana/alloy#5315)) ([4f01753](grafana/alloy@4f01753))
- Database\_observability: grant check only require SELECT *.* on perf\_schema ([#5294](grafana/alloy#5294)) ([490017c](grafana/alloy@490017c))
- Database\_observability: reuse cloud provider regexes ([#5262](grafana/alloy#5262)) ([6009c54](grafana/alloy@6009c54))
- Database\_observability: update BackendXID type to int64 to better map to PG xid \[backport] ([#5373](grafana/alloy#5373)) ([1cb4b0f](grafana/alloy@1cb4b0f))
- Database\_observability: update BackendXmin type to int64 to better map to PG BIGINT ([#5296](grafana/alloy#5296)) ([d45ccc0](grafana/alloy@d45ccc0))
- **database\_observability.mysql:** Add setup\_actors collector to avoid tracking own queries ([#4978](grafana/alloy#4978)) ([08796f8](grafana/alloy@08796f8))
- **database\_observability.mysql:** Replace server\_id label with hash from server\_uuid and hostname ([#4943](grafana/alloy#4943)) ([08796f8](grafana/alloy@08796f8))
- **database\_observability.postgres:** Fix schema\_details collection for mixed case table names ([#4872](grafana/alloy#4872)) ([08796f8](grafana/alloy@08796f8))
- **database\_observability:** Improve postgres version parsing for explain plans in database\_observability component ([#5131](grafana/alloy#5131)) ([23c7f37](grafana/alloy@23c7f37))
- **database\_observability:** Skip explain plans which lookup individual records and return no rows ([#5203](grafana/alloy#5203)) ([b7c7cbb](grafana/alloy@b7c7cbb))
- **deps:** Update npm dependencies ([#5190](grafana/alloy#5190)) ([cd027e2](grafana/alloy@cd027e2))
- **docker:** Fix log corruption for multiplexed long lines ([#4713](grafana/alloy#4713)) ([08796f8](grafana/alloy@08796f8))
- Ensure the squid exporter wrapper properly brackets ipv6 addresses ([#5199](grafana/alloy#5199)) ([ee23162](grafana/alloy@ee23162))
- Guard pyroscope otel profiler code with unix go build tag \[backport] ([#5360](grafana/alloy#5360)) ([b1ecdb6](grafana/alloy@b1ecdb6))
- HTTP/2 is no longer always disabled in loki.write ([#5267](grafana/alloy#5267)) ([1c97c2d](grafana/alloy@1c97c2d))
- Invalid handling of `id` in `foreach` when using discovery components ([#5322](grafana/alloy#5322)) ([61fe184](grafana/alloy@61fe184)), closes [#5297](grafana/alloy#5297)
- Issues when reading files using non UTF-8 encoding in loki.source.file  ([#5259](grafana/alloy#5259)) ([4740276](grafana/alloy@4740276))
- **loki.process:** Implement encoding.TextMarshaler and encoding.TextUnmarshaler for TruncateSourceType \[backport] ([#5428](grafana/alloy#5428)) ([3585393](grafana/alloy@3585393))
- **loki.process:** Remove extraneous output stage from cri stage pipeline ([#5002](grafana/alloy#5002)) ([08796f8](grafana/alloy@08796f8))
- **loki.source.api:** Prevent dropping request when relabel rules drop a specific stream. ([#4834](grafana/alloy#4834)) ([08796f8](grafana/alloy@08796f8))
- **loki.source.file:** Make sure position is recorded when component exit \[backport] ([#5418](grafana/alloy#5418)) ([64fb278](grafana/alloy@64fb278))
- **loki.source.file:** Update `tail_from_end` to properly handle file encoding \[backport] ([#5436](grafana/alloy#5436)) ([731e8e5](grafana/alloy@731e8e5))
- **mimir.alerts.kubernetes:** Fix crash when using Kubernetes secret or configmap in AlertmanagerConfig ([#5010](grafana/alloy#5010)) ([08796f8](grafana/alloy@08796f8))
- **mixin:** Correct invalid queries in alloy logs dashboard  ([#5123](grafana/alloy#5123)) ([ad8efd3](grafana/alloy@ad8efd3))
- Only alert on cluster drift when cluster\_name is set ([#5181](grafana/alloy#5181)) ([8b6f056](grafana/alloy@8b6f056))
- **otelcol:** Allow configuration of force\_attempt\_http2 and default to true ([#5050](grafana/alloy#5050)) ([08796f8](grafana/alloy@08796f8))
- Perform drain when file is deleted in tail package ([#5139](grafana/alloy#5139)) ([2e48867](grafana/alloy@2e48867))
- Preserve meta labels in loki.source.podlogs ([#5097](grafana/alloy#5097)) ([23d787c](grafana/alloy@23d787c))
- Prevent panic in import.git when update fails ([#5198](grafana/alloy#5198)) ([577a591](grafana/alloy@577a591))
- **prometheus.exporter.gcp:** Preserve colons in extra\_filters filter expressions ([#5018](grafana/alloy#5018)) ([08796f8](grafana/alloy@08796f8))
- **prometheus.operator:** Enable native histogram ingestion in internal scrape manager ([#4750](grafana/alloy#4750)) ([08796f8](grafana/alloy@08796f8))
- **relabel:** Fix default values for source\_labels to prevent labeldrop issues ([#5059](grafana/alloy#5059)) ([08796f8](grafana/alloy@08796f8))
- Remove Parca debug info upload from user configuration \[backport] ([#5395](grafana/alloy#5395)) ([58eb9cc](grafana/alloy@58eb9cc))
- Revert doublestar v4 update \[backport] ([#5435](grafana/alloy#5435)) ([0e9e615](grafana/alloy@0e9e615))
- Set content-encoding header in loki.write ([#5346](grafana/alloy#5346)) ([ffd2bea](grafana/alloy@ffd2bea))
- Show correct fallback alloy version instead of v1.13.0 ([#5110](grafana/alloy#5110)) ([e2e96e9](grafana/alloy@e2e96e9))
- Update to use doublestar v4 ([#5148](grafana/alloy#5148)) ([d8f0b3e](grafana/alloy@d8f0b3e))

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

##### Bug Fixes 🐛

- Add missing configuration parameter `deployment_name_from_replicaset` to k8sattributes processor ([5b90a9d](grafana/alloy@5b90a9d)) ([@dehaansa](https://github.com/dehaansa))
- **database\_observability:** Fix schema\_details collector to fetch column definitions with case sensitive table names ([#4872](grafana/alloy#4872)) ([560dff4](grafana/alloy@560dff4)) ([@jharvey10](https://github.com/jharvey10), [@fridgepoet](https://github.com/fridgepoet))
- **deps:** Update jose2go to 1.7.0 ([#4858](grafana/alloy#4858)) ([dfdd341](grafana/alloy@dfdd341)) ([@jharvey10](https://github.com/jharvey10))
- **deps:** Update npm dependencies \[backport] ([#5201](grafana/alloy#5201)) ([8e06c26](grafana/alloy@8e06c26)) ([@jharvey10](https://github.com/jharvey10))
- Ensure the squid exporter wrapper properly brackets ipv6 addresses \[backport] ([#5205](grafana/alloy#5205)) ([e329cc6](grafana/alloy@e329cc6)) ([@dehaansa](https://github.com/dehaansa))
- Preserve meta labels in loki.source.podlogs ([#5097](grafana/alloy#5097)) ([ab4b21e](grafana/alloy@ab4b21e)) ([@kalleep](https://github.com/kalleep))
- Prevent panic in import.git when update fails \[backport] ([#5204](grafana/alloy#5204)) ([c82fbae](grafana/alloy@c82fbae)) ([@dehaansa](https://github.com/dehaansa), [@jharvey10](https://github.com/jharvey10))
- show correct fallback alloy version instead of v1.13.0 ([#5110](grafana/alloy#5110)) ([b72be99](grafana/alloy@b72be99)) ([@dehaansa](https://github.com/dehaansa), [@jharvey10](https://github.com/jharvey10))

#### Upgrading

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

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

#### Installation

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

[installation guide]: https://grafana.com/docs/alloy/v1.12/get-started/install/
renovate Bot added a commit to sdwilsh/sOS that referenced this pull request Apr 3, 2026
##### [\`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](https://github.com/grafana/alloy/issues/5262)) ([6009c54](https://github.com/grafana/alloy/commit/6009c547c54defc54aed630f64c3f0fda8d75223))
- Database\_observability: update BackendXID type to int64 to better map to PG xid \[backport] ([#5373](https://github.com/grafana/alloy/issues/5373)) ([1cb4b0f](https://github.com/grafana/alloy/commit/1cb4b0fc67a2c6b15439dce1c0e93ca3465afd0f))
- Database\_observability: update BackendXmin type to int64 to better map to PG BIGINT ([#5296](https://github.com/grafana/alloy/issues/5296)) ([d45ccc0](https://github.com/grafana/alloy/commit/d45ccc0f63d630c30a24a21a80ff6789b458edba))
- **database\_observability.mysql:** Add setup\_actors collector to avoid tracking own queries ([#4978](https://github.com/grafana/alloy/issues/4978)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **database\_observability.mysql:** Replace server\_id label with hash from server\_uuid and hostname ([#4943](https://github.com/grafana/alloy/issues/4943)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **database\_observability.postgres:** Fix schema\_details collection for mixed case table names ([#4872](https://github.com/grafana/alloy/issues/4872)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **database\_observability:** Improve postgres version parsing for explain plans in database\_observability component ([#5131](https://github.com/grafana/alloy/issues/5131)) ([23c7f37](https://github.com/grafana/alloy/commit/23c7f37afc25dabe267bb60d8b0ee0473f073e5b))
- **database\_observability:** Skip explain plans which lookup individual records and return no rows ([#5203](https://github.com/grafana/alloy/issues/5203)) ([b7c7cbb](https://github.com/grafana/alloy/commit/b7c7cbbf0a9542af8b89592b2ff011df8a2a362e))
- **deps:** Update npm dependencies ([#5190](https://github.com/grafana/alloy/issues/5190)) ([cd027e2](https://github.com/grafana/alloy/commit/cd027e2f23f2e6649154f46ab953ac840c956d3a))
- **docker:** Fix log corruption for multiplexed long lines ([#4713](https://github.com/grafana/alloy/issues/4713)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Ensure the squid exporter wrapper properly brackets ipv6 addresses ([#5199](https://github.com/grafana/alloy/issues/5199)) ([ee23162](https://github.com/grafana/alloy/commit/ee2316252e6e0ee901b0ff57c55d6d07750d14ab))
- Guard pyroscope otel profiler code with unix go build tag \[backport] ([#5360](https://github.com/grafana/alloy/issues/5360)) ([b1ecdb6](https://github.com/grafana/alloy/commit/b1ecdb6736d5f41923e4b54e54b23fb6d59e1e32))
- HTTP/2 is no longer always disabled in loki.write ([#5267](https://github.com/grafana/alloy/issues/5267)) ([1c97c2d](https://github.com/grafana/alloy/commit/1c97c2d569fcda2f6761534150b063d1404dc388))
- Invalid handling of `id` in `foreach` when using discovery components ([#5322](https://github.com/grafana/alloy/issues/5322)) ([61fe184](https://github.com/grafana/alloy/commit/61fe1845d3b109992cbb0ec99a062ac113c1a411)), closes [#5297](https://github.com/grafana/alloy/issues/5297)
- Issues when reading files using non UTF-8 encoding in loki.source.file  ([#5259](https://github.com/grafana/alloy/issues/5259)) ([4740276](https://github.com/grafana/alloy/commit/4740276083121e5b1fac8e4ea0bedba96e4190e5))
- **loki.process:** Implement encoding.TextMarshaler and encoding.TextUnmarshaler for TruncateSourceType \[backport] ([#5428](https://github.com/grafana/alloy/issues/5428)) ([3585393](https://github.com/grafana/alloy/commit/3585393d187432a4cf75fe59ad89906568e7b2eb))
- **loki.process:** Remove extraneous output stage from cri stage pipeline ([#5002](https://github.com/grafana/alloy/issues/5002)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **loki.source.api:** Prevent dropping request when relabel rules drop a specific stream. ([#4834](https://github.com/grafana/alloy/issues/4834)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **loki.source.file:** Make sure position is recorded when component exit \[backport] ([#5418](https://github.com/grafana/alloy/issues/5418)) ([64fb278](https://github.com/grafana/alloy/commit/64fb278cec9b20b935f951b7a96144d8482efc6c))
- **loki.source.file:** Update `tail_from_end` to properly handle file encoding \[backport] ([#5436](https://github.com/grafana/alloy/issues/5436)) ([731e8e5](https://github.com/grafana/alloy/commit/731e8e596d3baa5f0980103a93247fba23572f54))
- **mimir.alerts.kubernetes:** Fix crash when using Kubernetes secret or configmap in AlertmanagerConfig ([#5010](https://github.com/grafana/alloy/issues/5010)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **mixin:** Correct invalid queries in alloy logs dashboard  ([#5123](https://github.com/grafana/alloy/issues/5123)) ([ad8efd3](https://github.com/grafana/alloy/commit/ad8efd3511d3a64b9cd7aeb5d6c566b061c29918))
- Only alert on cluster drift when cluster\_name is set ([#5181](https://github.com/grafana/alloy/issues/5181)) ([8b6f056](https://github.com/grafana/alloy/commit/8b6f056e39f0348f5c7121e938d86d15a04a5e99))
- **otelcol:** Allow configuration of force\_attempt\_http2 and default to true ([#5050](https://github.com/grafana/alloy/issues/5050)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Perform drain when file is deleted in tail package ([#5139](https://github.com/grafana/alloy/issues/5139)) ([2e48867](https://github.com/grafana/alloy/commit/2e48867c639c5170c547443f16227133d6c6f604))
- Preserve meta labels in loki.source.podlogs ([#5097](https://github.com/grafana/alloy/issues/5097)) ([23d787c](https://github.com/grafana/alloy/commit/23d787c5c607a077dbb28dd382e6543aeee115fe))
- Prevent panic in import.git when update fails ([#5198](https://github.com/grafana/alloy/issues/5198)) ([577a591](https://github.com/grafana/alloy/commit/577a591537aeae7dfd3758c30dc2980af622a415))
- **prometheus.exporter.gcp:** Preserve colons in extra\_filters filter expressions ([#5018](https://github.com/grafana/alloy/issues/5018)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **prometheus.operator:** Enable native histogram ingestion in internal scrape manager ([#4750](https://github.com/grafana/alloy/issues/4750)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- **relabel:** Fix default values for source\_labels to prevent labeldrop issues ([#5059](https://github.com/grafana/alloy/issues/5059)) ([08796f8](https://github.com/grafana/alloy/commit/08796f80fbc0cde6f278ed0a1022b3aced36e036))
- Remove Parca debug info upload from user configuration \[backport] ([#5395](https://github.com/grafana/alloy/issues/5395)) ([58eb9cc](https://github.com/grafana/alloy/commit/58eb9cc3ed79bc4a84c59623adca43f10f0bfceb))
- Revert doublestar v4 update \[backport] ([#5435](https://github.com/grafana/alloy/issues/5435)) ([0e9e615](https://github.com/grafana/alloy/commit/0e9e615c26bb2ca2aef526259147e9f9b2f219fe))
- Set content-encoding header in loki.write ([#5346](https://github.com/grafana/alloy/issues/5346)) ([ffd2bea](https://github.com/grafana/alloy/commit/ffd2bea7de35ae8599625b924dced7a3144e34c2))
- Show correct fallback alloy version instead of v1.13.0 ([#5110](https://github.com/grafana/alloy/issues/5110)) ([e2e96e9](https://github.com/grafana/alloy/commit/e2e96e95ff0dab600befbe63165e10eea096b968))
- Update to use doublestar v4 ([#5148](https://github.com/grafana/alloy/issues/5148)) ([d8f0b3e](https://github.com/grafana/alloy/commit/d8f0b3e9b5a8c8e842e0bc09adc059fd56c71165))

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

##### Bug Fixes 🐛

- Add missing configuration parameter `deployment_name_from_replicaset` to k8sattributes processor ([5b90a9d](https://github.com/grafana/alloy/commit/5b90a9d391d222eb9c8ea1e40e38a9dbbbd06ffd)) ([@dehaansa](https://github.com/dehaansa))
- **database\_observability:** Fix schema\_details collector to fetch column definitions with case sensitive table names ([#4872](https://github.com/grafana/alloy/issues/4872)) ([560dff4](https://github.com/grafana/alloy/commit/560dff4ccef090e2db85ef6dd9e59aeacf54e3f2)) ([@jharvey10](https://github.com/jharvey10), [@fridgepoet](https://github.com/fridgepoet))
- **deps:** Update jose2go to 1.7.0 ([#4858](https://github.com/grafana/alloy/issues/4858)) ([dfdd341](https://github.com/grafana/alloy/commit/dfdd341c8da5e7b972905d166a497e3093323be2)) ([@jharvey10](https://github.com/jharvey10))
- **deps:** Update npm dependencies \[backport] ([#5201](https://github.com/grafana/alloy/issues/5201)) ([8e06c26](https://github.com/grafana/alloy/commit/8e06c2673c0f5790eba84e9f7091270b3ab0bf2d)) ([@jharvey10](https://github.com/jharvey10))
- Ensure the squid exporter wrapper properly brackets ipv6 addresses \[backport] ([#5205](https://github.com/grafana/alloy/issues/5205)) ([e329cc6](https://github.com/grafana/alloy/commit/e329cc6ebdfd7fb52034b5f215082e2fac9640f6)) ([@dehaansa](https://github.com/dehaansa))
- Preserve meta labels in loki.source.podlogs ([#5097](https://github.com/grafana/alloy/issues/5097)) ([ab4b21e](https://github.com/grafana/alloy/commit/ab4b21ec0c8b4e892ffa39035c6a53149ee05555)) ([@kalleep](https://github.com/kalleep))
- Prevent panic in import.git when update fails \[backport] ([#5204](https://github.com/grafana/alloy/issues/5204)) ([c82fbae](https://github.com/grafana/alloy/commit/c82fbae5431dca9fe3ba071c99978babc2f9b5b1)) ([@dehaansa](https://github.com/dehaansa), [@jharvey10](https://github.com/jharvey10))
- show correct fallback alloy version instead of v1.13.0 ([#5110](https://github.com/grafana/alloy/issues/5110)) ([b72be99](https://github.com/grafana/alloy/commit/b72be995908ac761c0ea9a4f881367dc6ec6da13)) ([@dehaansa](https://github.com/dehaansa), [@jharvey10](https://github.com/jharvey10))

#### Upgrading

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

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

#### Installation

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

[installation guide]: https://grafana.com/docs/alloy/v1.12/get-started/install/
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Apr 4, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant