Логирование
В этом разделе описаны возможности для настройки и использования встроенной системы сбора логов Melezh
Сбор информации о входящих запросах
При создании нового проекта Melezh, в нем по умолчанию включено логирование - сбор и з апись информации о входящих запросах и ответах на них. Логи хранятся в виде отдельных файлов в определенной структуре каталогов
По умолчанию основной каталог логов находится в директории temp/Melezh/<Случайный UUID проекта>
. Найти полный путь к этом каталогу, а также изменить его, можно в панели настроек веб-интерфейса или при помощи соответствующих консольных команд
Внутри основного каталога логов иерархия строится следующим образом:
- Каталог обработчика
- Каталог на дату (хранит логи за определенный день)
- Каталог конкретного запроса
- Каталог на дату (хранит логи за определенный день)
Файлы с информацией хранятся только в каталогах конкретных запросов, в то время как остальные уровни структуры каталогов хранят лишь вложенные подкаталоги
Формат записи
Каталог с информацией о конкретном обработанном запросе может содержать файлы одного из следующих видов:
req.info
- JSON файл с основной информацией о событии, вроде даты, HTTP-метода, URL параметрах и пр.req.body
- JSON файл с информацией о теле запроса. Содержит оригинальный JSON тела дляapplication/json
запросов или преобразованный в JSONform-data
req.header
- JSON файл со списком заголовков запросаres.body
- файл, хранящий тело ответа, возвращаемого Melezh- Произвольное количество дополнительных файлов, приходящих в
multipart/form-data
запросах
Запись тех или иных файлов зависит от типа запроса, а также от значений настроек, регламентирующих работу логирования
Настройка логирования
Для настройки логирования в Melezh есть несколько опций, отвечающих за путь сохранения, включение и отключение записи отдельных частей запроса, а также за ограничение их максимального размера:
- logs_path - путь сохранения логов. Для отключения логирования установите пустое значение
- logs_req_headers - логирование заголовков входящих запросов
- logs_req_body - логирование тела входящих запросов
- logs_req_max_size - отключение логирования logs_req_body для запросов, свыше этого размер (в байтах). 0 - без ограничений
- logs_res_body - логирование тела исходящих ответов
- logs_res_max_size - отключение логирования logs_res_body для запросов, свыше этого размер (в байтах). 0 - без ограничений
Работа с файлами логов напрямую может быть не совсем удобной. Для просмотра событий и поиска информации о конкретных запросах рекомендуется использовать средства просмотра логов встроенного веб-интерфейса (см. раздел Веб-интерфейс)