Логи Мессенджер и ВКС
Назначение документа
В данном документе описаны инструменты сбора серверных логов и описано расположение логов.
Документ предназначен для использования администраторами организации.
Дополнительная документация
Инструкция по настройке интеграции с SIEM-системой — в документе представлено описание логируемых событий и формат log-файлов, а также настройка отправки log-файлов в SIEM-систему.
Сбор логов
Способ 1. Универсальный инструмент сбора логов report.sh
Для сбора логов, информации о системе и оборудовании, а также копий конфигурационных файлов — под пользователем root выполнить команду
с необходимым ключом:
-
-s— информация о системе; -
-k— логи подов кубернетиса; -
-l— информация о системе и логи за последние 2 часа; -
-h— справка; -
-F— выгрузка полных логов; -
-f— выгрузка указанных логов сервиса за определенный период времени:
Для выгрузки необходимо указать ключи:-f— сервис;-B— начальная дата поиска;-A— конечная дата для поиска.
Формат указания даты ГОД-МЕСЯЦ-ЧИСЛО.
Можно указывать несколько сервисов через ключ-f, например:-f beagle -f krtek.
Если ключAне указан, то будут найдены log-файлы за период указанный в-Bпо текущий день.
Если ключи-Aи-Bне указаны, будут найдены все доступные log-файлы за весь период.
Пример работы скрипта report.sh с ключом-f:
Скрипт соберет логи за указанный период. Вывод команды будет следующим:
[14:44:12] Все данные будут размещены в каталоге /mnt/log/report [14:44:12] Создаю директорию /mnt/log/report [14:44:12] Создаю директорию /mnt/log/report/find_log [14:44:13] Для отправки данных в MAIL.RU GROUP вам потребуется сетевой доступ к https://files.icq.com [14:44:13] Отправить собранные данные в MAIL.RU GROUP? 1) Yes 2) No
-
-d— выбор директории для выгрузки логов;Пример работы ключа:
Команда сохранит полную выгрузку report.sh в папку /tmp/report. Вывод команды будет следующим:
Ключи можно комбинировать, а также указывать несколько сервисов для поиска, например:
Скрипт report.sh умеет отправлять собранные данные в службу технической поддержки. Для отправки выберите пункт 1 (Yes) в ответ на вопрос «Отправить собранные данные в MAIL.RU GROUP?». Отправка осуществляется только в том случае, если есть сетевой доступ до сервера https://files.icq.com. Иначе необходимо передать все собранные данные другим способом, например, разместить их для скачивания на собственных серверах.
Пример работы скрипта report.sh с ключом -f:
По умолчанию все собранные данные сохраняются в каталоге /mnt/log/report.
Если необходимо изменить каталог, выполните команду с указанием каталога, в котором будут сохраняться временные данные, например:
Способ 2. Логи Vector
Данный способ используется, если нет возможности загрузить report.sh, либо это избыточно (например, после выполнения команд по просьбе службы технической поддержки).
Под пользователем root выполнить команду:
и прислать поддержке архив vector.tar.gz.
В Vector хранятся логи всех сервисов, которые пишут их в стандартное место (большинство сервисов). Логи размещаются в директорию /var/log/vector/k8s в виде текстовых файлов c группировкой по пространству имен.
Расположение логов
Логи звонков
Логи видеоконференций можно смотреть в k9s, под janus.
В службу технической поддержки можно передать как выжимку за конкретную дату, так и файл целиком в виде архива.
Логи отдельных служб
Сервисы Мессенджер и ВКС могут писать логи в нестандартное место, указанное в конфигурационном файле сервиса.
Большинство логов находится в /var/log/service/ (пишутся только ошибки и выводы) и в /mnt/log/oap/icq/logs (логи сервисов за последний час).
Php: /srv/store/logs/
Nginx до ротации: /oap/icq/domains/local_proxy.icq.com/logs
Nginx после ротации: /oap/icq/domains/local_proxy.icq.com/logs/old_logs
Сервис Go-files: /oap/icq/logs/go.files.icq.com/
БД MySQL: /db/logs/mysql
БД Tarantool: /data/tarantool/logs
Логи Kubernetes
В случае проблем с подами Kubernetes:
Ошибки: kubectl logs <pod>
Описание: kubectl describe <pod>
Либо под пользователем root можно использовать оснастку k9s. Данный интерфейс отображает запущенные поды с их статусами.
Логи Docker
Статус сервисов, запущенных в Docker-контейнере: docker ps
Статус всех сервисов, развернутых в Docker-контейнере: docker ps -a
Логи сервиса Keycloak
Логи находятся в /var/log/vector/k8s/keycloak/keycloak/*
При наличии проблем с синхронизацией пользователей в первую очередь следует отслеживать записи уровня ERROR. Пример такой ошибки: дубликат пользователя — когда один и тот же пользователь заведен в нескольких ветках LDAP-каталога. Как правило, после каждой записи ERROR идет трассировка ошибки для более детального анализа.
