grafana / alloy

OpenTelemetry Collector distribution with programmable pipelines
https://grafana.com/oss/alloy
Apache License 2.0
1.02k stars 107 forks source link

Pyroscope forwarding through Alloy #984

Open jalaziz opened 1 month ago

jalaziz commented 1 month ago

Request

Currently, Alloy only supports forwarding pyroscope profiles scraped from pprof endpoints, eBPF, and Java. It would be great if Allow could act as a general Pyroscope proxy, exposing an HTTP endpoint sink that can accept submitted profiles and forward them to a deployed Pryroscope instance or Grafana Cloud.

Use case

The pyroscope SDKs offer support for many languages. However, using the SDK to push profiles to Grafana Cloud in certain environments can be problematic or difficult due to network restrictions and secrets management.

Many other solutions (Vector, Grafana Agent, etc), support models where metrics, logs, traces, etc can be pushed to a private (or even local) endpoint that then forwards to a hosted service.

Having Alloy act as a Pyroscope forwarder / proxy allows for secure and scalable deployment models where applications can push profiles to a local Alloy agent (e.g. k8s Daemonset), which then further route profiles to an Alloy agent with public internet access and Grafana Cloud credentials configured.

github-actions[bot] commented 1 week ago

This issue has not had any activity in the past 30 days, so the needs-attention label has been added to it. If the opened issue is a bug, check to see if a newer release fixed your issue. If it is no longer relevant, please feel free to close this issue. The needs-attention label signals to maintainers that something has fallen through the cracks. No action is needed by you; your issue will be kept open and you do not have to respond to this comment. The label will be removed the next time this job runs if there is new activity. Thank you for your contributions!