docs: docs for machine id metrics and hw-health metrics fetch#3377
Conversation
Signed-off-by: ianisimov <ianisimov@nvidia.com>
WalkthroughExpanded monitoring documentation with hardware entity metrics configuration and output details, plus opt-in per-object health metrics behavior and lifecycle semantics. ChangesMonitoring health documentation
Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
🔍 Container Scan SummaryNo Grype artifacts were found to aggregate. |
|
🌿 Preview your docs: https://nvidia-preview-pull-request-3377.docs.buildwithfern.com/infra-controller |
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/operations/monitoring-health.md`:
- Around line 595-597: The monitoring documentation inaccurately claims
classification-based emission keeps cardinality bounded. In the opt-in emission
description, replace “bounded” with wording that it helps contain cardinality,
clarify that object_id still scales series with fleet size, and note that
multiple enabled classifications multiply per-object series.
- Around line 610-617: The rack alert example is incompatible with the
documented metric labels because it neither filters to machines nor identifies
racks. Update the example prose and PromQL to describe a fleet-wide
hardware-unhealthy machine count, or add/document a `rack_id` label and group
the query by rack so it can correctly alert on per-rack totals.
- Around line 227-232: Clarify the sink-specific query contract in the section
describing series labels and OTLP. State that Prometheus exposes inventory
context as metric labels, while OTLP exports it as resource attributes; document
the exact attribute-to-label mapping and query differences, or limit the claim
to shared metric names without asserting identical Grafana queries.
- Around line 604-608: The monitoring documentation’s eviction timing statement
is inaccurate: update the paragraph near the per-object classification metrics
to state that series are retained for the registry’s hold period, which is
configured slightly longer than the state controllers’ `metric_hold_time`,
rather than expiring exactly at that value. Preserve the existing behavior for
empty classifications and aggregate metrics.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 8e57c192-97ff-41ed-a3de-ae7a282c8c64
📒 Files selected for processing (1)
docs/operations/monitoring-health.md
Signed-off-by: ianisimov <ianisimov@nvidia.com>
polarweasel
left a comment
There was a problem hiding this comment.
Couple quick little things, then good to go
Co-authored-by: Alex Ball <awball@polarweasel.org> Signed-off-by: Ivan Anisimov <inyokwetrust@gmail.com>
Co-authored-by: Alex Ball <awball@polarweasel.org> Signed-off-by: Ivan Anisimov <inyokwetrust@gmail.com>
Co-authored-by: Alex Ball <awball@polarweasel.org> Signed-off-by: Ivan Anisimov <inyokwetrust@gmail.com>
Co-authored-by: Alex Ball <awball@polarweasel.org> Signed-off-by: Ivan Anisimov <inyokwetrust@gmail.com>
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/operations/monitoring-health.md (1)
616-620: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winDo not describe
in_use="false"as allocation blocking.The documented
in_uselabel only indicates whether a tenant instance uses the machine; it does not establish allocation eligibility. This query lists unused machines carrying theHardwareclassification, not necessarily hosts blocked from allocation. Narrow the prose accordingly, or query the classification that explicitly represents allocation prevention if that is the intended contract.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/operations/monitoring-health.md` around lines 616 - 620, Update the prose introducing the PromQL query to describe it only as listing unused machines with the Hardware classification, not as hosts blocked from allocation. Keep the query unchanged unless an explicit allocation-prevention classification is available and intended by the documentation contract.Source: Path instructions
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@docs/operations/monitoring-health.md`:
- Around line 616-620: Update the prose introducing the PromQL query to describe
it only as listing unused machines with the Hardware classification, not as
hosts blocked from allocation. Keep the query unchanged unless an explicit
allocation-prevention classification is available and intended by the
documentation contract.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: f7dd249b-b88b-46a0-9ca7-8e075a4c8e57
📒 Files selected for processing (1)
docs/operations/monitoring-health.md
Documentation updates for #2433 and #2168
Related issues
#2433 #2168
Type of Change
Breaking Changes
Testing
Additional Notes