Мы настроили центральный сервер журналов с помощью rsyslog. Мне просто было интересно, можно ли отправить IP-адрес вместе с сообщением системного журнала от клиента.
Я отправляю сообщение с использованием шаблона и пробовал использовать % fromhost-ip%
. Как и ожидалось, на удаленном сервере он отображается как 127.0.0.1
.
Поэтому мне было интересно, можно ли как-нибудь встроить переменную bash в
rsyslog.conf.
Единственная альтернатива, которую я вижу, - это жестко запрограммировать ip, который выглядит не очень хорошо.
В настоящее время я использую указанный ниже шаблон.
$template linux_err,"<%PRI%>%TIMESTAMP% %source% %syslogtag% %smg%"
Предположительно использование % fromhost-ip%
на принимающем сервере - единственный вариант.
В документации четко написано, что если вы получаете сообщения от локальной системы, то в качестве ip вы получите 127.0.0.1.
Здесь,http://www.rsyslog.com/doc/master/configuration/properties.html
попробуйте отправить его из какой-нибудь другой системы. Меня устраивает.
Или же, если IP для вас не важен и вы просто хотите отличить хост, используйте свойство %hostname%.