node_network_receive_bytes_total.
A label is a key/value pairs that helps differentiate and give meaning to
metric names. In this example, the labels are hostname="host1" and mode="system".
Metric name
Use these guidelines to name your metrics:Metric names must follow Prometheus name and label requirements.
Metrics that do not meet these requirements can not be queried and are considered
invalid. Chronosphere rejects metrics that don’t meet these definitions.
- Select a metric name that describes a function of the system you’re monitoring
(for example,
node_memory_usage_bytes). Be as concise as possible. - Include a prefix for the metric name that’s relevant to the domain the metric belongs
to. For example, adding
httptohttp_request_duration_secondslets users know this metric belongs to the HTTP domain. - Use suffixes to describe the unit in plural form. For example, the
secondsinhttp_request_duration_seconds. - Metric names can contain letters, numbers, underscores, or colons, based on the
regular expression
[a-zA-Z_:][a-zA-Z0-9_:]*. - Reserve colons (
:) in the name for calculated or aggregated metrics, such as those produced by rollup rules. - Don’t use underscores at the beginning of a metric name. Leading underscores are reserved for internal use.
- Periods (
.) convert to underscores (_).
Label names and values
Labels are a set of comma-separated key/value pairs, contained in curly braces. Labels let you query and alert on these different fields. Use labels to differentiate and give meaning to metric names. For example,http_requests_total refers to the total number of HTTP requests, but isn’t fully
descriptive. Using labels, you can break down the number of requests by method,
status_code, and endpoint. Here are some best practices and limitations:
- Label keys
- Use label keys to add dimensions to your metric name. For example,
endpoint:/api/create_userormethod:POST). - Don’t add unbounded, high-cardinality labels, such as UUIDs or timestamps.
- Label keys can contain letters, numbers, underscores, or colons, based on the
regular expression
[a-zA-Z_:][a-zA-Z0-9_:]*. - Don’t use underscores at the beginning of a label key. Leading underscores are reserved for internal use.
- Use label keys to add dimensions to your metric name. For example,
- Label values
- Label values might contain any Unicode characters.
- A label with an empty label value is equivalent to a label that doesn’t exist.
- You can use PromQL to filter and aggregate based on these dimensions. Changing any label value, including adding or removing a label, creates a new time series.