Edge Delta Metrics Explorer

Explore metrics in the Edge Delta web application.

Overview

The Metrics - Explorer page displays the outputs and values of all metrics ingested and created by Edge Delta, including Kubernetes scraped metrics, metric processing nodes, metric input nodes, and derived metrics.

Metrics have the following prerequisites:

  1. To ingest Kube State Metrics, KSM must be deployed in the same cluster as the Edge Delta agent.
  2. To ingest node-exporter metrics, node-exporter must be deployed in the same cluster as the Edge Delta agent.
  3. All metric processing nodes, such as logs to metrics nodes, must be connected to the Metrics Output node.

The Edge Delta agent uses eBPF to collect network metrics. Therefore, the following Kubernetes environment configuration is required for Kubernetes network metrics and eBPF to work:

  • Linux kernel version 5.8 or later.
  • Linux kernel built with the CONFIG_DEBUG_INFO_BTF=y and CONFIG_DEBUG_INFO_BTF_MODULES=y flags.

To check for the flag:

docker run -it --rm --privileged --pid=host ubuntu nsenter -t 1 -m -u -n -i sh -c 'cat /proc/config.gz | gunzip | grep CONFIG_DEBUG_INFO_BTF'

The output should show CONFIG_DEBUG_INFO_BTF=y and CONFIG_DEBUG_INFO_BTF_MODULES=y.

In the case of minikube, the agent can run on minikube with the Docker driver. Docker must be at least v26.0.0 (Docker Desktop v4.29.0) and it is started as follows:

minikube start --driver docker

Filter Pane

You can filter data using the Filters pane:

  • Agent Tag
  • Source Type
  • Kubernetes Resource Types

Metrics

Choose a source of Metrics (such as an Agent Tag) and select a specific metric for viewing. Then choose the aggregation type, the Metrics time window, and a grouping.

Note: The types of metrics available in the Metrics window will depend on what Input sources you’ve configured for Metrics ingestion. For example, if you have deployed a Kubernetes Metrics Input Node in a particular Agent Tag configuration then you should see the Kubernetes metrics available in the Metric Name dropdown box, such as ed_k8s_metric_container_network_receive_packets. For a complete list of Kubernetes metrics ingested by the Edge Delta agent, please see the kubernetes metrics input node.

Add Facet

If the metric you select has multiple dimensions you can create a custom facet to group by. This enables you to view all dimensions of that metric at once. For example, suppose you have a log to metric node that captures the average latency per HTTP method and generates a metric like the following:

{
  "_stat_type": "avg"
  "_type": "metric"
  "attributes": {
    "method": "GET"
  }
  "gauge": {
    "value": 1051
  }
  "kind": "gauge"
  "name": "latency_per_method_latency.avg"
  "resource": {...}
  "start_timestamp": 1714124367305
  "timestamp": 1714124427305
  "unit": "1"
}

The dimension method is captured as an attribute, and in this instance the average latency is for the GET method.

  1. Click the three dots on a facet group and select Create Facet.
  1. Specify the dimension name prefixed with an @ character, in this instance @method.
  1. Select Custom | method from the Group By list.

The metrics for all the method dimensions are now charted.

Query History

Click Query History to list previously run queries.

Inspector

Click Inspector to view various aspects of the metrics queries such as the JSON response and the raw data.

Create a Custom Metric Alert

You can create a custom metric alert based on the selected filters. Click Add Alert. Metric Alerts will be available in the Monitors tab in the Edge Delta UI and appear as type metric-alert.