Network metrics
Grafana Beyla can be configured to provide network metrics between different endpoints. For example, between physical nodes, containers, Kubernetes pods, services, etc.
Get started
To get started using Beyla networking metrics, consult the quickstart setup documentation, and for advanced configuration, consult the configuration documentation.
Metric attributes
Beyla provides two families of network metrics:
- Network flow bytes as the number of bytes observed between two network endpoints.
beyla.network.flow.bytes
, if it is exported via OpenTelemetry.beyla_network_flow_bytes_total
, if it is exported by a Prometheus endpoint.- To enable it, add the
network
option to the BEYLA_OTEL_METRICS_FEATURES or BEYLA_PROMETHEUS_FEATURES configuration option.
- Inter-zone bytes as the number of bytes observed between two network endpoints in different Cloud Availability Zones.
beyla.network.inter.zone.bytes
, if it is exported via OpenTelemetry.beyla_network_inter_zone_bytes_total
, if it is exported by a Prometheus endpoint.- More information about how to enable it in the Measuring traffic between Cloud availability zones documentation.
Network metric can have the attributes in the following table.
By default, only the following attributes are reported for network flow bytes: k8s.src.owner.name
, k8s.src.namespace
, k8s.dst.owner.name
, k8s.dst.namespace
, and k8s.cluster.name
.
For the inter-zone bytes metric, the default attributes are k8s.cluster.name
, src.zone
and dst.zone
.
How to specify reported attributes
If the metric with all the possible attributes is reported it might lead to a cardinality explosion, especially when including external traffic in the src.address
/dst.address
attributes.
You can specify which attributes are allowed in the Beyla configuration, to aggregate the metric by them.
For example:
network:
enable: true
attributes:
kubernetes:
enable: true
select:
beyla_network_flow_bytes:
include:
- k8s.src.owner.name
- k8s.src.namespace
- k8s.dst.owner.name
- k8s.dst.namespace
- k8s.cluster.name
In this example, the bytes metric is the aggregated by the source and destination owners. This is, all the pods from a given Deployment/StatefulSet/ReplicaSet/DaemonSet.
For more information about the attributes.select
section, check the Configuration options.