Настройка формата записи в rsyslog

Есть Debian 8 (Jessie), на котором надо настроить запись сообщений от конкретной программы в отдельный файл. Предположим, есть программа, записывающая в rsyslog:

#include <syslog.h>
int main()
{
    openlog("mylog", LOG_CONS, LOG_USER);
    syslog(LOG_INFO, "%s", "Hallo, rsyslog");
    closelog();
    return 0;
}

В /etc/rsyslog.conf: добавил

if $programname startswith "mylog" then /home/user/log/test.log
& stop

Перезапускаю rsyslog, в файле /home/user/log/test.log:

Dec 12 14:15:16 mylog: Hallo, rsyslog

Очень бы хотелось бы, чтобы в лог попадало бы только "Hallo, rsyslog", но не получается. Я добавлял в `rsyslog.conf'

template(name="outfmt" type=list option.jsonf="on") {
    property(name="msg" format="jsonf")
}
action(type="omfile" file="/home/user/log/test.log" template="outfmt")

и получил:

"msg":"Hallo, rsyslog"Dec 12 14:15:16 mylog: Hallo, rsyslog

Можно ли добиться желаемого вывода и как?


Ответы (0 шт):