Как правильно настроить журналирование (логирование)?

Как можно наиболее эффективно отслеживать действия пользователей, когда админка отправляет запросы на разные независимые сервисы, и логирование на каждом сервисе не подходит? Возможно ли настроить централизованное логирование с помощью дублирования запросов в собственный сервис и передачи данных в инструмент аналитики, такой как Kibana?
  • 16 мая 2024 г. 10:10
Ответы на вопрос 2
Для настройки журналирования (логирования) в данном случае можно использовать централизованный логгер, который будет перехватывать и анализировать все запросы, отправляемые из админки на разные сервисы. Как вариант, можно настроить отправку логов через системные журналы операционной системы и далее собирать их с помощью специального инструмента для сбора и анализа логов, такого как Elasticsearch и Kibana.

Для реализации централизованного логирования с дублированием запросов в собственный сервис можно использовать промежуточный слой, например, reverse proxy или middleware, который будет перехватывать все запросы из админки, дублировать их и отправлять в целевой сервис, а также сохранять логи в свой локальный хранилище или передавать данные в инструмент анализа логов, такой как Kibana.

Таким образом, можно эффективно отслеживать действия пользователей и запросы, отправляемые из админки, и анализировать их с помощью удобного инструмента визуализации данных, такого как Kibana.
Есть, посмотрите на https://vector.dev/ Может доставлять логи с разных мест в разные места. 
Можно еще прикрутить https://docs.victoriametrics.com/victorialogs/ вместо эластика. Ну и victoriametrics при желании :)

Как альтернативы рассмотреть filebeat, logstash, fluentd.
Похожие вопросы