This is an automated email from the ASF dual-hosted git repository.
rohit pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push:
new 3e8c0684ed5 Prometheus: Ensure tagged hosts maintenance status is
reported consistently (#7471)
3e8c0684ed5 is described below
commit 3e8c0684ed53c5cff704eac7321b08f31cdddc75
Author: Ben <[email protected]>
AuthorDate: Tue May 23 01:44:43 2023 -0400
Prometheus: Ensure tagged hosts maintenance status is reported consistently
(#7471)
When a host is not tagged, its maintenance status is reported in the
cloudstack_hosts_total metric: maintenance_enabled is OFFLINE,
maintenance_disabled is ONLINE.
When a host is tagged, its maintenance status is now also verified to
ensure consistent behaviour.
In prometheus exporter, maintenance status for
cloudstack_hosts_total_by_tag is not checked. While it is checked for
cloudstack_hosts_total metric.
Classified by_tag or not, metrics should be the same.
Fixes: #7470
---
.../java/org/apache/cloudstack/metrics/PrometheusExporterImpl.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git
a/plugins/integrations/prometheus/src/main/java/org/apache/cloudstack/metrics/PrometheusExporterImpl.java
b/plugins/integrations/prometheus/src/main/java/org/apache/cloudstack/metrics/PrometheusExporterImpl.java
index 7d6ed876323..3f69ccdb3c1 100644
---
a/plugins/integrations/prometheus/src/main/java/org/apache/cloudstack/metrics/PrometheusExporterImpl.java
+++
b/plugins/integrations/prometheus/src/main/java/org/apache/cloudstack/metrics/PrometheusExporterImpl.java
@@ -212,9 +212,9 @@ public class PrometheusExporterImpl extends ManagerBase
implements PrometheusExp
private String markTagMaps(HostVO host, Map<String, Integer> totalHosts,
Map<String, Integer> upHosts, Map<String, Integer> downHosts) {
List<String> hostTags = _hostTagsDao.getHostTags(host.getId());
markTags(hostTags,totalHosts);
- if (host.getStatus() == Status.Up) {
+ if (host.getStatus() == Status.Up && !host.isInMaintenanceStates()) {
markTags(hostTags, upHosts);
- } else if (host.getStatus() == Status.Disconnected || host.getStatus()
== Status.Down) {
+ } else if (host.getStatus() == Status.Disconnected || host.getStatus()
== Status.Down || host.isInMaintenanceStates()) {
markTags(hostTags, downHosts);
}
return StringUtils.join(hostTags, ",");