diff options
author | adheli.tavares <adheli.tavares@est.tech> | 2022-02-02 14:53:10 +0000 |
---|---|---|
committer | adheli.tavares <adheli.tavares@est.tech> | 2022-02-15 16:50:14 +0000 |
commit | 7abe36cd557a9c2d5abebcf54a4ed5957a4168a1 (patch) | |
tree | 27b4ec7af94c5d456dd5326693ad9a54e0a20d3a /csit/metrics | |
parent | 67f7bd978865e8cad3cc84c2a4074f6ce02dff3e (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.json | 173 | ||||
-rw-r--r-- | csit/metrics/prometheus.yml | 101 |
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" |