From 74aab5fd843e92a3b1ed2ba41283c17a64fa5c60 Mon Sep 17 00:00:00 2001 From: DUMAX-VORZET Mathieu Date: Fri, 13 Mar 2020 16:06:24 +0100 Subject: [PATCH] [Feature] Adding Prometheus and needed configurations --- .../chirpstack-application-server.toml | 11 +++++ .../chirpstack-gateway-bridge.toml | 10 +++++ .../chirpstack-network-server.toml | 10 +++++ configuration/prometheus/prometheus.yml | 43 +++++++++++++++++++ docker-compose.yml | 7 +++ 5 files changed, 81 insertions(+) create mode 100644 configuration/prometheus/prometheus.yml diff --git a/configuration/chirpstack-application-server/chirpstack-application-server.toml b/configuration/chirpstack-application-server/chirpstack-application-server.toml index b019310..4af3cab 100644 --- a/configuration/chirpstack-application-server/chirpstack-application-server.toml +++ b/configuration/chirpstack-application-server/chirpstack-application-server.toml @@ -16,3 +16,14 @@ public_host="chirpstack-application-server:8001" [application_server.external_api] bind="0.0.0.0:8080" jwt_secret="verysecret" + + +# Metrics collection settings. +[metrics] + +timezone="Local" + + [metrics.prometheus] + bind="chirpstack-application-server:9324" + endpoint_enabled=true + APITimingHistogram=true diff --git a/configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml b/configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml index 894de95..642bfb6 100644 --- a/configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml +++ b/configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml @@ -5,3 +5,13 @@ servers=["tcp://mosquitto:1883"] username="" password="" + +# Metrics collection settings. +[metrics] + +timezone="Local" + + [metrics.prometheus] + bind="chirpstack-gateway-bridge:9325" + endpoint_enabled=true + APITimingHistogram=true diff --git a/configuration/chirpstack-network-server/chirpstack-network-server.toml b/configuration/chirpstack-network-server/chirpstack-network-server.toml index 8a3c2a9..b997a1d 100644 --- a/configuration/chirpstack-network-server/chirpstack-network-server.toml +++ b/configuration/chirpstack-network-server/chirpstack-network-server.toml @@ -51,3 +51,13 @@ server="http://chirpstack-application-server:8003" [geolocation_server] server="chirpstack-geolocation-server:8005" + +# Metrics collection settings. +[metrics] + +timezone="Local" + + [metrics.prometheus] + bind="chirpstack-network-server:9323" + endpoint_enabled=true + APITimingHistogram=true diff --git a/configuration/prometheus/prometheus.yml b/configuration/prometheus/prometheus.yml new file mode 100644 index 0000000..b42891a --- /dev/null +++ b/configuration/prometheus/prometheus.yml @@ -0,0 +1,43 @@ +# my global config +global: + scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. + evaluation_interval: 15s # 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" + +scrape_configs: + + - job_name: 'Prometheus' + + static_configs: + - targets: ['localhost:9090'] + + - job_name: 'Chirpstack network server' + + static_configs: + - targets: ['chirpstack-network-server:9323'] + + - job_name: 'Chirpstack application server' + + static_configs: + - targets: ['chirpstack-application-server:9324'] + + - job_name: 'Chirpstack gateway bridge' + + static_configs: + - targets: ['chirpstack-gateway-bridge:9325'] + + + + diff --git a/docker-compose.yml b/docker-compose.yml index dbca6a1..1a0e22e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -43,6 +43,13 @@ services: ports: - 1883:1883 + prometheus: + image: prom/prometheus:v2.16.0 + ports: + - 9090:9090 + volumes: + - ./configuration/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml + volumes: postgresqldata: redisdata: