Issue-ID: POLICY-3762
Signed-off-by: isaac <isaac.adorno@att.com>
Change-Id: I865fc01dac91fe77421fc2fceb72eac49c9d8a78
package org.onap.policy.pdpx.main.rest;
package org.onap.policy.pdpx.main.rest;
+import io.prometheus.client.Counter;
import lombok.Getter;
import lombok.Setter;
import lombok.Synchronized;
import lombok.Getter;
import lombok.Setter;
import lombok.Synchronized;
+import org.onap.policy.common.utils.resources.PrometheusUtils;
+import org.onap.policy.models.pdp.enums.PdpResponseStatus;
/**
* Class to hold statistical data for xacmlPdp component.
/**
* Class to hold statistical data for xacmlPdp component.
@Getter
@Setter
private static XacmlPdpStatisticsManager current = null;
@Getter
@Setter
private static XacmlPdpStatisticsManager current = null;
+ protected static final String PROMETHEUS_NAMESPACE = "pdpx";
+
+ protected static final Counter deploymentsCounter =
+ Counter.build().namespace(PROMETHEUS_NAMESPACE).name(PrometheusUtils.POLICY_DEPLOYMENTS_METRIC)
+ .labelNames(PrometheusUtils.OPERATION_METRIC_LABEL,
+ PrometheusUtils.STATUS_METRIC_LABEL)
+ .help(PrometheusUtils.POLICY_DEPLOYMENT_HELP)
+ .register();
private long totalPolicyTypesCount;
private long totalPoliciesCount;
private long totalPolicyTypesCount;
private long totalPoliciesCount;
*/
@Synchronized
public long updateDeploySuccessCount() {
*/
@Synchronized
public long updateDeploySuccessCount() {
+ deploymentsCounter.labels(PrometheusUtils.DEPLOY_OPERATION,
+ PdpResponseStatus.SUCCESS.name()).inc();
return ++deploySuccessCount;
}
return ++deploySuccessCount;
}
*/
@Synchronized
public long updateDeployFailureCount() {
*/
@Synchronized
public long updateDeployFailureCount() {
+ deploymentsCounter.labels(PrometheusUtils.DEPLOY_OPERATION,
+ PdpResponseStatus.FAIL.name()).inc();
return ++deployFailureCount;
}
return ++deployFailureCount;
}
*/
@Synchronized
public long updateUndeploySuccessCount() {
*/
@Synchronized
public long updateUndeploySuccessCount() {
+ deploymentsCounter.labels(PrometheusUtils.UNDEPLOY_OPERATION,
+ PdpResponseStatus.SUCCESS.name()).inc();
return ++undeploySuccessCount;
}
return ++undeploySuccessCount;
}
*/
@Synchronized
public long updateUndeployFailureCount() {
*/
@Synchronized
public long updateUndeployFailureCount() {
+ deploymentsCounter.labels(PrometheusUtils.UNDEPLOY_OPERATION,
+ PdpResponseStatus.FAIL.name()).inc();
return ++undeployFailureCount;
}
return ++undeployFailureCount;
}