@metrics_ru

Страница 429 из 681
Nik
24.01.2018
15:37:32
я убежден, что я что то делаюб не так

отделение
24.01.2018
15:37:38
если ты про рассылаемые сообщения говоришь

Nik
24.01.2018
15:38:01
annotations: { value: "{{$value}}" }?
я про то, что отображается при запросе ALERTS в пром



Google
Nik
24.01.2018
15:39:17
может можно в rules заставить его передавать value тегом?

Paul
24.01.2018
15:39:18
Народ, а так задумано, что ALERT имеет всегда value 1?
да, так задумано, это своеобразное понимание булевой логики в проме

0 - false, 1 - true

Andrew
24.01.2018
15:40:01
Это таблица в графане? Ты ж вроде в алерту собирался вывести, не?

Nik
24.01.2018
15:40:31
Это таблица в графане? Ты ж вроде в алерту собирался вывести, не?
В процессе, там оч много зависимостей, решил послать их, мне ща чувак собирает докер и контейнер с алертой

Пока паралельно кручу графану

Andrew
24.01.2018
15:40:41
Какой-нибудь override ячейки не прокатит? Или это только в singlevalue работает ?

Nik
24.01.2018
15:41:01
Andrew
24.01.2018
15:42:07
Так стоп, изначально value - это значение метрики на которую взводится алерт, так?

Andrew
24.01.2018
15:42:28
И вот это значение не передается в графану?

Какой там query сформирован, чтобы забирать эти поля? Если вручную его выполнить, все получается?

Google
Andrew
24.01.2018
15:47:14
А на мой вопрос есть рекомендации? А то я что-то туплю.

Andrew
24.01.2018
15:48:16
Только условие, эта переменная-переключатель не должна быть результатом запроса в базу :)

Т.е. это статически заданные варианты переменной, а именно - разные regexp-ы

Nik
24.01.2018
15:48:35
Бекенд за графаной у тебя кто?

Andrew
24.01.2018
15:48:49
Которые я потом пихать могу в regex соседнего template

Пром

Nik
24.01.2018
15:49:09
Ну сморти

первой переменной у меня хост type

он явно прописан в имени хоста

Andrew
24.01.2018
15:49:34
Суть в чем - я хочу не плодить разные дашборды, а на одном сделать toggle с группами хостов, а вторая переменная соответственно - список хостов на основе выбранной группы.

Nik
24.01.2018
15:49:46
А второй перменной имя хоста - и там используется предидущаяя переменная для фильтрации в regexp

Умные люди интегрятся с консулом как то

Но если у тебя тип хоста прописан в имени хоста - то можно проще

Andrew
24.01.2018
15:50:30
Ну у меня пока нет консула и добавлять его пока не хочется.

В том-то и дело, что типа хоста/группы нет в labels у Прома

Nik
24.01.2018
15:50:56
Ну у меня пока нет консула и добавлять его пока не хочется.
Он мне не понравился - в итоге пишем свой dns + inventory

Andrew
24.01.2018
15:51:09
есть только instance, но на основе hostname - не всегда можно делать вывод о том, к какой групппе он принадлежит.

Google
Nik
24.01.2018
15:51:10
Например.

У меня хосты dc1smp1 dc1web1 dc1back1

и так до 9

dc1smp9 dc1web9 dc1back9

И я делаю фильтр по smp/web/back

и потом по этому фильтру в регекспе оставляю только нужные хосты

Andrew
24.01.2018
15:53:02
Вот! А как ты фильтруешь? Чтобы юзер мог на даше выбрать этот вариант фильтра.

Nik
24.01.2018
15:53:45




Во второй переменной использую первую

Andrew
24.01.2018
15:54:36
Так, я понял, ща соображу.

Nik
24.01.2018
16:00:58
annotations: { value: "{{$value}}" }?
Это кстати помогло протащитьв alertmanager, спасибо!

Andrew
24.01.2018
16:05:43
Блин нет, так не выйдет все же. У меня нельзя из hostname инстанса получить однозначно его тип. Т.е. несколько разных hostname-ов могу относится к одной группе. А при таком способе, мы не можем получить уникальное значение после фильтрации, чтобы использовать его уже в regex-е соседнего шаблона.

