Skip to content

Clarify/adjust MET-001 for expected high-cardinality “inventory” metrics (e.g., kube_pod_info) #50

Description

@CharlieTLe

Problem

Rule MET-001 currently states:

Attribute keys on metrics, aggregated by metric name, MUST have less than 10,000 unique values within a 1-hour window.

This appears to flag certain Kubernetes/inventory-style metrics (e.g., kube_pod_info) where a label value is inherently high-cardinality (pod name) and large clusters can exceed 10,000 unique values/hour under normal conditions.

Example

In large clusters, kube_pod_info (or similar “*_info” / inventory metrics) may produce one series per pod, and the pod label can easily exceed the MET-001 threshold within 1 hour, even though this is expected behavior for that metric.

Question / Proposal

Should MET-001 be clarified or adjusted to avoid penalizing expected high-cardinality inventory/entity metrics?

Possible approaches:

  1. Scope MET-001 to application/service metrics (exclude infra exporter / inventory metrics).
  2. Add explicit exceptions for inventory-style metrics (e.g., *_info) or other clearly-defined categories.
  3. Refine the rule to focus on preventing unbounded identifiers on high-volume metrics, while allowing “entity enumeration” metrics.

Desired outcome

  • Keep the rule objective and implementable.
  • Avoid ambiguous exemptions.
  • Add examples of metrics/labels that should/shouldn’t trigger.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions