From cac7bd619d651f69247372d31abf705c520d8904 Mon Sep 17 00:00:00 2001 From: TomM Date: Wed, 11 Jun 2025 14:52:16 -0600 Subject: [PATCH 1/2] Attempt #1 --- .env.local | 2 +- README.md | 14 +++--- .../{agent-cloud.river => alloy-cloud.river} | 21 ++++----- .../{agent-local.river => alloy-local.river} | 0 docker-compose-cloud.yaml | 11 +++-- docker-compose-local.yaml | 11 +++-- docs/kubernetes-setup.md | 4 +- .../base/resources/deployment.yaml | 45 ------------------- .../grafana-agent/cloud/kustomization.yaml | 10 ----- .../grafana-agent/local/kustomization.yaml | 10 ----- .../base/kustomization.yaml | 0 .../base/resources/deployment.yaml | 42 +++++++++++++++++ .../base/resources/rbac.yaml | 6 +-- .../base/resources/service.yaml | 6 +-- .../cloud/config/grafana-alloy.river} | 21 ++++----- .../grafana-alloy/cloud/kustomization.yaml | 10 +++++ .../local/config/grafana-alloy.river} | 0 .../grafana-alloy/local/kustomization.yaml | 10 +++++ kubernetes/kustomization.yaml | 14 +++--- 19 files changed, 117 insertions(+), 120 deletions(-) rename contrib/{agent-cloud.river => alloy-cloud.river} (73%) rename contrib/{agent-local.river => alloy-local.river} (100%) delete mode 100644 kubernetes/grafana-agent/base/resources/deployment.yaml delete mode 100644 kubernetes/grafana-agent/cloud/kustomization.yaml delete mode 100644 kubernetes/grafana-agent/local/kustomization.yaml rename kubernetes/{grafana-agent => grafana-alloy}/base/kustomization.yaml (100%) create mode 100644 kubernetes/grafana-alloy/base/resources/deployment.yaml rename kubernetes/{grafana-agent => grafana-alloy}/base/resources/rbac.yaml (78%) rename kubernetes/{grafana-agent => grafana-alloy}/base/resources/service.yaml (67%) rename kubernetes/{grafana-agent/cloud/config/grafana-agent.river => grafana-alloy/cloud/config/grafana-alloy.river} (74%) create mode 100644 kubernetes/grafana-alloy/cloud/kustomization.yaml rename kubernetes/{grafana-agent/local/config/grafana-agent.river => grafana-alloy/local/config/grafana-alloy.river} (100%) create mode 100644 kubernetes/grafana-alloy/local/kustomization.yaml diff --git a/.env.local b/.env.local index 342451c9..ab287f3c 100644 --- a/.env.local +++ b/.env.local @@ -4,7 +4,7 @@ PUBLIC_BACKEND_WS_ENDPOINT=ws://localhost:3333 # docker-compose-cloud.yaml env variables QUICKPIZZA_CONF_FARO_URL=GRAFANA_CLOUD_FARO_URL -# https://github.com/grafana/agent-modules/tree/main/modules/grafana-cloud/autoconfigure +# https://github.com/grafana/alloy-modules/tree/main/modules/cloud/grafana/cloud # Name of your stack as shown in the account console GRAFANA_CLOUD_STACK=GRAFANA_CLOUD_STACK_NAME diff --git a/README.md b/README.md index b3199c0d..b2205b7a 100644 --- a/README.md +++ b/README.md @@ -115,9 +115,9 @@ export QUICKPIZZA_LOG_LEVEL=debug ## Local Setup -The [docker-compose-local.yaml](./docker-compose-local.yaml) file is set up to run and orchestrate the QuickPizza, Grafana, Tempo, Loki, Prometheus, Pyroscope, and Grafana Agent containers. +The [docker-compose-local.yaml](./docker-compose-local.yaml) file is set up to run and orchestrate the QuickPizza, Grafana, Tempo, Loki, Prometheus, Pyroscope, and Grafana Alloy containers. -The Grafana Agent collects traces, metrics, logs and profiling data from the QuickPizza app, forwarding them to the Tempo, Prometheus and Loki. Finally, you can visualize and correlate data stored in these containers with the locally running Grafana instance. +Grafana Alloy collects traces, metrics, logs and profiling data from the QuickPizza app, forwarding them to the Tempo, Prometheus and Loki. Finally, you can visualize and correlate data stored in these containers with the locally running Grafana instance. To start the local environment, use the following command: @@ -129,7 +129,7 @@ Like before, QuickPizza is available at [localhost:3333](http://localhost:3333). Then, you can visit the Grafana instance running at [localhost:3000](http://localhost:3000) to access QuickPizza data. -Please refer to [agent-local.river](./contrib/agent-local.river) and [docker-compose-local.yaml](./docker-compose-local.yaml) to find the labels applied to the telemetry data. +Please refer to [alloy-local.river](./contrib/alloy-local.river) and [docker-compose-local.yaml](./docker-compose-local.yaml) to find the labels applied to the telemetry data. ### Correlate Pyroscope Data with k6 Tests @@ -163,9 +163,9 @@ For detailed instructions about the different options of the k6 Prometheus outpu ## Grafana Cloud -The [docker-compose-cloud.yaml](./docker-compose-cloud.yaml) file is set up to run the QuickPizza and Grafana Agent containers. +The [docker-compose-cloud.yaml](./docker-compose-cloud.yaml) file is set up to run the QuickPizza and Grafana Alloy containers. -In this setup, the Grafana Agent collects observability data from the QuickPizza app and forwards it to [Grafana Cloud](https://grafana.com/products/cloud/). +In this setup, Grafana Alloy collects observability data from the QuickPizza app and forwards it to [Grafana Cloud](https://grafana.com/products/cloud/). You will need the following settings: @@ -196,7 +196,7 @@ docker compose -f docker-compose-cloud.yaml up -d QuickPizza is available at [localhost:3333](http://localhost:3333). Click the `Pizza, Please!` button and discover some awesome pizzas! -Now, you can log in to [Grafana Cloud](https://grafana.com/products/cloud/) and explore QuickPizza's telemetry data on the Prometheus, Tempo, Loki, and Pyroscope instances of your Grafana Cloud Stack. Refer to [agent-cloud.river](./contrib/agent-cloud.river) and [docker-compose-cloud.yaml](./docker-compose-cloud.yaml) to find the labels applied to the telemetry data. +Now, you can log in to [Grafana Cloud](https://grafana.com/products/cloud/) and explore QuickPizza's telemetry data on the Prometheus, Tempo, Loki, and Pyroscope instances of your Grafana Cloud Stack. Refer to [alloy-cloud.river](./contrib/alloy-cloud.river) and [docker-compose-cloud.yaml](./docker-compose-cloud.yaml) to find the labels applied to the telemetry data. ### Enable Profiling (Send profiles to Grafana Cloud Profiles / Pyroscope) @@ -242,7 +242,7 @@ For detailed instructions, refer to the [k6 output guide for Grafana Cloud Prome ## Deploy QuickPizza Docker image -The [Dockerfile](./Dockerfile) contains the setup for running QuickPizza without collecting data with the Grafana agent. +The [Dockerfile](./Dockerfile) contains the setup for running QuickPizza without collecting data with Grafana Alloy. You can use the Dockerfile or build a Docker image to deploy the QuickPizza app on any cloud provider that supports Docker deployments. For simplicity, here are the `Fly.io` instructions: diff --git a/contrib/agent-cloud.river b/contrib/alloy-cloud.river similarity index 73% rename from contrib/agent-cloud.river rename to contrib/alloy-cloud.river index d22dfade..359b6e79 100644 --- a/contrib/agent-cloud.river +++ b/contrib/alloy-cloud.river @@ -18,7 +18,7 @@ otelcol.processor.batch "default" { metrics = [] logs = [] traces = [ - module.git.grafana_cloud.exports.traces_receiver, + grafana_cloud.stack.receivers.traces, ] } } @@ -26,7 +26,7 @@ otelcol.processor.batch "default" { // Scrape Metrics prometheus.scrape "default" { forward_to = [ - module.git.grafana_cloud.exports.metrics_receiver, + grafana_cloud.stack.receivers.metrics, ] targets = [ { @@ -64,16 +64,17 @@ discovery.relabel "quickpizza" { loki.source.docker "default" { host = "unix:///var/run/docker.sock" targets = discovery.relabel.quickpizza.output - forward_to = [module.git.grafana_cloud.exports.logs_receiver] + forward_to = [grafana_cloud.stack.receivers.logs] } -module.git "grafana_cloud" { - repository = "https://github.com/grafana/agent-modules.git" - path = "modules/grafana-cloud/autoconfigure/module.river" +import.git "grafana_cloud" { + repository = "https://github.com/grafana/alloy-modules.git" revision = "main" + path = "modules/cloud/grafana/cloud/module.alloy" pull_frequency = "0s" - arguments { - stack_name = env("GRAFANA_CLOUD_STACK") - token = env("GRAFANA_CLOUD_TOKEN") - } } + +grafana_cloud.stack "receivers" { + stack_name = env("GRAFANA_CLOUD_STACK") + token = env("GRAFANA_CLOUD_TOKEN") +} \ No newline at end of file diff --git a/contrib/agent-local.river b/contrib/alloy-local.river similarity index 100% rename from contrib/agent-local.river rename to contrib/alloy-local.river diff --git a/docker-compose-cloud.yaml b/docker-compose-cloud.yaml index a548b6c6..4bc4296b 100644 --- a/docker-compose-cloud.yaml +++ b/docker-compose-cloud.yaml @@ -8,23 +8,22 @@ services: ports: - "3333:3333" environment: - QUICKPIZZA_OTLP_ENDPOINT: http://agent:4318 + QUICKPIZZA_OTLP_ENDPOINT: http://alloy:4318 QUICKPIZZA_TRUST_CLIENT_TRACEID: 1 # must be set with an .env file QUICKPIZZA_CONF_FARO_URL: "${QUICKPIZZA_CONF_FARO_URL}" QUICKPIZZA_PYROSCOPE_ENDPOINT: "${QUICKPIZZA_CONF_PYROSCOPE_ENDPOINT}" - agent: - image: grafana/agent:latest + alloy: + image: grafana/alloy:latest volumes: - - "./contrib/agent-cloud.river:/grafana-agent.river:Z" + - "./contrib/alloy-cloud.river:/grafana-alloy.river:Z" - "${DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock" command: - ["run", "/grafana-agent.river", "--server.http.listen-addr=0.0.0.0:12345"] + ["run", "/grafana-alloy.river", "--server.http.listen-addr=0.0.0.0:12345"] ports: - "12345:12345" environment: - AGENT_MODE: flow QUICKPIZZA_HOST: quickpizza:3333 # must be set with an .env file GRAFANA_CLOUD_TOKEN: "${GRAFANA_CLOUD_TOKEN}" diff --git a/docker-compose-local.yaml b/docker-compose-local.yaml index dad6bb9b..4018f9d9 100644 --- a/docker-compose-local.yaml +++ b/docker-compose-local.yaml @@ -8,7 +8,7 @@ services: ports: - "3333:3333" environment: - QUICKPIZZA_OTLP_ENDPOINT: http://agent:4318 + QUICKPIZZA_OTLP_ENDPOINT: http://alloy:4318 QUICKPIZZA_TRUST_CLIENT_TRACEID: 1 QUICKPIZZA_PYROSCOPE_ENDPOINT: http://pyroscope:4040 @@ -55,17 +55,16 @@ services: volumes: - ./grafana:/etc/grafana/provisioning/ - agent: - image: grafana/agent:latest + alloy: + image: grafana/alloy:latest volumes: - - "./contrib/agent-local.river:/grafana-agent.river:Z" + - "./contrib/alloy-local.river:/grafana-alloy.river:Z" - "${DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock" command: - ["run", "/grafana-agent.river", "--server.http.listen-addr=0.0.0.0:12345"] + ["run", "/grafana-alloy.river", "--server.http.listen-addr=0.0.0.0:12345"] ports: - "12345:12345" environment: - AGENT_MODE: flow QUICKPIZZA_HOST: quickpizza:3333 METRICS_ENDPOINT: http://prometheus:9090/api/v1/write TRACES_ENDPOINT: http://tempo:4317 diff --git a/docs/kubernetes-setup.md b/docs/kubernetes-setup.md index 89505446..dd0316aa 100644 --- a/docs/kubernetes-setup.md +++ b/docs/kubernetes-setup.md @@ -82,7 +82,7 @@ echo $BASE_URL ### Enable telemetry in Kubernetes -To collect telemetry information, enable the `grafana-agent/cloud` (or `grafana-agent/local`) resource in `kubernetes/kustomization.yaml` and set the required configuration options. +To collect telemetry information, enable the `grafana-alloy/cloud` (or `grafana-alloy/local`) resource in `kubernetes/kustomization.yaml` and set the required configuration options. After making the changes `kubernetes/kustomization.yaml`, you may need to restart the QuickPizza pods for them to pick up the new configuration: @@ -92,7 +92,7 @@ kubectl delete pods -l app.k8s.io/name=QuickPizza ![Screenshot of a trace visualized in Grafana Tempo](https://github.com/grafana/QuickPizza/assets/969721/4088f92b-c98c-4631-9681-c2ce8a49d721) -To ingest logs from Kubernetes, take a look at the [Grafana Cloud Kubernetes Integration](https://grafana.com/solutions/kubernetes) or use the [`loki.source.kubernetes`](https://grafana.com/docs/agent/latest/flow/reference/components/loki.source.kubernetes/)/[`loki.source.file`](https://grafana.com/docs/agent/latest/flow/reference/components/local.file_match/#send-kubernetes-pod-logs-to-loki) agent components. +To ingest logs from Kubernetes, take a look at the [Grafana Cloud Kubernetes Integration](https://grafana.com/solutions/kubernetes) or use the [`loki.source.kubernetes`](https://grafana.com/docs/alloy/latest/reference/components/loki/loki.source.kubernetes/)/[`loki.source.file`](https://grafana.com/docs/alloy/latest/reference/components/loki/loki.source.file/#file-globbing) components. ### Running xk6-disruptor tests diff --git a/kubernetes/grafana-agent/base/resources/deployment.yaml b/kubernetes/grafana-agent/base/resources/deployment.yaml deleted file mode 100644 index 22801670..00000000 --- a/kubernetes/grafana-agent/base/resources/deployment.yaml +++ /dev/null @@ -1,45 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: grafana-agent - labels: - app.k8s.io/name: grafana-agent -spec: - replicas: 1 - selector: - matchLabels: - app.k8s.io/name: grafana-agent - template: - metadata: - name: grafana-agent - labels: - app.k8s.io/name: grafana-agent - spec: - restartPolicy: Always - serviceAccountName: grafana-agent - containers: - - name: grafana-agent - image: grafana/agent:v0.35.0 - imagePullPolicy: IfNotPresent - args: - - run - - /etc/agent-config/grafana-agent.river - env: - - name: AGENT_MODE - value: flow - envFrom: - - secretRef: - name: grafana-agent-credentials - ports: - - name: grpc - containerPort: 4317 - - name: http - containerPort: 4318 - volumeMounts: - - mountPath: /etc/agent-config/grafana-agent.river - name: agent-config - subPath: grafana-agent.river - volumes: - - name: agent-config - configMap: - name: agent-config diff --git a/kubernetes/grafana-agent/cloud/kustomization.yaml b/kubernetes/grafana-agent/cloud/kustomization.yaml deleted file mode 100644 index 7dc52072..00000000 --- a/kubernetes/grafana-agent/cloud/kustomization.yaml +++ /dev/null @@ -1,10 +0,0 @@ -resources: - - ../base/ - -configMapGenerator: - - name: agent-config - files: - - ./config/grafana-agent.river - - name: tracing-env - literals: - - QUICKPIZZA_OTLP_ENDPOINT=http://grafana-agent:4318 diff --git a/kubernetes/grafana-agent/local/kustomization.yaml b/kubernetes/grafana-agent/local/kustomization.yaml deleted file mode 100644 index 7dc52072..00000000 --- a/kubernetes/grafana-agent/local/kustomization.yaml +++ /dev/null @@ -1,10 +0,0 @@ -resources: - - ../base/ - -configMapGenerator: - - name: agent-config - files: - - ./config/grafana-agent.river - - name: tracing-env - literals: - - QUICKPIZZA_OTLP_ENDPOINT=http://grafana-agent:4318 diff --git a/kubernetes/grafana-agent/base/kustomization.yaml b/kubernetes/grafana-alloy/base/kustomization.yaml similarity index 100% rename from kubernetes/grafana-agent/base/kustomization.yaml rename to kubernetes/grafana-alloy/base/kustomization.yaml diff --git a/kubernetes/grafana-alloy/base/resources/deployment.yaml b/kubernetes/grafana-alloy/base/resources/deployment.yaml new file mode 100644 index 00000000..ca2aafee --- /dev/null +++ b/kubernetes/grafana-alloy/base/resources/deployment.yaml @@ -0,0 +1,42 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: grafana-alloy + labels: + app.k8s.io/name: grafana-alloy +spec: + replicas: 1 + selector: + matchLabels: + app.k8s.io/name: grafana-alloy + template: + metadata: + name: grafana-alloy + labels: + app.k8s.io/name: grafana-alloy + spec: + restartPolicy: Always + serviceAccountName: grafana-alloy + containers: + - name: grafana-alloy + image: grafana/alloy:v1.9.1 + imagePullPolicy: IfNotPresent + args: + - run + - /etc/alloy-config/grafana-alloy.river + envFrom: + - secretRef: + name: grafana-alloy-credentials + ports: + - name: grpc + containerPort: 4317 + - name: http + containerPort: 4318 + volumeMounts: + - mountPath: /etc/alloy-config/grafana-alloy.river + name: alloy-config + subPath: grafana-alloy.river + volumes: + - name: alloy-config + configMap: + name: alloy-config diff --git a/kubernetes/grafana-agent/base/resources/rbac.yaml b/kubernetes/grafana-alloy/base/resources/rbac.yaml similarity index 78% rename from kubernetes/grafana-agent/base/resources/rbac.yaml rename to kubernetes/grafana-alloy/base/resources/rbac.yaml index bee1dc36..7bc8489e 100644 --- a/kubernetes/grafana-agent/base/resources/rbac.yaml +++ b/kubernetes/grafana-alloy/base/resources/rbac.yaml @@ -2,16 +2,16 @@ apiVersion: v1 kind: ServiceAccount metadata: - name: grafana-agent + name: grafana-alloy --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: - name: grafana-agent + name: grafana-alloy roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: view subjects: - kind: ServiceAccount - name: grafana-agent + name: grafana-alloy diff --git a/kubernetes/grafana-agent/base/resources/service.yaml b/kubernetes/grafana-alloy/base/resources/service.yaml similarity index 67% rename from kubernetes/grafana-agent/base/resources/service.yaml rename to kubernetes/grafana-alloy/base/resources/service.yaml index 061978b6..9fb79985 100644 --- a/kubernetes/grafana-agent/base/resources/service.yaml +++ b/kubernetes/grafana-alloy/base/resources/service.yaml @@ -1,12 +1,12 @@ apiVersion: v1 kind: Service metadata: - name: grafana-agent + name: grafana-alloy labels: - app.k8s.io/name: grafana-agent + app.k8s.io/name: grafana-alloy spec: selector: - app.k8s.io/name: grafana-agent + app.k8s.io/name: grafana-alloy ports: - port: 4317 name: grpc diff --git a/kubernetes/grafana-agent/cloud/config/grafana-agent.river b/kubernetes/grafana-alloy/cloud/config/grafana-alloy.river similarity index 74% rename from kubernetes/grafana-agent/cloud/config/grafana-agent.river rename to kubernetes/grafana-alloy/cloud/config/grafana-alloy.river index 7b58d4e7..beac37b9 100644 --- a/kubernetes/grafana-agent/cloud/config/grafana-agent.river +++ b/kubernetes/grafana-alloy/cloud/config/grafana-alloy.river @@ -18,7 +18,7 @@ otelcol.processor.batch "default" { metrics = [] logs = [] traces = [ - module.git.grafana_cloud.exports.traces_receiver, + grafana_cloud.stack.receivers.traces, ] } } @@ -36,7 +36,7 @@ discovery.kubernetes "application_pods" { } prometheus.scrape "default" { forward_to = [ - module.git.grafana_cloud.exports.metrics_receiver, + grafana_cloud.stack.receivers.metrics, ] targets = discovery.relabel.relabel_targets.output } @@ -65,18 +65,19 @@ discovery.relabel "relabel_targets" { pyroscope.scrape "scrape_profiles" { forward_to = [ - module.git.grafana_cloud.exports.profiles_receiver, + grafana_cloud.stack.receivers.profiles, ] targets = discovery.relabel.relabel_targets.output } -module.git "grafana_cloud" { - repository = "https://github.com/grafana/agent-modules.git" - path = "modules/grafana-cloud/autoconfigure/module.river" +import.git "grafana_cloud" { + repository = "https://github.com/grafana/alloy-modules.git" revision = "main" + path = "modules/cloud/grafana/cloud/module.alloy" pull_frequency = "0s" - arguments { - stack_name = env("GRAFANA_CLOUD_STACK") - token = env("GRAFANA_CLOUD_TOKEN") - } } + +grafana_cloud.stack "receivers" { + stack_name = env("GRAFANA_CLOUD_STACK") + token = env("GRAFANA_CLOUD_TOKEN") +} \ No newline at end of file diff --git a/kubernetes/grafana-alloy/cloud/kustomization.yaml b/kubernetes/grafana-alloy/cloud/kustomization.yaml new file mode 100644 index 00000000..4def02fa --- /dev/null +++ b/kubernetes/grafana-alloy/cloud/kustomization.yaml @@ -0,0 +1,10 @@ +resources: + - ../base/ + +configMapGenerator: + - name: alloy-config + files: + - ./config/grafana-alloy.river + - name: tracing-env + literals: + - QUICKPIZZA_OTLP_ENDPOINT=http://grafana-alloy:4318 diff --git a/kubernetes/grafana-agent/local/config/grafana-agent.river b/kubernetes/grafana-alloy/local/config/grafana-alloy.river similarity index 100% rename from kubernetes/grafana-agent/local/config/grafana-agent.river rename to kubernetes/grafana-alloy/local/config/grafana-alloy.river diff --git a/kubernetes/grafana-alloy/local/kustomization.yaml b/kubernetes/grafana-alloy/local/kustomization.yaml new file mode 100644 index 00000000..4def02fa --- /dev/null +++ b/kubernetes/grafana-alloy/local/kustomization.yaml @@ -0,0 +1,10 @@ +resources: + - ../base/ + +configMapGenerator: + - name: alloy-config + files: + - ./config/grafana-alloy.river + - name: tracing-env + literals: + - QUICKPIZZA_OTLP_ENDPOINT=http://grafana-alloy:4318 diff --git a/kubernetes/kustomization.yaml b/kubernetes/kustomization.yaml index 72df0b13..72b72f07 100644 --- a/kubernetes/kustomization.yaml +++ b/kubernetes/kustomization.yaml @@ -4,21 +4,21 @@ resources: - resources/deployments.yaml - resources/services.yaml - # Uncomment one of the lines below if you want to enable telemetry. This will deploy the grafana agent and configure + # Uncomment one of the lines below if you want to enable telemetry. This will deploy Grafana Alloy and configure # QuickPizza to push traces to it. - # - grafana-agent/cloud - # - grafana-agent/local + # - grafana-alloy/cloud + # - grafana-alloy/local # For telemetry functionality, change the following lines to match your configuration. secretGenerator: - - name: grafana-agent-credentials + - name: grafana-alloy-credentials literals: - # Required for grafana-agent/cloud to send telmetry to grafana cloud + # Required for grafana-alloy/cloud to send telmetry to grafana cloud - GRAFANA_CLOUD_STACK=your-cloud-stack # An Access Policy Token that includes the following scopes for the selected Grafana Cloud Stack: `stacks:read`, `metrics:write`, `logs:write`, `traces:write`, and `profiles:write`. - # IMPORTANT: make sure the `stacks:read` scope is present. Otherwise the agent can't deduce the url of your backends automatically + # IMPORTANT: make sure the `stacks:read` scope is present. Otherwise Grafana Alloy can't deduce the url of your backends automatically - GRAFANA_CLOUD_TOKEN=your-cloud-token - # Required for grafana-agent/local to send to your local stack + # Required for grafana-alloy/local to send to your local stack - TRACES_ENDPOINT=your-tempo-instance:443 - METRICS_ENDPOINT=http://your-prometheus-remote-write-endpoint:9090/api/v1/write - PROFILES_ENDPOINT=your-pyroscope-instance From f1b9fda3a20327250101ecc2e473c7a0bee8491f Mon Sep 17 00:00:00 2001 From: TomM Date: Mon, 16 Jun 2025 10:26:49 -0600 Subject: [PATCH 2/2] Pin alloy --- docker-compose-cloud.yaml | 2 +- docker-compose-local.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docker-compose-cloud.yaml b/docker-compose-cloud.yaml index 4bc4296b..f8624bc9 100644 --- a/docker-compose-cloud.yaml +++ b/docker-compose-cloud.yaml @@ -15,7 +15,7 @@ services: QUICKPIZZA_PYROSCOPE_ENDPOINT: "${QUICKPIZZA_CONF_PYROSCOPE_ENDPOINT}" alloy: - image: grafana/alloy:latest + image: grafana/alloy:v1.9.1 volumes: - "./contrib/alloy-cloud.river:/grafana-alloy.river:Z" - "${DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock" diff --git a/docker-compose-local.yaml b/docker-compose-local.yaml index 4018f9d9..bbd9cf43 100644 --- a/docker-compose-local.yaml +++ b/docker-compose-local.yaml @@ -56,7 +56,7 @@ services: - ./grafana:/etc/grafana/provisioning/ alloy: - image: grafana/alloy:latest + image: grafana/alloy:v1.9.1 volumes: - "./contrib/alloy-local.river:/grafana-alloy.river:Z" - "${DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock"