diff --git a/.github/ISSUE_TEMPLATE/blank.yaml b/.github/ISSUE_TEMPLATE/blank.yaml index 9a3b2920320..003463ae736 100644 --- a/.github/ISSUE_TEMPLATE/blank.yaml +++ b/.github/ISSUE_TEMPLATE/blank.yaml @@ -144,6 +144,7 @@ body: - otelcol.receiver.vcenter - otelcol.receiver.zipkin - otelcol.storage.file + - prometheus.echo - prometheus.enrich - prometheus.exporter.apache - prometheus.exporter.azure diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index a91fc4e793a..407a881000a 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -144,6 +144,7 @@ body: - otelcol.receiver.vcenter - otelcol.receiver.zipkin - otelcol.storage.file + - prometheus.echo - prometheus.enrich - prometheus.exporter.apache - prometheus.exporter.azure diff --git a/.github/ISSUE_TEMPLATE/docs.yaml b/.github/ISSUE_TEMPLATE/docs.yaml index 5b927b7ab5d..979dd4fb0c2 100644 --- a/.github/ISSUE_TEMPLATE/docs.yaml +++ b/.github/ISSUE_TEMPLATE/docs.yaml @@ -147,6 +147,7 @@ body: - otelcol.receiver.vcenter - otelcol.receiver.zipkin - otelcol.storage.file + - prometheus.echo - prometheus.enrich - prometheus.exporter.apache - prometheus.exporter.azure diff --git a/.github/ISSUE_TEMPLATE/feature_request.yaml b/.github/ISSUE_TEMPLATE/feature_request.yaml index ab8c4e54da5..aa3361d08ae 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yaml +++ b/.github/ISSUE_TEMPLATE/feature_request.yaml @@ -144,6 +144,7 @@ body: - otelcol.receiver.vcenter - otelcol.receiver.zipkin - otelcol.storage.file + - prometheus.echo - prometheus.enrich - prometheus.exporter.apache - prometheus.exporter.azure diff --git a/.github/ISSUE_TEMPLATE/proposal.yaml b/.github/ISSUE_TEMPLATE/proposal.yaml index 91a85c121a9..2c953a2550d 100644 --- a/.github/ISSUE_TEMPLATE/proposal.yaml +++ b/.github/ISSUE_TEMPLATE/proposal.yaml @@ -144,6 +144,7 @@ body: - otelcol.receiver.vcenter - otelcol.receiver.zipkin - otelcol.storage.file + - prometheus.echo - prometheus.enrich - prometheus.exporter.apache - prometheus.exporter.azure diff --git a/CHANGELOG.md b/CHANGELOG.md index 0a39d94478c..76c40c06c9d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,8 @@ Main (unreleased) - Add htpasswd file based authentication for `otelcol.auth.basic` (@pkarakal) +- Add `prometheus.echo` component for local inspection of Prometheus metrics. The component writes received metrics to stdout in Prometheus exposition format, enabling easier debugging and testing of metrics flow. (@iamrajiv) + ### Enhancements - update promtail converter to use `file_match` block for `loki.source.file` instead of going through `local.file_match`. (@kalleep) diff --git a/docs/sources/reference/compatibility/_index.md b/docs/sources/reference/compatibility/_index.md index 55ae1649ab0..dc2ecf0713c 100644 --- a/docs/sources/reference/compatibility/_index.md +++ b/docs/sources/reference/compatibility/_index.md @@ -187,6 +187,7 @@ The following components, grouped by namespace, _export_ Prometheus `MetricsRece {{< /collapse >}} {{< collapse title="prometheus" >}} +- [prometheus.echo](../components/prometheus/prometheus.echo) - [prometheus.enrich](../components/prometheus/prometheus.enrich) - [prometheus.relabel](../components/prometheus/prometheus.relabel) - [prometheus.remote_write](../components/prometheus/prometheus.remote_write) diff --git a/docs/sources/reference/components/prometheus/prometheus.echo.md b/docs/sources/reference/components/prometheus/prometheus.echo.md new file mode 100644 index 00000000000..f866f99e178 --- /dev/null +++ b/docs/sources/reference/components/prometheus/prometheus.echo.md @@ -0,0 +1,122 @@ +--- +canonical: https://grafana.com/docs/alloy/latest/reference/components/prometheus/prometheus.echo/ +description: Learn about prometheus.echo +labels: + stage: general-availability + products: + - oss +title: prometheus.echo +--- + +# `prometheus.echo` + +The `prometheus.echo` component receives Prometheus metrics and writes them to stdout in Prometheus exposition format. +This component is useful for debugging and testing the flow of metrics through a pipeline, allowing you to see exactly what metrics are being received at a particular point in your configuration. + +## Usage + +```alloy +prometheus.echo "