Overview
This document provides a detailed walkthrough on how to send Google Cloud Load Balancer metrics to SigNoz.
Prerequisites
- You should have a Google Cloud account with administrative privileges or Cloud Load Balancer Admin privileges both should suffice.
- Cloud Load Balancer
- Access to a project in Google Cloud Platform (GCP).
- The Google Cloud Load Balancer APIs must be enabled. You can follow this guide to learn how to enable an API in Google Cloud.
Setup
Deploy OpenTelemetry to scrape the metrics from Google Cloud Monitoring
Step 1: Install and configure OpenTelemetry for scraping the metrics from Google Cloud Monitoring. Follow OpenTelemetry Binary Usage in Virtual Machine guide for detailed instructions.
Note that googlecloudmonitoring receiver is supported only from version 0.112.0 and above of opentelemetry-collector. So, ensure you download and use the appropriate release.
Step 2: Create config.yaml.
Under the googlecloudmonitoring receiver, you need to specify the metrics that you want to capture in the metrics_list. You can include all the metrics that you would like to capture for Cloud Load Balancer, see the available metrics for Cloud Load Balancer.
Here is the config.yaml file for capturing Cloud Load Balancer metrics:
receivers:
googlecloudmonitoring:
collection_interval: 5m # Can be specified in seconds (s), minutes (m), or hours (h)
project_id: gcp-project-id
metrics_list:
- metric_name: "loadbalancing.googleapis.com/https/backend_latencies"
- metric_name: "loadbalancing.googleapis.com/https/backend_request_count"
- metric_name: "loadbalancing.googleapis.com/https/request_bytes_count"
- metric_name: "loadbalancing.googleapis.com/https/request_count"
- metric_name: "loadbalancing.googleapis.com/https/response_bytes_count"
- metric_name: "loadbalancing.googleapis.com/https/total_latencies"
processors:
resource/env:
attributes:
- key: deployment.environment
value: prod
action: upsert
batch: {}
exporters:
otlp:
endpoint: "ingest.{region}.signoz.cloud:443"
tls:
insecure: false
headers:
"signoz-ingestion-key": "<SIGNOZ_INGESTION_KEY>"
service:
pipelines:
metrics:
receivers: [googlecloudmonitoring]
processors: [resource/env,batch]
exporters: [otlp]
Depending on the choice of your region for SigNoz cloud, the otlp endpoint will vary according to this table.
| Region | Endpoint |
|---|---|
| US | ingest.us.signoz.cloud:443 |
| IN | ingest.in.signoz.cloud:443 |
| EU | ingest.eu.signoz.cloud:443 |
After successful configuration, start the OTel Collector using the following command:
./otelcol-contrib --config ./config.yaml &> otelcol-output.log & echo "$!" > otel-pid
Step 3: If the configurations are configured correctly, you can see the output logs from OpenTelemtry as follows:

OpenTelemetry logs
Send and Visualize the metrics obtained by OpenTelemetry in SigNoz
Step 1: Go to the SigNoz Cloud URL and head over to the dashboard.
Step 2: If not already created, create a new dashboard. You can create the dashboard and multiple panel under it by following the instructions here.
Step 3: While creating the panel, select metric for Cloud Load Balancer.
All metrics starting with loadbalancing_googleapis_com_ have been collected from Cloud Load Balancer.
For example loadbalancing_googleapis_com_https_total_latencies is one of the metrics that was collected.
Here is the sample dashboard for Cloud Load Balancer:

GCP Cloud Load Balancer dashboard
Troubleshooting
If you run into any problems while setting up monitoring for your Cloud Load Balancer metrics with SigNoz, consider these troubleshooting steps:
- Verify Configuration: Double-check your
config.yamlfile to ensure all settings, including the ingestion key and endpoint, are correct. - Review Logs: Look at the logs of your Cloud Load Balancer and the OpenTelemetry Collector to identify any error messages or warnings that might provide insights into whatβs going wrong.
- Consult Documentation: Review the SigNoz and OpenTelemetry documentation for additional troubleshooting of the common issues.
Prerequisites
- A Google Cloud account with administrative privileges or Cloud Load Balancer Admin privileges.
- Cloud Load Balancer
- Access to a project in Google Cloud Platform (GCP).
- The Google Cloud Load Balancer APIs must be enabled. You can follow this guide to learn how to enable an API in Google Cloud.
Setup
Deploying a Self-Hosted SigNoz in a Docker container
Step 1: The deployment process of the Self-Hosted SigNoz can be found in official documentation.
Step 2: Ensure all the containers are running in a Healthy state.

