The Gloo OpenTelemetry pipeline is decoupled from the Gloo agents and management server core functionality. Gloo telemetry collector agents are designed to collect metrics from various sources, and enrich the data so that you can use them in an observability platform of your choice.
The following image shows how metrics are collected in your Gloo environment when using the Gloo telemetry pipeline.
- A Gloo telemetry collector agent is deployed as a daemonset in the cluster. The collector agent scrapes metrics from workloads in your cluster, such as the Gloo agents, the Istio control plane
istiod, or the workload's sidecar proxies. The agent then enriches and converts the metrics. For example, the ID of the source and destination workload is added to the metrics so that you can filter the metrics for the workload that you are interested in.
- The collector agent sends the scraped metrics to the Gloo telemetry gateway via gRPC push procedures.
- The built-in Prometheus server scrapes the metrics from the Gloo telemetry gateway. The metrics are then provided to other observability tools, such as the Gloo UI or the Gloo Platform operations dashboard. You can use these tools to monitor the health of the Gloo control and data plane, and to receive alerts if an issue is detected. For more information, see the Observability tools.
Overview of scraped metrics
By default, the Gloo telemetry collector agents are configured to scrape only the metrics that are required to visualize traffic in the Gloo UI Graph and to determine the health of Gloo Platform components. You can change the default configuration and scrape additional metrics, such as metrics for the Gloo management server or the Cilium CNI. To customize this setup entirely, you can add your own receivers, processors, and exporters as described in the OpenTelemetry documentation.
For an overview of the metrics that are collected by default, see View default metrics. You can also check the current configuration and find the metrics that are being scraped by choosing one of the following options.
- Option 1: Check the Gloo telemetry collector agent configmap.
kubectl get configmap gloo-telemetry-collector-config -n gloo-mesh -o yaml
- Option 2: Open the
metricsendpoint of the Gloo telemetry gateway.
kubectl port-forward deploy/gloo-telemetry-gateway -n gloo-mesh 9091
Follow the steps in Set up the pipeline to set up the Gloo telemetry pipeline and explore ways to customize or troubleshoot the pipeline.