Алертинг по логам кластера
В платформе “Штурвал” для кластеров (клиентских, управления) реализовано хранение логов в VLogs. Логи кластера доступны на вкладке Логи дашборда кластера.
При необходимости вы можете настроить оповещение (алертинг) по логам кластера (клиентского, управления). Для этого:
В кластере управления с помощью импорта манифестов для кластера, где требуется алертинг по логам, загрузите кастомные ресурсы VMRule и VMAlert, используя свои значения параметров.
Пример VMRule
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMRule
metadata:
labels:
cluster: <ваше значение параметра>
role: user
vmalert-type: vlogs
name: <ваше значение параметра>
namespace: <ваше значение параметра>
spec:
groups:
- headers:
- <ваше значение параметра>
interval: 5m
name: <ваше значение параметра>
type: vlogs
rules:
- alert: <ваше значение параметра>
annotations:
description: 'SSC {{ index $labels "objectRef.name" }} was updated by {{ index $labels "user.username" }} in the last {{$for}}'
expr: objectRef.resource:"shturvalserviceconfigs" verb:~"patch|update" | stats by(objectRef.name, objectRef.resource, user.username) count() as updateSSC | filter updateSSC:>1
labels:
source: vlogs
Согласно установленному правилу в expr оповещения будут приходить при изменении в сервисах кластера.
| Параметр | Описание | Тип данных | Пример |
|---|---|---|---|
metadata.cluster |
Имя кластера, где требуется алертинг по логам | string | clustername |
metadata.name |
Имя правила | string | vlogs |
groups.name |
Имя группы правил | string | vlogsgroup |
groups.headers |
Проект (ProjectID) в VLogs. Обратите внимание! Возможно указать только один проект | array | ProjectID: 4 |
rules.alert |
Имя алерта (оповещения) | string | vlogsrule |
Пример VMAlert
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMAlert
metadata:
annotations:
labels:
cluster: <ваше значение параметра>
name: vlogs
namespace: <ваше значение параметра>
spec:
datasource:
url: <ваше значение параметра>
evaluationInterval: 30s
externalLabels:
cluster: <ваше значение параметра>
extraArgs:
rule.defaultRuleType: vlogs
image: {}
notifiers:
- url: http://vmalertmanager-shturval-metrics-collector.victoria-metrics:9093
remoteRead:
url: <ваше значение параметра>
remoteWrite:
url: <ваше значение параметра>
resources:
limits:
cpu: <ваше значение параметра>
memory: <ваше значение параметра>
requests:
cpu: <ваше значение параметра>
memory: <ваше значение параметра>
ruleSelector:
matchLabels:
vmalert-type: vlogs
cluster: <ваше значение параметра>clustername
ruleNamespaceSelector: {}
selectAllByDefault: false
| Параметр | Описание | Тип данных | Пример |
|---|---|---|---|
metadata.namespace |
Имя неймспейса кластера, в котором настраивается алертинг по логам | string | clustername |
metadata.labels.cluster |
Имя кластера, в котором настраивается алертинг по логам | string | clustername |
spec.datasource.url |
URL-адрес источника логов кластера | string | http://vlogs-logs.clustername:9428 |
externalLabels.cluster |
Имя кластера, в котором настраивается алертинг по логам | string | clustername |
spec.remoteRead.url |
URL-адрес Victoria Metric Select. Вместо monitoring_id укажите значение аннотации кластера с таким ключом | string | http://shturval-monitoring-vmselect.victoria-metrics:8481/select/monitoring_id:3/prometheus |
spec.remoteWrite.url |
URL-адрес Victoria Metrics Insert. Вместо monitoring_id укажите значение аннотации кластера с таким ключом | string | http://shturval-monitoring-vminsert.victoria-metrics:8480/insert/monitoring_id:3/prometheus |
spec.resources |
Ресурсы requests и limits | string[]object | limits: cpu: 200m memory: 256Mi requests: cpu: 100m memory: 128Mi |
Скриншот

Нажмите Проверить и Сохранить.
Проверить алертинг по логам можно с помощью уведомления на devmail. Инструкция по настройке devmail находится в разделе Email на странице Обработка правил оповещения.