Skip to content

Commit

Permalink
add new grafana post
Browse files Browse the repository at this point in the history
  • Loading branch information
ctrlok committed Nov 14, 2016
1 parent db590e3 commit 2076167
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@

ssl/
.Ulysses-favorites.plist
.Ulysses-Group.plist
.DS_Store
40 changes: 40 additions & 0 deletions content/post/Алертинг в Grafana.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
+++
title = "Новая графана"
date = "2016-11-14T12:57:42+02:00"

+++
# Алертинг в Grafana

Вышла бета новой Grafana 4. Я предварительно уже собирал графану из мастера в докере [тут](https://github.com/ctrlok/grafana-docker), поэтому те, кому не терпится попробовать, могут запуллить `ctrlok\docker` и поиграться.
# Новая графана
Всё смотрится очень прилично, несколько косметических улучшений, отлично доработали шаблоны, которых мне очень не хватало, и я для этого запилил <s>костыль</s> , проксирующее апи перед графитом, которое сейчас можно отправлять на помойку. Особняком стоит алертинг — самое интересное нововведение.
![](DraggedImage.png)
# Алерт
Начну с того, что вызвало больше всего вопросов: алерт может быть только один на график. Мне уже несколько раз высказали недоумение по этому поводу. Но я наоборот очень рад, что возможность создавать только один алерт на график вынуждает составлять отдельные дашборды для алертинга.
В современном мониторинге мало кто различает виды мониторинга, и в итоге мы получаем дашборды, в которых смешались кони, люди, часть которых используется при оперативном мониторинге, другая при дебаге, и так далее. Намешивать сюда ещё и алертинг, вообще специфичный по своей природе, было бы большой ошибкой, и я рад, что в графане нельзя сделать каку.

# Остальное
В целом, всё смотрится очень интересно и целостно: можно перетаскивать ползунок алерта и смотреть, где он сработает.
![](grafana.gif)

Аннотации на сработавшие алерты:
![](DraggedImage-1.png)

Особенно мне нравятся оповещения в слак:
![](DraggedImage-2.png)

Это очень круто и добавит пользы. Правда, жаль, что пока непонятно, как связать эти графики и интеграцию opsgenie со слаком.

# Уровни срабатывания
Порог срабатывания алерта можно выставить только один. И это ОЧЕНЬ хорошо в среднем случае. Потому что варнинги могут помочь только в редком-редком и очень абстрактном кейсе. Не знаю, чем было продиктовано такое решение, но оно правильное.

# Роутинг
Какого-то особо продвинутого роутинга пока нет. Не знаю, хорошо это или плохо, но достаточно здраво сочетается с оповещалками типа victorops или opsgenie.
Да и вообще делать роутинг не очень-то и просто, так как этот роутинг должен быть достаточно устойчив к отказам, и тогда саму графану пришлось бы уже заворачивать в какой-то кластер, типа того, как это сделано у sensu.
А так просто поднимаешь две графаны, которые ходят в одну базу, и говоришь им, что в случае чего пиши в opsgenie.
Звучит просто и работает просто.

# Остальное и выводы

Конечно, функций для выполнения условий алерта может показаться мало (min, max, sum, avg, count, last). Если используешь графит, то проблемы быть не должно, потому что всё остальное там уже есть, и в итоге всё равно приводишь любой график к тому, чтобы он нормально смотрелся и тригеррился по описанным выше функциям. В случае других хранилищ могут возникнуть какие-то проблемы.
Но в целом, следующая система мониторинга, которую я буду строить, вероятнее всего будет на графане, потому что плюсов намного больше, чем минусов.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions ulysses_mv.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/bash
find . -name "index.md" | while read LINE; do mv -f "$LINE" "$(echo $LINE | sed 's/\/index.md$/.md/')"; done

0 comments on commit 2076167

Please sign in to comment.