Edge Delta Metrics Explorer
3 minute read
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:
- To ingest Kube State Metrics, KSM must be deployed in the same cluster as the Edge Delta agent.
- To ingest node-exporter metrics, node-exporter must be deployed in the same cluster as the Edge Delta agent.
- 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
andCONFIG_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
If you want to disable eBPF:
- Delete the Kubernetes Traffic Input node.
- Disable the tracer:
Helm
Rerun the Helm upgrade command with the --set tracerProps.enabled=false
flag.
Kubectl Update and re-apply the kubernetes manifest with the following parameter change:
ED_ENABLE_TRAFFIC_TRACER = "0"
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.
Filter Pane
You can filter data using the Filters pane:
- Agent Tag
- Source Type
- Kubernetes Resource Types
Group by
You can group the graph by any of the facets listed in the Filter Pane using the Group By option. For example, you may want to see a particular metric from all hosts on a single graph.
Add Facet
If the metric you select has multiple dimensions you can create a custom facet to group by. 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.
- Click the three dots on a facet group and select Create Facet.
- Specify the dimension name prefixed with an
@
character, in this instance@method
.
You can now select the facet in the Group By list, and you can filter by the facet in the Filters pane.
Create a Monitor
You can create a monitor alert based on the selected filters. Click Create Monitor. Metric Alerts will be available in the Monitors tab in the Edge Delta UI and appear as type metric-alert
.