Логи системы и модулей
При функционировании MajorDoMo ведется несколько видов логов (журналов событий), которые содержат отладочную информацию или сведения об ошибках.
Условно можно выделить две категории логов – внутренние логи самого MajorDoMo и внешние логи прикладных сервисов и операционной системы, так или иначе связанных с работой MajorDoMo (web-сервер Apache, база данных MySQL/MariaDB).
Состав и размещение внутренних логов почти не различается между инсталляциями на Windows или Linux. Состав и размещение внешних логов зависит от используемой операционной системы.
Внутренние логи
Внутренние логи MajorDoMo представлены логом главного цикла (cycle.php), логами системных циклов и модулей (/scripts/cycle_*.php) и debmes-логами ядра и модулей.
Все внутренние логи, за исключением лога главного цикла, размещаются в каталоге /cms/debmes и хранятся в виде текстовых файлов с расширением *.log или *.txt. Для их просмотра в web-интерфейсе Панели управления необходимо воспользоваться вкладкой Debug модуля X-Ray. В выпадающем списке можно выбрать требующийся лог, и он будет загружен для просмотра.
Также их можно открыть в любом текстовом редакторе, перейдя в файловом менеджере (проводнике) в каталог /cms/debmes.
Лог главного цикла на Windows платформах не пишется в файл, а выводится в реальном времени в окно командной строки (start.bat).
На Linux платформах наличие и место размещения лога главного цикла зависит от конкретного способа реализации его автозапуска (юнит systemd, демон init.d, crontab, rc.local). Как вариант это могут быть файлы majordomo.err и majordomo.log в каталоге /var/log (актуально на официальном образе для Raspberry Pi).
При реализации автозапуска главного цикла через юнит systemd лог можно просмотреть в консоли постранично с помощью команды
1 |
journalctl -u majordomo |
или в реальном времени командой
1 |
journalctl -f -u majordomo |
Следует помнить, что некоторые модули имеют встроенные настройки логирования. Поэтому предварительно требуется их включить, если это необходимо. При штатной работе модулей любое логирование рекомендуется выключать.
Важно! По умолчанию логи циклов системы и модулей отключены.
Чтобы включить логирование работы циклов, необходимо в файле конфигурации MajorDoMo (config.php) раскомментировать (при наличии) или добавить такую строку.
1 |
Define('LOG_CYCLES', 1); |
Затем сохранить изменения в файле и перезапустить службу MajorDoMo для применения изменений и перезапуска всех циклов.
Внешние логи в ОС Windows
Лог web-сервера Apache располагается в файле apache_error.log в каталоге c:\_majordomo\server.
Либо в файлах access.log и error.log в каталоге c:\_majordomo\server\Apache\logs (зависит от конфигурации виртуального сервера Apache).
Логирование работы базы данных MySQL/MariaDB по умолчанию не выполняется.
Внешние логи в ОС Linux
Логи web-сервера Apache располагаются в файлах access.log и error.log в каталоге /var/log/apache2.
Логирование работы базы данных MySQL/MariaDB по умолчанию не выполняется, но если его включить в конфигурационном файле БД, то логи будут находиться в каталоге /var/log/mysql.
Заключение
В качестве заключения подытожим.
- Список каталогов с логами:
- /cms/debmes
- c:\_majordomo\server
- c:\_majordomo\server\Apache\logs
- /var/log
- /var/log/apache2
- /var/log/mysql - При обращениях для решения возникающих проблем на форуме, телеграм-чате или в Connect следует прилагать к своему вопросу данные из соответствующих логов.
- Следует следить за размером логов и контролировать их ротацию, чтобы не исчерпать свободное место на системном разделе карты памяти или жесткого диска, а также вовремя реагировать на ошибки, фиксируемые в журналах событий.