summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorisaac <isaac.adorno@att.com>2022-03-09 16:45:07 -0600
committerisaac <isaac.adorno@att.com>2022-03-10 15:07:35 -0600
commit895ccff0e9ecf6cffbf517fbbdb05ea009f31f1c (patch)
tree465f8d646665fbec09356f35784afc581a6fe00b
parent4873a65384639607dbab45846a7ff53775ee0a79 (diff)
Extending Prometheus counts to include permit / deny / indeterminant
Issue-ID: POLICY-3762 Signed-off-by: isaac <isaac.adorno@att.com> Change-Id: I2ca7c9384316d08b13a7f90ba99975e602007351
-rw-r--r--main/src/main/java/org/onap/policy/pdpx/main/rest/XacmlPdpStatisticsManager.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/main/src/main/java/org/onap/policy/pdpx/main/rest/XacmlPdpStatisticsManager.java b/main/src/main/java/org/onap/policy/pdpx/main/rest/XacmlPdpStatisticsManager.java
index 609da8f6..26ccfd35 100644
--- a/main/src/main/java/org/onap/policy/pdpx/main/rest/XacmlPdpStatisticsManager.java
+++ b/main/src/main/java/org/onap/policy/pdpx/main/rest/XacmlPdpStatisticsManager.java
@@ -36,6 +36,12 @@ public class XacmlPdpStatisticsManager {
@Setter
private static XacmlPdpStatisticsManager current = null;
protected static final String PROMETHEUS_NAMESPACE = "pdpx";
+ protected static final String POLICY_DECISIONS_METRIC = "policy_decisions";
+ public static final String POLICY_DECISIONS_HELP = "The total number of policy decisions.";
+ public static final String PERMIT_OPERATION = "permit";
+ public static final String DENY_OPERATION = "deny";
+ public static final String INDETERMINANT_OPERATION = "indeterminant";
+ public static final String NOT_APPLICABLE_OPERATION = "not_applicable";
protected static final Counter deploymentsCounter =
Counter.build().namespace(PROMETHEUS_NAMESPACE).name(PrometheusUtils.POLICY_DEPLOYMENTS_METRIC)
@@ -44,6 +50,12 @@ public class XacmlPdpStatisticsManager {
.help(PrometheusUtils.POLICY_DEPLOYMENT_HELP)
.register();
+ protected static final Counter decisionsCounter =
+ Counter.build().namespace(PROMETHEUS_NAMESPACE).name(POLICY_DECISIONS_METRIC)
+ .labelNames(PrometheusUtils.STATUS_METRIC_LABEL)
+ .help(POLICY_DECISIONS_HELP)
+ .register();
+
private long totalPolicyTypesCount;
private long totalPoliciesCount;
private long errorCount;
@@ -99,6 +111,7 @@ public class XacmlPdpStatisticsManager {
*/
@Synchronized
public long updatePermitDecisionsCount() {
+ decisionsCounter.labels(PERMIT_OPERATION).inc();
return ++permitDecisionsCount;
}
@@ -109,6 +122,7 @@ public class XacmlPdpStatisticsManager {
*/
@Synchronized
public long updateDenyDecisionsCount() {
+ decisionsCounter.labels(DENY_OPERATION).inc();
return ++denyDecisionsCount;
}
@@ -167,6 +181,7 @@ public class XacmlPdpStatisticsManager {
*/
@Synchronized
public long updateIndeterminantDecisionsCount() {
+ decisionsCounter.labels(INDETERMINANT_OPERATION).inc();
return ++indeterminantDecisionsCount;
}
@@ -177,6 +192,7 @@ public class XacmlPdpStatisticsManager {
*/
@Synchronized
public long updateNotApplicableDecisionsCount() {
+ decisionsCounter.labels(NOT_APPLICABLE_OPERATION).inc();
return ++notApplicableDecisionsCount;
}