Назад | Перейти на главную страницу

Невозможно получить структурированные данные Rsyslog в сообщении системного журнала

Я новичок в модуле системного журнала. Я пытаюсь регистрировать сообщения со структурированными данными, используя этот параметр в шаблоне. Но для структурированных данных он показывает нулевое значение. Я работаю с rsyslogd 5.8.11 и rsyslogd 4.8.4, и для обеих версий я получаю одинаковые результаты.

Я использую шаблон:

"<%PRI%>%TIMESTAMP:::date-rfc3339%%HOSTNAME%%syslogtag%%APP-NAME%%PROCID%%MSGID% %msg% %STRUCTURED-DATA%\n”

получение формата сообщения, как показано ниже:

<142>  2015-01-29T06:43:53.081641-05:00 localhost login[2116]: login 2116 -  [2116 : 2116 INFO]SERIAL Login from IP:127.0.0.1 user:admin -

может кто-нибудь сказать мне, что я делаю не так?. Я просто хочу записать сообщение со структурированными данными с SD-ID, SD-PARAM в файл журнала.

rsyslog может отправлять сообщения RFC5424 со структурированными данными.

Но есть ли у вас способ отправлять сообщения RFC5424 к rsyslog? - Он должен работать, если вы регистрируете свои сообщения напрямую через UDP или TLS. Но если вы входите в систему с помощью традиционных функций системного журнала BSD, то не будет ни структурированных данных, ни MSGID. (AFAIK NetBSD имеет единственную библиотеку с поддержкой RFC5424 с syslogp () функция.)

Я тоже пытаюсь этого добиться. Мне удалось узнать, как передать формат сообщения RFC5424 с помощью шаблона RSYSLOG_SyslogProtocol23Format. Однако я не знаю, как добавлять поля к структурированным данным. Кроме того, чего стоит, я успешно отправляю / получаю формат RFC5424 с помощью syslog-ng.