mirror of
https://gitverse.ru/kpa39l/monitoring.git
synced 2026-09-29 09:55:09 +00:00
feat(openspec): vesti-alerts — 6 алертов на компоненты VESTI (web/publisher/tunnel/db/stale); OpenSpec change
This commit is contained in:
@@ -252,6 +252,44 @@ grafana.nixg.ru {
|
||||
- В логах caddy много ошибок renew для старых доменов — они имеют
|
||||
уже выпущенные сертификаты в caddy_data, работает всё.
|
||||
|
||||
## Опыт: VESTI — textfile-метрики + встроенный Prometheus Alerting (2026-09-13)
|
||||
|
||||
> Ситуация: добавлен дашборд и алерты на компоненты /opt/vesti. Проект
|
||||
> управляется через OpenSpec: все изменения — только через openspec/change.
|
||||
|
||||
### 22. Textfile-коллектор node-exporter для метрик сервиса
|
||||
|
||||
node-exporter умеет отдавать произвольные метрики из файлов каталога
|
||||
(`--collector.textfile.directory=...` ← `ARGS` в /etc/default/prometheus-node-exporter).
|
||||
Скрипт раз в минуту пишет файл в Prometheus-формате (1 метрика = 1 строка
|
||||
`name{labels} value`), node-exporter отдаёт их в /metrics — и Prometheus
|
||||
тащит их обычным job'ом `node` (тот же 9100). Для сервиса достаточно:
|
||||
`/opt/vesti/scripts/vesti-metrics.sh` → `/var/lib/node_exporter/textfile_collector/vesti.prom`.
|
||||
|
||||
Грабля: каталог textfile принадлежит пользователю `prometheus`, скрипт от
|
||||
root должен делать `chown prometheus:prometheus` (иначе файл появится, но
|
||||
node-exporter его не прочитает — права!). Запуск: cron.d (root) — каждую минуту.
|
||||
|
||||
### 23. Prometheus-алерты: файл alerts.yml + `/api/v1/rules`
|
||||
|
||||
В этом стеке алерты — НЕ Grafana, а встроенный механизм Prometheus:
|
||||
`prometheus.yml` → `rule_files: /etc/prometheus/alerts.yml` (группы/правила в
|
||||
YAML). Правила видны в `http://127.0.0.1:9090/api/v1/rules` (JSON: groups,
|
||||
state, query). Перечитываются ТОЛЬКО рестартом прометеуса
|
||||
(`docker restart prometheus`), НЕ автоматически.
|
||||
|
||||
Грабля: `promtool check config /etc/prometheus/prometheus.yml` считает
|
||||
alerts.yml правило-файлом: «FAILED: field groups not found» при прямом
|
||||
проверке alerts.yml — это НОРМАЛЬНО (это не самостоятельный конфиг;
|
||||
проверять через рrometheus.yml, который находит 13 rules).
|
||||
|
||||
### 24. OpenSpec для /opt/monitoring
|
||||
|
||||
Все изменения проекта — ТОЛЬКО через `openspec/change/` (proposal/design/tasks/
|
||||
specs/). Формат spec: `## ADDED Requirements` + `### Requirement: X` +
|
||||
`#### Scenario:` (иначе validate ругается). После внесения: `openspec validate`,
|
||||
применить, `openspec archive --yes` + обновить STATUS/README/WALKTHROUGH.
|
||||
|
||||
## Опыт: дашборд Grafana пустой (NO DATA) — 3 причины подряд (2026-09-02)
|
||||
|
||||
> Дата: 2026-09-02. Ситуация: после этапа 6 (tproxy) пользователь сообщил,
|
||||
|
||||
Reference in New Issue
Block a user