Skip to content

fix: export domain info metrics for all domain states#94

Open
ADometrius wants to merge 1 commit intoinovex:masterfrom
ADometrius:master
Open

fix: export domain info metrics for all domain states#94
ADometrius wants to merge 1 commit intoinovex:masterfrom
ADometrius:master

Conversation

@ADometrius
Copy link

Previously, libvirt_domain_info_state and related info metrics were only exported for running domains. This was because DomainGetInfo() fails for inactive domains, causing the CollectDomain function to exit early before emitting any metrics.

This change ensures that domain info and state metrics are always exported regardless of domain state by:

  1. Moving domain info metric emission before DomainGetInfo() call
  2. Adding graceful fallback to DomainGetState() when DomainGetInfo() fails
  3. Always emitting libvirt_domain_info_state for complete domain visibility

Now users can monitor all domains (running, stopped, paused, crashed, etc.) and get proper domain state information for inventory and alerting purposes. This is critical to close gaps in monitoring where domain state could represent and alert threshold

Fixes missing metrics for inactive domains while preserving existing behavior for performance metrics that only apply to running domains.

Co-Authored-By: Claude noreply@anthropic.com

@frittentheke
Copy link
Collaborator

@ADometrius Do you mind opening an issue including some example cases?

Previously, libvirt_domain_info_state and related info metrics were only
exported for running domains. This was because DomainGetInfo() fails for
inactive domains, causing the CollectDomain function to exit early before
emitting any metrics.

This change ensures that domain info and state metrics are always exported
regardless of domain state by:

1. Moving domain info metric emission before DomainGetInfo() call
2. Adding graceful fallback to DomainGetState() when DomainGetInfo() fails
3. Always emitting libvirt_domain_info_state for complete domain visibility

Now users can monitor all domains (running, stopped, paused, crashed, etc.)
and get proper domain state information for inventory and alerting purposes.

Fixes missing metrics for inactive domains while preserving existing
behavior for performance metrics that only apply to running domains.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@frittentheke
Copy link
Collaborator

@ADometrius could you kindly give an update on this PR and my question #94 (comment)?

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants