При регистрации BIND
запросов с использованием rndc querylog
, регистрация по умолчанию производится в /var/log/messages
. Можно ли изменить это место назначения регистрации и указать свой собственный файл журнала?
решение1
На страницах руководства по named.conf есть раздел о ведении журнала.
Просто убедитесь, что если вы используете chroot для своей службы DNS, то место назначения вашего журнала интерпретируется правильно.
В частности, синтаксическая схема выглядит следующим образом:
logging { channel string { file log_file; syslog optional_facility; null; stderr; severity log_severity; print-time boolean; print-severity boolean; print-category boolean; }; category string { string; ... }; };
решение2
Да! Вы можете определить канал журнала запросов и направить этот вывод в определенное место назначения файла журнала по вашему выбору, если вы не хотите, чтобы это было в файле сообщений syslog.
channel queries_log {
file "/var/named/log/queries" versions 600 size 20m;
print-time yes;
print-category yes;
print-severity yes;
severity info;
category queries { queries_log; };
Помните, что вы можете включать и отключать ведение журнала запросов с помощью rndc по мере необходимости для отладки проблем. Это поможет вам сэкономить несколько циклов ЦП и дискового ввода-вывода при нормальной работе. Измените образец, который я опубликовал, чтобы в вашей файловой системе не оказалось 600 файлов по 20 МБ с зарегистрированными запросами.
Просто в качестве практики постарайтесь иметь выделенный раздел и файловую систему для ваших журналов, чтобы его заполнение не оказывало негативного влияния на другие операции системы. т.е. поместите /var/log на его собственный раздел/слайс. В худшем случае, если он заполнится, вы можете потерять некоторые данные журнала, однако системные функции могут продолжаться.