Comments 7
Не так давно появился telegraf, но все равно выбор не велик.
collectd
statsd
diamond
zabbix
Штуки от elasticsearch
Выбора вроде как много.
Ну это не так много, учитывая матрицу совместимости агент-хранилище.
Statsd не совсем агент, collectd сильно отстает от современного уровня детализации метрик, штуки от ES по-факту не метрики выплевывают, а сырые события, которые только в ES и ложатся, итд.
За statds ничего не скажу.
Про отставания от современного уровня детализации метрик — это как так? Если какая-то метрика кажется не слишком детальной — всегда можно расширить своей.
Про матрицу агент-хранилище слышать несколько странно. Collectd и штуки из ES спокойно можно засунуть в:
- Influxdb
- graphite (whisper)
- elasticsearch
- cassandra
- OpenTSDB
- prometheus
Проще найти хранилище, в которое метрики с collectd записать нельзя.
не метрики выплевывают, а сырые события, которые только в ES и ложатся
через logstash и можно куда угодно
В collectd у метрики идентификатор состоит из 4х фиксированных полей: plugin, instance, type, name. В таких рамках я не могу сделать метрику: количество GET запросов со статусом 400 к урлу / в логе /var/log/nginx/site.access.log. Именно это я имел ввиду под детализацией метрик. В prometheus это уже прекрасно ложится.
Про совместимость спорить не буду, наверное вы правы, было бы желание:)
В collectd у метрики идентификатор состоит из 4х фиксированных полей: plugin, instance, type, name. В таких рамках я не могу сделать метрику: количество GET запросов со статусом 400 к урлу / в логе /var/log/nginx/site.access.log. Именно это я имел ввиду под детализацией метрик. В prometheus это уже прекрасно ложится.
Возможно, я не совсем понимаю проблему, но это можно сделать двумя вариантами:
- Модуль python или модуль для bash, который будет считать такое. Если это nginx, можно предложить плагин exec и, например, такой скрипт сбора
cat /var/log/nginx/site.access.log | grep GET | grep 400 | wc -l
- В идеале, логи лучше тоже отдельно где-то собирать (например, в том же elasticsearch) и потом их анализировать.
Мониторинговый агент: простая штука или нет?