Self-hosted SigNoz in Docker
The self-hosted SigNoz setup includes the OTel collector in the bundle. Docker will deploy the OTel collector beside SigNoz as a container. The same OTel collector can be used to receive any signals directly. Otherwise, if one more OTel Collector is required for a more granular collection, we can add an additional independent OTel collector, see Using additional centralized OTel collector tab.
Apart from using the native OTel collector present in the docker from the previous method, we can also deploy an additional independent OTel collector, which can act as an additional collector in this setup for more granular metrics collection.
Step 1: Install and configure OpenTelemetry to scrape the metrics from Google Cloud Monitoring. Add the following code block to the OpenTelemetry configuration file. Under exporters, we should have an exporter pointing to our SigNoz self-host setup. For example, in the snippet below, the endpoint-ip would be the VM address where the SigNoz self-host setup is present.
Note that googlecloudmonitoring receiver is supported only from version 0.112.0 and above of opentelemetry-collector. So, ensure you download and use the appropriate release.
exporters:
otlp:
endpoint: "<endpoint-ip>:4317"
tls:
insecure: true
Step 2: Create config.yaml.
Under the googlecloudmonitoring receiver, you need to specify the metrics that you want to capture in the metrics_list. You can include all the metrics that you would like to capture for Cloud Load Balancer, see the available metrics for Cloud Load Balancer.
Here is the config.yaml file for capturing Cloud Load Balancer metrics:
receivers:
googlecloudmonitoring:
collection_interval: 5m # Can be specified in seconds (s), minutes (m), or hours (h)
project_id: gcp-project-id
metrics_list:
- metric_name: "loadbalancing.googleapis.com/https/backend_latencies"
- metric_name: "loadbalancing.googleapis.com/https/backend_request_count"
- metric_name: "loadbalancing.googleapis.com/https/request_bytes_count"
- metric_name: "loadbalancing.googleapis.com/https/request_count"
- metric_name: "loadbalancing.googleapis.com/https/response_bytes_count"
- metric_name: "loadbalancing.googleapis.com/https/total_latencies"
processors:
resource/env:
attributes:
- key: deployment.environment
value: prod
action: upsert
batch: {}
exporters:
otlp:
endpoint: "<endpoint-ip>:4317"
tls:
insecure: true
service:
pipelines:
metrics:
receivers: [googlecloudmonitoring]
processors: [resource/env,batch]
exporters: [otlp]
Step 3: After successful configuration, start the OTel service.
./otelcol-contrib --config ./config.yaml &> otelcol-output.log & echo "$!" > otel-pid
Please make appropriate changes to the networking connections (adding network to security groups, opening ports, etc.) on your VMs as per your setup.
Visualize the metrics in Self-Hosted SigNoz
Step 1: Go to your Self-Hosted SigNoz UI and navigate to the Self-Hosted SigNoz dashboard. Click on the Dashboards section to view the metrics. Create a new dashboard (If not already present )
The default Self-Hosted SigNoz dashboard endpoint would be http://<Self-Hosted SigNoz-host-ip>:3301. However, the URL can be different based on how you have set up the infrastructure.
Step 2: If not already created, create a new dashboard. You can create the dashboard and multiple panel under it by following the instructions here.
Step 3: Select the metric for the Cloud Load Balancer
For example, loadbalancing_googleapis_com_https_total_latencies is one of the metrics that is collected.

Cloud Load Balancer dashboard
Troubleshooting
If you run into any problems while setting up monitoring for your Cloud Load Balancer metrics with SigNoz, consider these troubleshooting steps:
- Verify Configuration: Double-check your
config.yamlfile to ensure all settings, including endpoint, are correct. - Verify Docker container logs: Check if all the containers are running properly and do not unexpectedly crash.
- Review Logs: Look at the logs of both your Cloud Load balancer and the OpenTelemetry Collector to identify any error messages or warnings that might provide insights into whatβs going wrong.
- Consult Documentation: Review the SigNoz and OpenTelemetry documentation for any additional troubleshooting of the common issues.