Skip to content

Add Kubernetes Resource Monitoring documentation#54134

Open
amadeuszl wants to merge 5 commits into
dotnet:mainfrom
amadeuszl:alechniak/k8s-rm-docs-update
Open

Add Kubernetes Resource Monitoring documentation#54134
amadeuszl wants to merge 5 commits into
dotnet:mainfrom
amadeuszl:alechniak/k8s-rm-docs-update

Conversation

@amadeuszl
Copy link
Copy Markdown

@amadeuszl amadeuszl commented Jun 3, 2026

Copilot AI review requested due to automatic review settings June 3, 2026 10:10
@amadeuszl amadeuszl requested review from a team and tommcdon as code owners June 3, 2026 10:10
@dotnetrepoman dotnetrepoman Bot added this to the June 2026 milestone Jun 3, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds documentation and a runnable snippet that explains how to use Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes to calculate resource monitoring metrics based on Kubernetes Downward API-provided limits/requests.

Changes:

  • Added a new “Kubernetes resource monitoring” section to the existing resource monitoring article, including Downward API configuration guidance.
  • Added a new runnable snippet project and minimal host-based sample that registers Kubernetes resource monitoring.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 12 comments.

File Description
docs/core/diagnostics/diagnostic-resource-monitoring.md Adds a Kubernetes-focused resource monitoring section, including configuration guidance, metric list, and example output.
docs/core/diagnostics/snippets/resource-monitoring-kubernetes/Program.cs Adds a minimal host-based snippet showing AddKubernetesResourceMonitoring("MY_APP_").
docs/core/diagnostics/snippets/resource-monitoring-kubernetes/resource-monitoring-kubernetes.csproj Adds a new snippet project referencing the Kubernetes resource monitoring package and hosting/logging dependencies.

Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md Outdated
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment thread docs/core/diagnostics/diagnostic-resource-monitoring.md
Comment on lines +291 to +295
1. **Use the Kubernetes package in Kubernetes environments.** Always prefer `AddKubernetesResourceMonitoring()` over `AddResourceMonitoring()` when running in a Kubernetes cluster. It provides accurate resource utilization metrics by reading values directly from the pod specification through environment variables.

1. **Expose resource metadata through the Downward API.** Configure your deployment manifests to expose CPU and memory limits and requests as environment variables. This ensures the library has access to the exact values you specified in your pod spec.

1. **Test metric accuracy after cluster upgrades.** When upgrading your Kubernetes cluster or OCI runtime (runc, crun), verify that your resource utilization metrics still report expected values, especially if you use the base `AddResourceMonitoring()` method.
amadeuszl and others added 4 commits June 3, 2026 12:35
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
| `dotnet.process.memory.virtual.utilization` | <xref:System.Diagnostics.Metrics.ObservableGauge`1> | `1` | The memory consumption of the running application in range `[0, 1]`. |

Available starting in: .NET 8.

Copy link
Copy Markdown
Member

@evgenyfedorov2 evgenyfedorov2 Jun 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we want to remove the information about network metrics?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants