У меня есть запись программы в Syslog, и я хочу разделить эти сообщения на отдельные файлы.
Я хочу, чтобы все сообщения, сгенерированные MyApp
, отправлялись на /var/log/my_app.log
, а все сообщения, созданные warn
или более серьезными, также отправлялись на /var/log/my_app.err
.
Я не хочу, чтобы сообщения заканчивались на /var/log/syslog
, как сейчас.
Я создал новый файл конфигурации rsyslog /etc/rsyslog.d/10-my_app.conf
, в котором у меня есть:
if $programname == 'MyApp'
then
{
if $pri <= 4
then
{
/var/log/my_app.err
}
/var/log/my_app.log
& stop
}
Но работает только частично. Все сообщения попадают в my_app.log
, половина сообщений по-прежнему появляется в syslog
, а в my_app.err
ничего не появляется.