ls /etc/rsys*
rsyslog.conf rsyslog.d/
IncludeConfig /etc/rsyslog.d/*.conf
$ <переменная> <значение>
#### MODULES ####
module(load="imuxsock" # provides support for local system logging (e.g. via logger command)
SysSock.Use="off") # Turn off message reception via local log socket;
# local messages are retrieved through imjournal now.
module(load="imjournal" # provides access to the systemd journal
StateFile="imjournal.state") # File to store the position in the journal
#module(load="imklog") # reads kernel messages (the same are read from journald)
#module(load"immark") # provides --MARK-- message capability
Модули ввода — можно рассматривать, как способ сбора информации из различных источников, начинаются с im;
Модули вывода — позволяют отправлять сообщения в файлы или по сети, или в базу данных, имя начинается на om;
Модули фильтрации — позволяют фильтровать сообщения по разным параметрам, начинаются с fm;
Модули парсинга — предоставляют расширенные возможности для синтаксического анализа сообщения, начинаются с pm.
MarkMessagePeriod 1200
ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
Дальше следует набор прав разрешений для файлов-журналов, которые будут созданы в вашей системе:
FileOwner root
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
*.info;mail.none;authpriv.none;cron.none /var/log/messages
auth;
authpriv;
cron;
daemon;
kern;
lpr;
mail;
mark;
news;
security (эквивалентно auth);
syslog;
user;
uucp;
local0 … local7;
emerg (раньше panic);
alert;
crit;
error (раньше err);
warn (раньше warning);
notice;
info;
debug.
Вы можете выполнять фильтрацию сообщений с помощью такого синтаксиса:
:<поле>, <сравнение>, '<значение>' <путь_к_файлу>
contains — поле содержит указанное значение;
isequal — поле должно быть идентичным значению;
startswith — поле должно начинаться со значения;
regex — сравнивает поле с регулярным выражением.
:syslogtag, isequal, 'giomanager:' /var/log/giomanager.log
& stop
if $<поле> <сравнение> '<значение>' then <путь_к_файлу>
if $syslogtag == 'giomanager' then /var/log/giomanager.log
*.info;mail.none;authpriv.none;cron.none @xx.xx.xx.xx:514
if $fromhost-ip contains '192.168.1.10' then /var/log/proxyserver.log
Без фильтров сообщения с разных машин будут писаться в один общий лог системы linux в зависимости от того, как вы их распределите.