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

Как правильно добавить системный журнал на сервер Observium?

У меня есть сервер Ubuntu 16.04, на котором я установил Observium для мониторинга самого сервера, и эта часть работает нормально, я могу видеть журналы событий.

После этого я выполнил инструкции по добавлению системного журнала: http://docs.observium.org/syslog/ Но когда я открываю системный журнал на сервере, появляется сообщение об ошибке:

"No syslog entries found!".

Что еще мне нужно сделать (кроме инструкций на веб-странице Observium выше)?

Спасибо

ОБНОВЛЕНИЕ 1:

rsyslogd версии 8.16.0

Когда я пытаюсь использовать прямое ведение журнала, он работает нормально.

Итак, вот файл конфигурации:

#---------------------------------------------------------
#send remote logs to observium

template(name="observium"
         type="string"
         string="%fromhost%||%syslogfacility%||%syslogpriority%||%syslogseverity%||%syslogtag%||%$year%-%$month%-%$day% %timereported:8:25%||%msg%||%programname%\n")

$ModLoad omprog

# rsyslog Input Modules
input(type="imudp"
      port="514"
      ruleset="observium")

# rsyslog RuleSets
ruleset(name="observium") {
    action(type="omprog"
           binary="/opt/observium/syslog.php"
           template="observium")
}

*.* stop
#---------------------------------------------------------

Вместо этого я поставил его без набора правил:

#---------------------------------------------------------
#send remote logs to observium

#ceph-mon.=notice; ~

template(name="observium"
         type="string"
         string="%fromhost%||%syslogfacility%||%syslogpriority%||%syslogseverity%||%syslogtag%||%$year%-%$month%-%$day% %timereported:8:25%||%msg%||%programname%\n")

$ModLoad omprog


action(type="omprog"
           binary="/opt/observium/syslog.php"
           template="observium")

*.* stop
#---------------------------------------------------------

Оно работает :)

Так что возникает еще один вопрос. Мне нужно использовать ruleset? Если да, то сталкивался ли кто-нибудь еще с такой же / подобной проблемой и как вы ее решили?

Спасибо!

Да, я тоже видел эту проблему.

Я по ошибке включил "input (type =" imudp "port =" 514 ")" как в rsyslogd.conf, так и в 30-observium.conf. Вы хотите включить модуль imudp в rsyslogd.conf и включить для него действие input-> ruleset в 30-observium.conf

/etc/rsyslog.conf;

provides UDP syslog reception
module(load="imudp")
#input(type="imudp" port="514")

/etc/rsyslog.d/30-observium.conf должен быть;

#---------------------------------------------------------
#send remote logs to observium

template(name="observium"
     type="string"
     string="%fromhost-ip%||%syslogfacility%||%syslogpriority%||%syslogseverity%||%syslogtag%||%$year%-%$month%-%$day% %timereported:8:25%||%msg%||%programname%\n")

$ModLoad omprog

# rsyslog Input Modules
input(type="imudp"
      port="514"
      ruleset="observium")

# rsyslog RuleSets
ruleset(name="observium") {
    action(type="omprog"
           binary="/opt/observium/syslog.php"
           template="observium")
}

#& stop
#---------------------------------------------------------

Мне также пришлось закомментировать последнюю строку, так как из-за этого rsyslog не работал.

PS; Каждый раз, когда вы вносите изменения в фильтры syslog, вам необходимо перезапускать rsyslog, поскольку он кэширует полученный скрипт syslog.php при запуске.