TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Евгений Козлов пишет про IT

14 Mar, 13:26

Открыть в Telegram Поделиться Пожаловаться

Метрики? Метрики! Метрики...Или введение в Prometheus и Monitoring

Ох уж это волшебное слово которое я слышу чуть ли не каждый день. Всем нужно что-то считать, оценивать. Визуализировать и оценивать реальность во всех ее проявлениях. Кто-то считает заработанные денежки, кто-то потраченные, кто-то и то и другое. В общем считать это нужное и полезное занятие.

В том числе это нужно и нам - разработчикам. Для поддержки высокого уровня сервиса и строить надежные системы важно понимать как функционирует написанный нами код и железка на которой мы его развернули. А понимание можно извлечь только собирая информацию и вариантов у нас обычно 3 - логи, метрики, трейсы. Если с логами все интуитивно понятно - это фиксация фактов / событий в нашей системе. Их легко начать собирать и пользоваться ими, то с метриками дела обстоят веселее и стартануть в их сборе также быстро как с логами не получится, про трейсы вообще молчу.

Но вернемся к метрикам. Я мог бы написать целое полотно, о том как это всё работает, но считаю что лучше будет поделиться с вами материалами которые помогли лично мне разобраться с тем как работает сбор метрик, их хранение и визуализация. Возможно они будут вам полезны и помогут сделать тот самый первый шаг к изучению предмета.

📖Шаг №1 - Нескучная теория

Первым делом я советую прочитать цикл статей "Человеческим языком про метрики". Это настоящее сокровище, ничего лучше на русском языке мне не встречалось. Очень доходчиво, с примерами. Покрывается все - мат.аппарат, технические детали работы Prometheus, визуализация. Не разобраться в предмете не получится

👨‍🔬Шаг №2 - Закрепляем теорию

Закрепить изученное в статье на практике можно с помочью https://demo.promlens.com. Это интерактивный визуализатор метрик по запросу. С возможностью разобрать запрос на этапы выполнения и получить пояснения. Можно засунуть в него свой эндпоинт для работы с метриками, а можно работать с источником по умолчанию https://demo.promlens.com/metrics

Примеры метрик которые можно быстро засунуть в него и посмотреть результат доступен в шпаргалке https://promlabs.com/promql-cheat-sheet/


🔬Шаг №3 - Экспериментируем на своей машине

После быстрого освоения построения визуализаций и готовых метрик в браузере можно переходить поближе к коду и практическому применению. Как пример - можно взять репозиторий https://github.com/ContainerSolutions/k8s-deployment-strategies и посмотреть как работают в связке K8s + Prometheus + Grafana. Как происходит экспорт метрик, увидеть на графиках разницу стратегий деплоя приложения.

Задача со звездочкой - добавить в свое приложение сбор стандартных runtime метрик. Гайд для Golang.

🤔Шаг №4 - А какие метрики мне нужны?

После того как мы овладели инструментом может возникнуть соблазн начать собирать все что только можно. Или наоборот ступор от того что все ещё непонятно - а что собирать то? И у сообщества есть ответ на этот вопрос:
- R.E.D. Metrics: Rate, Errors, and Duration
- U.S.E. Metrics: Utilization, Saturation, and Errors
- The “Four Golden Signals” Metrics: Latency, Traffic, Errors, and Saturation

Эти метрики станут надежным фундаментом для вашей системы мониторинга.

------

На этом у меня всё, пишите в комментариях как вы осваивали метрики, что для вас было наиболее сложным в понимании. Ну или расскажите какую нибудь историю с ними связанную😅
Человеческим языком про метрики 1: Потерянное введение
Однажды мне понадобилось внедрить метрики в сервисы своей команды. С самого начала я не понимал, что именно хочу получить: одно дело — прикрутить библиотеку и нарисовать графики, другое дело —...

2.6k 1 180 1 55
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot