Привет performance lovers!
Придумывал как анализировать данные профилирования в pipeline (автоматически)
И придумал схему с InfluxDB
Длительность
🤩1 минута — через такое время после проблемы срабатывает алерт
🤩15 минут — через такое время после запроса данных профилирования, формируется готовый к анализу файл
🤩30 минут — столько времени занимает анализ файла профилирования и формирования отчета
🤩60 минут — в файле профилирования хранятся данные за последние 60 минут с момента сохранения файла
Проблема
В общем, процесс не быстрый
🤩за 1+15 минут успеет случится до 16 алертов
Отработать каждый из них отдельно неэффективно. Ведь у нас есть файл за 60 минут, все 16 алертов туда поместятся
Нужен накопитель
🤩а что если накапливать информацию по необработанным алертам в InfluxDB и отрабатывать их группами
Выбрал тут InfluxDB потому что оказалось просто отправить по HTTP в это хранилище сообщение-метрику
И тот механизм который отправляет алерты через HTTP WebHook в мессенджер, также отправляет теперь и сообщение в базу данных
Нужно теперь обработать алерты
Вот это сложная часть. Пока есть только идеи, как можно это сделать. Дорабатываю инструменты, дроблю и уточняю алерты
Надеюсь, получится через год передать автоматике тот процесс, который сделал уже вручную сотню раз
Post #207
327
- ❤ 4
- 👍 2