
Pablo
12.06.2018
07:29:39
Evgeny А вот такой Array режим https://akumuli.gitbook.io/docs/writing-data#array-of-values зачем? вижу из плюсов только атомарность записи связанных метрик.

Vladimir
12.06.2018
07:34:45

Andor
12.06.2018
07:35:20
ну вот он только очень энтерпрайзный

Google

Vladimir
12.06.2018
07:35:27
Гошечка, грпц всякий там - не шибко и

Evgeny
12.06.2018
07:36:47

Pablo
12.06.2018
09:23:34

Evgeny
12.06.2018
09:32:01

Sergey
12.06.2018
09:36:56
Гляну сонару
Спс

Viktor
12.06.2018
09:38:36
господа, подскажите хорошо масштабируемое TSDB с сжатием данньіх и триггерами которьіе не очень медленньіе (опционально). требований к IOps не много, но ожидается хранить много ТБ данньіх
вариантов на рьінке масса - все руками пробовать непродуктивно

Sergey
12.06.2018
09:39:12
Триггеры в тсдб?

Viktor
12.06.2018
09:39:35
хорошо если будут, не будет - ну и фиг с ними

Google

Deep Sea
12.06.2018
09:40:05
timescaledb, clickhouse

Viktor
12.06.2018
09:40:44
задача предполагает timestamp - value1-value2-.....- valuex

Sergey
12.06.2018
09:41:09
А ктото тестил кусаное яблоко?
Оно правда не тс
Какой те нестандартный тайм сериес, пакетированный

vvk
12.06.2018
10:06:40
А есть где-нибудь нормальное описание синтаксиса prometheus alert expressions? Нашёл такой пример: expr: instance:node_filesystem_avail:ratio{fstype=~"(ext.|xfs)",job="node"} * 100 <= 10 - непонятно, откуда взяли instance: и :ratio? В доках prometheus не вижу такого

Deep Sea
12.06.2018
10:14:18
сделали record rule с таким названием
https://prometheus.io/docs/practices/rules/

vvk
12.06.2018
10:16:58
Понял, tnx

Дмитрий
12.06.2018
11:29:05
@korservick подскажи pcp коллектор идёт одним бинарём как в telegraf или под разные плагины отдельные как в проме?

Sergey
12.06.2018
11:30:13
Разные под разное

Pablo
12.06.2018
11:51:21

Sergey
12.06.2018
11:53:00
Название забыл
Яблочники заопенсорсили

Pablo
12.06.2018
11:53:34
@Civiloid м?

buttno
12.06.2018
11:53:35
FoundationDB

Sergey
12.06.2018
11:53:42
Да

Andor
12.06.2018
11:54:27
https://github.com/prometheus/prometheus/issues/4254
багоделы

Sergey
12.06.2018
11:54:39
Проблема этих всех баз что под них нет готовых писашек

Andor
12.06.2018
11:54:59
ба
https://github.com/prometheus/prometheus/issues/4241
го
https://github.com/prometheus/prometheus/issues/4246
де
https://github.com/prometheus/prometheus/issues/4253
лы

Google

Vladimir
12.06.2018
11:56:17

Pablo
12.06.2018
11:56:41
вспоминали название яблочной тсдб

Vladimir
12.06.2018
11:56:54
А я ее и не знал :)

Maxim
12.06.2018
11:59:12
коллеги, а кто-нибудь алертманагером алертит в слак?
у меня какая-то странная штука с подавлением
никак не могу добиться картинки вроде такой:
то есть как только случается [FIRING:>1], то заголовок просто пропадает и всё

Andor
12.06.2018
12:01:37
не понял в чём разница

Maxim
12.06.2018
12:02:18
описания нет

Maxim
12.06.2018
12:02:41
на первом скриншоте [FIRING:2] PodsAreRestarting

Andor
12.06.2018
12:02:42
так это в шаблоне надо же

Maxim
12.06.2018
12:03:15
а у меня [FIRING:1] DescriptionHere, но [FIRING:7] ЁбаноеНичего
правила подавления вот такие:
inhibit_rules:
- source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname', 'cluster', 'component', 'service']
- source_match:
severity: 'warning'
target_match:
severity: 'info'
equal: ['alertname', 'cluster', 'component', 'service']
то есть критикал подавляет ворнинг, ворнинг подавляет инфо
без этого [FIRING:7] развернулся бы в семь алертов отдельных

Andor
12.06.2018
12:13:02
сюда глянь https://github.com/prometheus/alertmanager/blob/master/template

Google

