Кто любит халяву? Я люблю! А что ещё я люблю — так это халяву, подаренную мне в виде SaaS решения, которое любезно упаковано и вручено мне в пакетике. Let’s talk about Datadog.
Тут на днях вышел новый выпуск Девзена. Пришли два крутых гостя — Слава, который занимается в Дропбоксе SRE (Site Reliability Engineer), и Паша, который закончил аспирантуру на теоритического физика и решил сделать свой стартап по SaaS мониторингу — https://okmeter.io/.
Большую часть выпуска ребята рассуждали о том, какое Окметр — крутое решение. Как всё прекрасно сделано у него. Но вот не задача — Инвесторов парни не хотят привлекать, своих денег нет, а поэтому в компании накопился огромный бэклог, да и в US рынок выйти не получилось с первых попыток. А вот Datadog получил 100_000_000$ инвестиций, и у него теперь всё прекрасно.
Я и раньше слышал про то, что на рынке появилось много SaaS мониторингов. А тут у меня на одном сайте, любезно написанным мною за 600 рублей, отвалилась Базка. Узнал я про это довольно быстро. Всего-то прошло 15 минут, пока Яндекс.Метрика дала мне по шапке, сказав о неработоспособности ресурса. Было принято волевое решение настроить мониторинг (ещё 100 wmr!), чтобы сразу быть в курсах о том, что Что-то пошло не так.
Пошёл я значит на Окметр. Увы, эти парни хотят работать только с деловыми лодьми, и никакого бесплатного тарифа для бомжей — владельцев сайтов за 500 гривен, у них нет. На этом этапе я и отвалился. Ну, что же, может быть у тех, кто схватил с небес 100 лямов грина нашлось немного жалости, и они придумали бесплатный тариф? В точку! У Датадога есть такой. Идём к нему.
Ладно, шутки в сторону, поговорим конкретно про то, что есть в Datadog, а также, как это всё работает.
Приницип работы этого SaaS довольно простой. На каждой ноде (серваке, докер-контейнере, whatever) вы устанавливаете их демон — они называего его Агентом (почти 007, но нет). Этот демон умеет собирать некоторые базовые метрики про ваши CPU, IO, networking и, агрегируя данные порцияими, посылать всё это в Тайм-Сириис БД, которой и является в том числе Datadog.
Кроме того, у ребят из ДатаДога есть уева туча интеграций со всеми известными решениями, про которые они тоже умеют сами считать какие-то базовые метрики. Это и дефолтные Базки — Постгря, Май-сиквел, это и всякие nginx/apache, Это и новомодные Докеры, Гитлабы, Кубернетосы, Мезосы, и вообще у них сервисов 80 для интеграции. При включении итеграции с конкретным сервисом, ДатаДог предоставляет сразу кучу метрик, которые можно вывести на своих ДашБордах. Также есть и стандартные ДашБорды по каждой из технологий. Вот, например, часть графиков для MySQL:
Выше я говорил про бесплатный Графит. Тут речь идёт о том, что Вы конечно же можете создать любые свои метрики (Счётчики, Гистограммы, и другое), и пушить всё это дело в ДатаДог. Для этого вы будете использовать API DogStatsD. Это одна из утилит, которая идёт вместе с Агентом.
DogStatsD — крайне простая штука. Это в некотором роде буффер, который принимает в себя все ваши метрики, и время от времени флашит их на серваки к ДатаДогу. Тем самым снижая количество коннектов, и оптимизируя весь этот процесс. Для каждого языка программирования у ребят есть своя обёртка для этой тулзы, так что вам не стоит беспокоится.
Конечно же, у Datadog есть и HTTP APi по отправке метрик. Но тут вам самим нужно будет решить сразу несколько проблем. Во-первых, на каждый пуш метрики Датадог позволяет использовать только 100 байт payload, если мне не изменяет память. То есть, вы должны компресить данные. Во-вторых, вы не должны забывать про сетевой перфоменс.
Что ещё есть у Datadog? Своя Графана с картами и девушками. Конечно, она не такая крутая, но плюс минус большинство ворк-кейсов на этой системе визуализации графиков тоже можно сделать. Причём графический дизайн графиков выглядит вполне себе годно.
Last, but not least — это раздел Мониторинга. Тут вы можете повешать разные алерты на все ваши метрики с разной логикой нотификаций и прочего. Мониторинг позволит разбудить вашего админа, или чувака, кто написал сайтик за 500 рубликов, и сказать ему, что пора это дерьмицо чинить. Так что, тоже не забывайте про такую классную фичу.
Ну а в заключении, что тут можно сказать. SaaS мониторинг — это для тех, у кого стальные яйца. Кто не боится свои Сенсетив данные показать всему миру, пускай эти данные и представлены в некотором агрегированном роде. Конечно же, это вполне подходит тем, у кого сайтики про кошек и кисек. Но если говорить про нормальный бизнОс, где из-за падения сервисов потеряются деньги, а данные — вполне чувствительные, то от бесплатных Заббиксов, Графитов, Графан, Prometheus и InfluxDB, увы, никуда не дется.
Категории: Программирование