Hilik - syslogd

Правильна настройка логів (системних журналів подій) один з важливих моментів в системному адмініструванні. В логах знаходиться все, що потрібно сисадміну для пошуку проблем в системі. У базовій системі FreeBSD є syslogd, він займається записом в логи повідомлень від різних сервісів системи. За настройку логування відповідає конфігураційний файл syslogd.conf.

У файлі налаштувань визначається в який файл будуть писатися повідомлення. Повідомлення фільтруються по priority (пріоритету), по facility (це по суті від кого надходять повідомлення, наприклад від ядра вони позначаються як LOG_KERN), а так само на ім'я програми відправляє повідомлення.
Виходячи з цих особливостей ми можемо фільтрувати повідомлення, тобто писати повідомлення кожного типу в свій файл.
Наприклад запис повідомлень від ядра (фасилити LOG_KERN) з пріоритетом критичної помилки (LOG_CRIT) в файл /var/log/kern.crit повинна в syslogd.conf налаштована так:

якщо є необхідність будь-які повідомлення з пріоритетом LOG_ERR писати в файл, налаштовується це так:

Те ж саме відноситься до фасилити. Наприклад, що б всі повідомлення, з будь-якими пріоритетами від поштової системи писалися в файл / var / log / maillog, потрібно внести такі настройки:

Наступна важлива можливість, це можливість писати в файл події потрапляють під один з перерахованих фільтрів. Наприклад, якщо ми хочемо писати в файл / var / log / error, події з пріоритетом LOG_CRIT і LOG_ERR, то в syslogd.conf це запишеться так:

І в заврешенія розмови про фільтри, приклад як Залогуватися всі події в один файл.
Налаштовується це так:

Цей приклад є в файлі syslog.conf

Важливо так само прибрати опція -s на приймаючій стороні, інакше опція -a буде ігноруватися. На відсилає повідомлення стороні, якщо буде вказано прапорець -ss, то повідомлення відправлятися не будуть. Якщо ви хочете казать кілька мереж від яких потрібно приймати повідомлення або ж просто декілька хостів, то потрібно додавати прапор -a для кожної мережі або хоста.