5.2 Использование функции ведения журнала
Функция ведения журнала может быть полезна при разработке и тестировании вашего приложения и развертывании MySQL Router. Для использования ведения журнала, включите параметр ведения журнала level в файле конфигурации в разделе, названном [logger]. Например:
[logger]
level = INFO
Установите расположение файла журнала с помощью параметра logging_folder, определенного как путь к каталогу в разделе [DEFAULT] файла конфигурации. Файл журнала имеет имя mysqlrouter.log. Например:
[DEFAULT]
# Logs are sent to /path/to/folder/mysqlrouter.log
logging_folder = /path/to/folder
[logger]
level = DEBUG
Установление logging_folder в пустую строку отправляет журналы в консоль (stdout).
Два распространённых уровня ведения журнала — это INFO (по умолчанию) и DEBUG:
INFO: включает информационные сообщения, подобные показанным выше, и является значением по умолчанию.DEBUG: включает сообщения, сгенерированные внутри исходного кода Router для использования в диагностике.DEBUGпредоставляет подробную информацию о внутренней работе Router. Хотя она может не представлять интереса для приложения, использованиеDEBUGможет быть полезным, если у вас возникла проблема или Router ведет себя не так, как ожидается.
Следующий пример показывает, как выглядят сообщения для уровня ведения журнала DEBUG; сравните сообщения INFO и DEBUG:
2019-04-07 18:25:56 INFO [0x700009673000] Connections using ssl_mode 'PREFERRED'
2019-04-07 18:25:56 INFO [0x700009673000] Connected with metadata server running on 127.0.0.1:3310
2019-04-07 18:25:56 DEBUG [0x700009673000] Updating metadata information for cluster 'devCluster'
2019-04-07 18:25:56 DEBUG [0x700009673000] Updating replicaset status from GR for 'default'
2019-04-07 18:25:56 DEBUG [0x700009673000] Replicaset 'default' has 3 members in metadata, 3 in status table
2019-04-07 18:25:56 DEBUG [0x700009673000] End updating replicaset for 'default'
2019-04-07 18:25:56 INFO [0x700009673000] Changes detected in cluster 'devCluster' after metadata refresh
2019-04-07 18:25:56 INFO [0x700009673000] Metadata for cluster 'devCluster' has 1 replicasets:
Вращение журнала
Router поддерживает вращение журнала; ниже приведены сценарии с примерами реализации.
Эта функциональность не поддерживается в Windows.
Вращение по требованию
Вращение журнала по требованию можно выполнить в два шага: переименовать файл журнала и затем уведомить Router о создании и переключении на новый файл журнала.
Выполните вращение журнала либо непосредственно из командной строки системы, либо из скрипта, который можно вызывать автоматически в качестве запланированной задачи. Например:
sudo mv /var/log/mysqlrouter/mysqlrouter.log /var/log/mysqlrouter/mysqlrouter.log.old
kill -HUP $(pidof mysqlrouter)
logrotate
Механизм logrotate также может вращать файл журнала Router. После вращения Router будет уведомлён о повторном открытии файла журнала, что достигается отправкой сигнала HUP процессу Router. Пример файла конфигурации logrotate:
/var/log/mysqlrouter/mysqlrouter.log {
rotate 9
size 10M
create 0755 mysqlrouter mysqlrouter
postrotate
kill -HUP $(pidof mysqlrouter)
endscript
}
В примере журналы вращаются как mysqlrouter.log, mysqlrouter.log.1, ..., mysqlrouter.log.9. Вращение происходит на основе размера текущего файла mysqlrouter.log, только если размер превышает 10 МБ. Предполагая, что эта конфигурация сохранена как /etc/mysqlrouter/logrotate.conf, она может выполняться периодически (добавлена в cron) следующим образом:
[sudo] logrotate /etc/mysqlrouter/logrotate.conf
© 2025 Oracle
Licensed under the GPLv2 License.