Add dashboard UID auto-generation and Gitea CI workflow
Some checks failed
terraform-dev / validate (push) Failing after 1m53s
terraform-dev / plan (push) Has been skipped
terraform-dev / apply (push) Has been skipped

This commit is contained in:
Alexandr
2026-03-25 06:41:19 +03:00
parent 345c5786b3
commit 558a23d916
83 changed files with 53372 additions and 1 deletions

View File

@ -0,0 +1,20 @@
name: "Vmagent Persistent Queue Is Dropping Data"
expression: |
sum(increase(vm_persistentqueue_bytes_dropped_total{job=~".*agent.*"}[5m])) without (path) > 0
threshold: 0
for: "10m"
condition_type: "gt"
need_reduce: true
reducer_type: "sum"
no_data_state: "OK"
exec_err_state: "KeepLast"
labels:
service: "vmagent"
severity: "critical"
status: "test"
summary: |
Инстанс {{ $labels.instance }} сбрасывает данные из переполненного буфера.
description: |
VMAgent-у на инстансе {{ $labels.instance }} пришлось сбросить данные из дискового буфера.
**Влияние: ПРОИСХОДИТ АКТИВНАЯ ПОТЕРЯ МЕТРИК!** Дисковый буфер переполнен, и vmagent удаляет старые данные, чтобы освободить место для новых.

View File

@ -0,0 +1,20 @@
name: "VictoriaMetrics components down"
expression: |
up{job=~".*(agent|vminsert|vmselect|vmstorage|vmauth).*"} == 0
threshold: 0
for: "3m"
condition_type: "eq"
need_reduce: true
reducer_type: "last"
no_data_state: "OK"
exec_err_state: "Error"
labels:
service: "vmcomponents"
severity: "critical"
status: "test"
summary: |
VictoriaMetrics компонент '{{ $labels.job }}' на инстансе {{ $labels.instance }} не отвечает.
description: |
Компонент VictoriaMetrics '{{ $labels.job }}' на инстансе {{ $labels.instance }} перестал отвечать на запросы.
**Влияние**: Это критический компонент инфраструктуры мониторинга. Его отказ может привести к потере метрик, неработающим дашбордам или остановке системы алертинга.

View File

@ -0,0 +1,20 @@
name: "VictoriaMetrics Too Many Warning or Error Logs"
expression: |
sum(increase(vm_log_messages_total{level!="info", job=~".*(agent|vminsert|vmselect|vmstorage|vmauth).*"}[5m])) without (app_version, location, is_printed) > 35
threshold: 40
condition_type: "gt"
for: "15m"
need_reduce: true
reducer_type: "last"
no_data_state: "OK"
exec_err_state: "Error"
labels:
service: "vmcomponents"
severity: "warning"
status: "test"
summary: |
Слишком много сообщений типа "error"/"warning" по {{ $labels.job }} от инстанса {{ $labels.instance }}.
description: |
Компонент '{{ $labels.job }}' (инстанс {{ $labels.instance }}) генерирует слишком много логов уровня 'warning' или 'error'.
**Влияние:** Это указывает на наличие скрытых проблем, которые могут привести к деградации производительности или будущим сбоям.

View File

@ -0,0 +1,28 @@
name: "Высокая загрузка CPU"
expression: |
(
1 - avg by (instance) (rate(node_cpu_seconds_total{job="self-monitoring", mode="idle"}[5m]))
) * 100
threshold: 90
for: "5m"
condition_type: "gt"
need_reduce: true
reducer_type: "max"
no_data_state: "OK"
exec_err_state: "Error"
labels:
service: "system"
severity: "critical"
status: "test"
summary: |
High CPU usage {{ printf "%.0f" $values.B.Value }}% on {{ $labels.instance }}
description: |
На {{ $labels.instance }} высокая загрузка CPU (более порога в течение заданного времени).
Это сигнализирует о CPU-bound нагрузке, которая может повышать задержки и время ответа сервисов.
Что проверить:
1) top/htop: какие процессы потребляют CPU
2) mpstat -P ALL 1: распределение по ядрам и steal
3) run queue/load average (uptime, vmstat)
4) всплески трафика, cron/job-процессы, фоновые задачи
5) ошибки и таймауты приложений в логах

View File

@ -0,0 +1,26 @@
name: "Мало свободной памяти"
expression: |
(node_memory_MemAvailable_bytes{job="self-monitoring"} / node_memory_MemTotal_bytes{job="self-monitoring"}) * 100
threshold: 5
for: "5m"
condition_type: "lt"
need_reduce: true
reducer_type: "min"
no_data_state: "OK"
exec_err_state: "Error"
labels:
service: "system"
severity: "critical"
status: "test"
summary: |
Low free memory {{ printf "%.0f" $values.B.Value }}% on {{ $labels.instance }}
description: |
На {{ $labels.instance }} осталось очень мало доступной памяти.
Это сигнализирует о memory pressure, риске OOM kill и деградации производительности.
Что проверить:
1) free -h, vmstat 1, swapon -s
2) top/htop: процессы-лидеры по RSS/heap
3) OOM события в dmesg/journalctl
4) major page faults и IO wait (связанные алерты)
5) лимиты/requests (для k8s) и необходимость увеличения RAM

View File

@ -0,0 +1,26 @@
name: "Обнаружена перезагрузка сервера"
expression: |
changes(node_boot_time_seconds{job="self-monitoring"}[5m]) > bool 0
threshold: 0
for: "5m"
condition_type: "gt"
need_reduce: true
reducer_type: "max"
no_data_state: "OK"
exec_err_state: "Error"
labels:
service: "system"
severity: "warning"
status: "test"
summary: |
Reboot detected on {{ $labels.instance }}
description: |
На {{ $labels.instance }} обнаружен недавний перезапуск.
Это сигнализирует о возможном аварийном рестарте, плановых работах или проблемах питания/ядра.
Что проверить:
1) last reboot и uptime
2) journalctl -b -1 и kernel-логи до перезапуска
3) причины: OOM, kernel panic, watchdog, обновления
4) состояние сервисов после рестарта
5) повторяемость события и корреляцию с другими алертами