aboutsummaryrefslogtreecommitdiffstats
path: root/csit/metrics
diff options
context:
space:
mode:
authoradheli.tavares <adheli.tavares@est.tech>2022-02-02 14:53:10 +0000
committeradheli.tavares <adheli.tavares@est.tech>2022-02-15 16:50:14 +0000
commit7abe36cd557a9c2d5abebcf54a4ed5957a4168a1 (patch)
tree27b4ec7af94c5d456dd5326693ad9a54e0a20d3a /csit/metrics
parent67f7bd978865e8cad3cc84c2a4074f6ce02dff3e (diff)
Add docker configuration for Prometheus and Grafana
- docker compose file with the policy components - configuration files for components to allow usage of http - basic prometheus configuration to connect to api, pap, drools (apps/pdp), xaclm and apex - examples of metrics to be added to a dashboard in Grafana Issue-ID: POLICY-3886 Change-Id: Ic377b69b1a296017a85cb08ccdbbf9b8b281d8e3 Signed-off-by: adheli.tavares <adheli.tavares@est.tech>
Diffstat (limited to 'csit/metrics')
-rw-r--r--csit/metrics/policy-dashboard-example.json173
-rw-r--r--csit/metrics/prometheus.yml101
2 files changed, 274 insertions, 0 deletions
diff --git a/csit/metrics/policy-dashboard-example.json b/csit/metrics/policy-dashboard-example.json
new file mode 100644
index 00000000..ac479247
--- /dev/null
+++ b/csit/metrics/policy-dashboard-example.json
@@ -0,0 +1,173 @@
+{
+ "panels": [
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "decbytes"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 0
+ },
+ "id": 4,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom"
+ },
+ "tooltip": {
+ "mode": "single"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "GdZ1Voanz"
+ },
+ "exemplar": true,
+ "expr": "jvm_memory_bytes_used{area=\"heap\"}",
+ "interval": "",
+ "legendFormat": "{{job}}",
+ "refId": "A"
+ }
+ ],
+ "title": "jvm_memory_bytes_used heap",
+ "type": "timeseries"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 9,
+ "w": 12,
+ "x": 0,
+ "y": 8
+ },
+ "id": 2,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom"
+ },
+ "tooltip": {
+ "mode": "single"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "GdZ1Voanz"
+ },
+ "exemplar": true,
+ "expr": "jvm_threads_current{}",
+ "interval": "",
+ "legendFormat": "{{job}}",
+ "refId": "A"
+ }
+ ],
+ "title": "jvm_threads_current",
+ "type": "timeseries"
+ }
+ ]
+} \ No newline at end of file
diff --git a/csit/metrics/prometheus.yml b/csit/metrics/prometheus.yml
new file mode 100644
index 00000000..255ecd08
--- /dev/null
+++ b/csit/metrics/prometheus.yml
@@ -0,0 +1,101 @@
+#
+# ===========LICENSE_START====================================================
+# Copyright (C) 2022 Nordix Foundation.
+# ============================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=====================================================
+#
+
+# my global config
+global:
+ scrape_interval: 60s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
+ evaluation_interval: 60s # Evaluate rules every 15 seconds. The default is every 1 minute.
+ #scrape_timeout is set to the global default (10s).
+
+# Alertmanager configuration
+alerting:
+ alertmanagers:
+ - static_configs:
+ - targets:
+ # - alertmanager:9093
+
+# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
+rule_files:
+ # - "first_rules.yml"
+ # - "second_rules.yml"
+
+# A scrape configuration containing exactly one endpoint to scrape:
+# Here it's Prometheus itself.
+scrape_configs:
+ # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
+# - job_name: "prometheus"
+#
+# # metrics_path defaults to '/metrics'
+# # scheme defaults to 'http'.
+#
+# static_configs:
+# - targets: ["localhost:9090"]
+
+ - job_name: "api-metrics"
+ static_configs:
+ - targets: ["policy-api:6969"]
+ basic_auth:
+ username: policyadmin
+ password: "zb!XztG34"
+
+ - job_name: "pap-metrics"
+ static_configs:
+ - targets: ["policy-pap:6969"]
+ basic_auth:
+ username: policyadmin
+ password: "zb!XztG34"
+
+ - job_name: "apex-pdp-metrics"
+ static_configs:
+ - targets:
+ - "policy-apex-pdp:6969"
+ basic_auth:
+ username: "healthcheck"
+ password: "zb!XztG34"
+
+ - job_name: "drools-apps-metrics"
+ static_configs:
+ - targets:
+ - "drools-apps:9696"
+ basic_auth:
+ username: "demo@people.osaaf.org"
+ password: "demo123456!"
+
+ - job_name: "drools-pdp-metrics"
+ static_configs:
+ - targets:
+ - "drools:9696"
+ basic_auth:
+ username: "demo@people.osaaf.org"
+ password: "demo123456!"
+
+ - job_name: "distribution-metrics"
+ static_configs:
+ - targets:
+ - "policy-distribution:6969"
+ basic_auth:
+ username: "healthcheck"
+ password: "zb!XztG34"
+
+ - job_name: "xacml-pdp-metrics"
+ static_configs:
+ - targets:
+ - "policy-xacml-pdp:6969"
+ basic_auth:
+ username: "healthcheck"
+ password: "zb!XztG34"