Andrew
24.01.2018
16:07:56
То что содержится колонках Прома - ничего. Включая джоб - джобы одинаковые везде... Почему блин нет возможности создать переменную, которая будет содержать выбранное значение - заданное вручную, НО при этом чтобы был маппинг того что отображается в выпадаемом списке в конечное значение.

Типа: host_group var: type_1 = /regex1/ type_2 = /regex2/ и тд

Google
Nik
24.01.2018
16:09:51
можно подкрашивать на scrape_config

просто раскидай хосты на разные группы. И задай джобы с немного разным именем. job_a/job_b и так далее

экспортеры у тебя все стандартные и одинаковые на всех хостах?

Andrew
24.01.2018
16:12:04
Ага. Ну да, походу придется это разруливать либо на уровне разных джобов, либо делать какой-то relabel умный.

Например добавлять label новый, на основе уже сложных фильтров-regex-ов instance-а

Nik, спасибо за продуктивный диалог, реально помог прийти к решению :)

Alexander
24.01.2018
16:19:58
Кто то знает как работает aliasSub() в carbonapi ? Он явно не совместим с реализацией в графите\

Alexander
24.01.2018
16:23:00
maximumBelow(aliasSub(sortByName(cloudXX.OS_metrics.cloudXX*.$XX_nodes.mysql-database.mysql_commands-*), '.*\.(.*)\.mysql-database\.mysql_commands-(.*)', ' \1 - \2'), 10000)

Admin
ERROR: S client not available

Alexander
24.01.2018
16:23:14
в графите такой экспрешен работает отлично

в карбонапи не работает

Vladimir
24.01.2018
16:27:58
там есть один мелкий баг, который надо отловить, как раз связанный с "-"

но кроме этого с совместимостью ничего нельзя сделать

все идет от того что в graphite-web - pcre, а в Go - re2-like реализация

Sergey
24.01.2018
16:28:45
все идет от того что в graphite-web - pcre, а в Go - re2-like реализация
ты можешь при желании припихнуть в карбонапи pcre

Vladimir
24.01.2018
16:28:54
с минусом конкретно бага, он почему-то ломает подстановки

я пока не смотрел

Google
Alexander
24.01.2018
16:31:28
т.е. совет - избавиться от минуса?

Я кстати понял почему не работало applyByNode

судя по issues только в master asPercent начал работать нормально

а у меня эта функция как один из аргументов использовался

@Civiloid может текущий carbonapi протеггировать каким нибудь 0.8.1 релизом?

Vladimir
24.01.2018
17:30:43
@Civiloid может текущий carbonapi протеггировать каким нибудь 0.8.1 релизом?
Я потегаю как мы у себя в проде на него перейдем

И вообще я думаю нумерацию сменить

Nklya
24.01.2018
17:32:37
На 2018.01 ?))

Vladimir
24.01.2018
17:46:24
Хз

Мб будет подобие semver

Sergey
24.01.2018
17:46:49
Мб будет подобие semver
гонка версий а-ля хром объявляется открытой

Vladimir
24.01.2018
17:47:52
гонка версий а-ля хром объявляется открытой
Ну мне не хочется делать версию 1.0 пока не будет совместимости с графитом

Vladimir
24.01.2018
17:48:15
Поэтому вероятно будет 0.8.20180124

т.е. никогда
Не, ну можно конечно и забить

Alexander
24.01.2018
17:50:54
гонка версий а-ля хром объявляется открытой
разве ж в хроме гонка версий. вот то ли дело less или xterm

Alexander
24.01.2018
18:00:40
Ну мне не хочется делать версию 1.0 пока не будет совместимости с графитом
А есть список того чего не хватает для этой самой совместимости?

Vladimir
24.01.2018
18:00:55
И это тока до 1.0

https://github.com/go-graphite/carbonapi/blob/master/COMPATIBILITY.md

Хотя кажется fallback есть в мастере

Alexander
24.01.2018
18:03:38
мда, не мало

Vladimir
24.01.2018
18:04:48
Там самое сложное это map и reduce

Страница 429 из 681