diff --git a/.chloggen/fix_container_limits.yaml b/.chloggen/fix_container_limits.yaml new file mode 100644 index 0000000000..ec728bbbd0 --- /dev/null +++ b/.chloggen/fix_container_limits.yaml @@ -0,0 +1,22 @@ +# Use this changelog template to create an entry for release notes. +# +# If your change doesn't affect end users you should instead start +# your pull request title with [chore] or use the "Skip Changelog" label. + +# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' +change_type: breaking + +# The name of the area of concern in the attributes-registry, (e.g. http, cloud, db) +component: k8s + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: Change instrument type for .limit/.request container metrics from gauge to updowncounter + +# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists. +# The values here must be integers. +issues: [2354] + +# (Optional) One or more lines of additional information to render under the primary note. +# These lines will be padded with 2 spaces and then inserted directly into the document. +# Use pipe (|) for multiline entries. +subtext: diff --git a/docs/non-normative/k8s-migration.md b/docs/non-normative/k8s-migration.md index 1c34e6374d..c5783116a0 100644 --- a/docs/non-normative/k8s-migration.md +++ b/docs/non-normative/k8s-migration.md @@ -298,17 +298,17 @@ The changes in their metrics are the following: -| Old (Collector) ![changed](https://img.shields.io/badge/changed-orange?style=flat) | New | -|------------------------------------------------------------------------------------|-------------------------------------------| -| `k8s.container.cpu_limit` | `k8s.container.cpu.limit` | -| `k8s.container.cpu_request` | `k8s.container.cpu.request` | -| `k8s.container.memory_limit` | `k8s.container.memory.limit` | -| `k8s.container.memory_request` | `k8s.container.memory.request` | -| `k8s.container.storage_limit` | `k8s.container.storage.limit` | -| `k8s.container.storage_request` | `k8s.container.storage.request` | -| `k8s.container.ephemeralstorage_limit` | `k8s.container.ephemeral_storage.limit` | -| `k8s.container.ephemeralstorage_request` | `k8s.container.ephemeral_storage.request` | -| `k8s.container.restarts` (type: `gauge`) | `k8s.container.restart.count` (type: `updowncounter`) | -| `k8s.container.ready` (type: `gauge`) | `k8s.container.ready` (type: `updowncounter`) | +| Old (Collector) ![changed](https://img.shields.io/badge/changed-orange?style=flat) | New | +|------------------------------------------------------------------------------------|------------------------------------------------------------------| +| `k8s.container.cpu_limit` (type: `gauge`) | `k8s.container.cpu.limit` (type: `updowncounter`) | +| `k8s.container.cpu_request` (type: `gauge`) | `k8s.container.cpu.request` (type: `updowncounter`) | +| `k8s.container.memory_limit` (type: `gauge`) | `k8s.container.memory.limit` (type: `updowncounter`) | +| `k8s.container.memory_request` (type: `gauge`) | `k8s.container.memory.request` (type: `updowncounter`) | +| `k8s.container.storage_limit` (type: `gauge`) | `k8s.container.storage.limit` (type: `updowncounter`) | +| `k8s.container.storage_request` (type: `gauge`) | `k8s.container.storage.request` (type: `updowncounter`) | +| `k8s.container.ephemeralstorage_limit` (type: `gauge`) | `k8s.container.ephemeral_storage.limit` (type: `updowncounter`) | +| `k8s.container.ephemeralstorage_request` (type: `gauge`) | `k8s.container.ephemeral_storage.request` (type: `updowncounter`) | +| `k8s.container.restarts` (type: `gauge`) | `k8s.container.restart.count` (type: `updowncounter`) | +| `k8s.container.ready` (type: `gauge`) | `k8s.container.ready` (type: `updowncounter`) | diff --git a/docs/system/k8s-metrics.md b/docs/system/k8s-metrics.md index fcc4639aa2..feb1884910 100644 --- a/docs/system/k8s-metrics.md +++ b/docs/system/k8s-metrics.md @@ -1204,7 +1204,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.cpu.limit` | Gauge | `{cpu}` | Maximum CPU resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.cpu.limit` | UpDownCounter | `{cpu}` | Maximum CPU resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1226,7 +1226,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.cpu.request` | Gauge | `{cpu}` | CPU resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.cpu.request` | UpDownCounter | `{cpu}` | CPU resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1248,7 +1248,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.memory.limit` | Gauge | `By` | Maximum memory resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.memory.limit` | UpDownCounter | `By` | Maximum memory resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1270,7 +1270,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.memory.request` | Gauge | `By` | Memory resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.memory.request` | UpDownCounter | `By` | Memory resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1292,7 +1292,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.storage.limit` | Gauge | `By` | Maximum storage resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.storage.limit` | UpDownCounter | `By` | Maximum storage resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1314,7 +1314,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.storage.request` | Gauge | `By` | Storage resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.storage.request` | UpDownCounter | `By` | Storage resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1336,7 +1336,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.ephemeral_storage.limit` | Gauge | `By` | Maximum ephemeral storage resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.ephemeral_storage.limit` | UpDownCounter | `By` | Maximum ephemeral storage resource limit set for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. @@ -1358,7 +1358,7 @@ This metric is [recommended][MetricRecommended]. | Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations | | -------- | --------------- | ----------- | -------------- | --------- | ------ | -| `k8s.container.ephemeral_storage.request` | Gauge | `By` | Ephemeral storage resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | +| `k8s.container.ephemeral_storage.request` | UpDownCounter | `By` | Ephemeral storage resource requested for the container [1] | ![Development](https://img.shields.io/badge/-development-blue) | `k8s.container` | **[1]:** See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. diff --git a/model/k8s/metrics.yaml b/model/k8s/metrics.yaml index 3d126abc7e..5e411b9af4 100644 --- a/model/k8s/metrics.yaml +++ b/model/k8s/metrics.yaml @@ -508,7 +508,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "{cpu}" - id: metric.k8s.container.cpu.request type: metric @@ -519,7 +519,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "{cpu}" - id: metric.k8s.container.memory.limit type: metric @@ -530,7 +530,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.memory.request type: metric @@ -541,7 +541,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.storage.limit type: metric @@ -552,7 +552,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.storage.request type: metric @@ -563,7 +563,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.ephemeral_storage.limit type: metric @@ -574,7 +574,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.ephemeral_storage.request type: metric @@ -585,7 +585,7 @@ groups: - k8s.container note: | See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details. - instrument: gauge + instrument: updowncounter unit: "By" - id: metric.k8s.container.restart.count type: metric