Мониторинг платформы
8 января 2025 г.Около 1 минCoreMonitoring
Мониторинг метрик
Все модули Core предоставляют метрики в формате экспортера Prometheus.
Реализованы следующие сервисы, предоставляющие метрики мониторинга:
- модуль обмена с брокером mqtt (handler) -
http://HOST:PORT/metrics
- модуль обработки данных (engine) -
http://HOST:PORT/metrics
- модуль rest сервисов (restservices) -
http://HOST:PORT/sem-restservices/metrics
- модуль периодических заданий (periodic) -
http://HOST:PORT/metrics
- модуль уведомлений о событиях (notifier) -
http://HOST:PORT/metrics
(PORT для sem-notifier по умолчанию = 8549)
По умолчанию, сервисы мониторинга доступны по следующим портам:
- Inspark.Gate.MQTT (handler): 8755
- Inspark.Core сервис оперативной обработки engine: 8746
- Inspark.Core сервис периодических заданий periodic: 8752
- Inspark.Notification сервис уведомлений notification: 8549
- Inspark.Core сервис REST API restservices: 8080
Инфо
В конфигурациях модулей порты могут быть переопределены, смотрите манифесты.
Для проверки доступности метрик, выполните команды:
curl http://<dns-имя engine>:8746/metrics
curl http://<dns-имя handler>:8755/metrics
...
curl http://<dns-имя notifier>:8549/metrics
Метрики Apache Artemis JMS доступны по порту 9404. Пример запроса метрик сервиса Artemis JMS:
curl http://<dns-имя jms сервера>:9404/metrics
Настройка Prometeus
Для подключение метрик к системе мониторинга Prometeus необходимо внести данные об узлах мониторинга.
Ниже показан пример для helm скрипта Prometeus scrape секции:
extraScrapeConfigs: |
- job_name: 'handler'
metrics_path: /metrics
static_configs:
- targets:
- <dns имя узла 1>:8755
- <dns имя узла 2>:8755
....
- job_name: 'engine'
metrics_path: /metrics
static_configs:
- targets:
- <dns имя узла 1>:8746
- <dns имя узла 2>:8746
....
- job_name: 'periodic'
metrics_path: /metrics
static_configs:
- targets:
- <dns имя узла 1>:8752
- <dns имя узла 2>:8752
....
- job_name: 'restservices'
metrics_path: /sem-restservices/metrics
static_configs:
- targets:
- <dns имя узла 1>:8080
- <dns имя узла 2>:8080
....
- job_name: 'notifier'
metrics_path: /metrics
static_configs:
- targets:
- <dns имя узла 1>:8549
- <dns имя узла 2>:8549
....
- job_name: "artemis_jms"
static_configs: /metrics
- targets:
- <dns имя узла 1>:9404
- <dns имя узла 2>:9404
В интерфейсе Graphana подключение метрик осуществляется с помощью экспортера (Data Source) Prometeus.
Ниже показан пример вывода метрик на виджет Graphana: