show

88

Популярные инструменты мониторинга и логирования

Недавно в комментариях был запрос на эту тему, поэтому решил поднять ее. Тема действительно интересная. Думаю, что в 2 захода управимся  Мне есть что рассказать про код и про проект в целом.
Начнем с кода, а если будет интересно, то и про серверы расскажу.

Тут на самом деле много придумывать не нужно. Самое простое, что можно сделать — логировать в файлы с ротацией.
Если проект небольшой, то ротацию делаем по объему. Если проект крупный и его часто посещают, то лучше создавать по дням.

К счастью, в python есть отличный пакет logging, который умеет ну практически все. Если говорить о моем любимом Django, то там logging тоже есть, и его поддержка встроена в фреймворк.

Что можно логировать таким способом?
В целом работу системы, чтобы потом можно было понять, до какой точки дошло выполнение функционала, что вернула интеграция и так далее.

Такое логирование не очень удобно лишь тем, что за данными нужно идти на сервер и разбирать там кучу информации и файлов, чтобы понять, в какой момент и что произошло.

Есть другой вариант: можно логировать в удаленные сервисы: sentry, elk, clickhouse.
Не совсем верно помещать их в один ряд, так как sentry работает из коробки и пишет в логи все, что попадается в 500 ошибках или что нужно добавить вручную. А вот elk и clickhouse сохраняют только то, что будет описано для сохранения.

Довольно популярен elk - elastic search, logstash, kibana. Такая вот связка для выполнения одной операции. Его подключают для того, чтобы логировать действия пользователей, например. Или, проще говоря, обращение к контроллерам или интеграциям. Есть даже специальный пакет для этих целей.

Очень удобно, когда в системе много пользователей и нужно найти инцидент с помощью тех поддержки, у которой нет доступа к серверу и файлам на нем. Если пользоваться пакетом, то можно легко зарулить в elk логирование входящей информации и исходящей, а также логировать необходимые действия внутри системы. Сбор информации идет очень полный и позволяет поместить все, вплоть до ip адреса пользователя.

Рассказать про логирование и мониторинг серверов?

Есть вопросы?

Хотите обсудить проект?

Напишите нам!