Andor
12.06.2018
12:13:39
{{ define "__subject" }}[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ end }}] {{ .GroupLabels.SortedPairs.Values | join " " }} {{ if gt (len .CommonLabels) (len .GroupLabels) }}({{ with .CommonLabels.Remove .GroupLabels.Names }}{{ .Values | join " " }}{{ end }}){{ end }}{{ end }}
похоже?

Timur
12.06.2018
12:16:31

Andor
12.06.2018
12:16:37
логика в шаблонах, чо

Maxim
12.06.2018
12:17:04
чота я об условие сломался
if gt (len .CommonLabels) (len .GroupLabels)

Andor
12.06.2018
12:17:54
вот чота тоже
ну ты всегда можешь тайтл переопределить

Maxim
12.06.2018
12:19:02
то есть если самих алертов больше, чем групп, то удаляем лейблы с алертов, оставляем только групповые ( with .CommonLabels.Remove .GroupLabels.Names ) и джойним, что осталось

Andor
12.06.2018
12:19:15
видимо ага

Admin
ERROR: S client not available

Andor
12.06.2018
12:19:20
странная логика кажется

Maxim
12.06.2018
12:19:28
и походу на выходе у меня не остаётся примерно ничего
то есть я где-то проскипал имена/лейблы для групп чтоли?

Andor
12.06.2018
12:19:59
именно поэтому кажется что ты должен переопределить этот шаблон под свои нужды
а какие у тебя алерты щас горят?


Maxim
12.06.2018
12:20:29
прямо сейчас никакие, но это работает абсолютно со всеми
ща покажу пример
groups:
- name: disk-space-ends-soon
rules:
- alert: disk_space_ends_soon
expr: 100 - predict_linear(disk_used_percent{fstype!="overlay",path!="/tmp"}[1h],
4 * 3600) < 0
for: 5m
labels:
cluster: amplifr
component: node
service: disk_space
severity: warning
annotations:
description: Check partition info at https://grafana.amplifr.com/dashboard/db/host-stats?var-host={{
$labels.host }}&panelId=5&fullscreen and try to move or remove something
summary: Attention! Mountpoint {{ $labels.path }} on node {{ $labels.host }}
predicted to be overflowed in next 4 hours
- alert: disk_space_ends_soon
expr: 100 - predict_linear(disk_used_percent{fstype!="overlay",path!="/tmp"}[1h],
3600) < 0
for: 5m
labels:
cluster: amplifr
component: node
service: disk_space
severity: critical
annotations:
description: Free some space ASAP and remember to check partition info at https://grafana.amplifr.com/dashboard/db/host-stats?var-host={{
$labels.host }}&panelId=5&fullscreen after freeing space.
summary: Attention! Mountpoint {{ $labels.path }} on node {{ $labels.host }}
predicted to be overflowed in hour!


Andor
12.06.2018
12:22:19
я думаю что речь идёт про группировку в алертменеджере, а не про группы алертов в прометее

Google

Maxim
12.06.2018
12:22:29
и вот если на двух дисках сразу будет кончаться место, то в слаке будет просто FIRING:2

Andor
12.06.2018
12:23:08
убери группировку по имени хоста
(или наоборот добавь)
не соображу

Maxim
12.06.2018
12:23:57
в алертманагере вообще никаких группировок не описано
только inhibition

Andor
12.06.2018
12:24:17
как же он тогда у тебя группирует в 7 штук?

Maxim
12.06.2018
12:24:31
слакоконфиг выглядит так:
slack_configs:
- api_url: 'https://hooks.slack.com/services/xxx
channel: '#info-alerts'
username: 'amplifr-prometheus'
title: '[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ end }}] {{ .CommonAnnotations.summary }}'
text: '{{ .CommonAnnotations.description }}'
send_resolved: true

Andor
12.06.2018
12:25:25
title: '[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ end }}] {{ .CommonAnnotations.summary }}'
это ты щас добавил?

Maxim
12.06.2018
12:25:42
не, это "всегда" было

Andor
12.06.2018
12:27:44
а закомментируй и посмотри какой заголовок упадёт
у меня вот например всё ок с дефолтным шаблоном
[FIRING:10] HighMemoryUsage (default eu-west-1 info)

Maxim
12.06.2018
12:28:21
ок, спасибо

Andor
12.06.2018
12:28:33
ну то есть говно конечно, но не техническая проблема с заголовком

Maxim
12.06.2018
12:28:39
теперь бы вспомнить, зачем я тут кастомный сочинял...

Andor
12.06.2018
12:28:57
аннотацию хотел в заголовок сунуть

Maxim
12.06.2018
12:29:35
а под группировками ты что имел в виду?
ну то есть оно у меня как-то само эти [FIRING:10] собирает
я ничего для этого не делал

Andor
12.06.2018
12:30:43
ну алертменеджер умеет группировать алерты перед посылкой
group_interval