Я пытаюсь использовать nxlog для пересылки сообщений vCenter в Logstash с im_file
модулем ввода и шаблоном для указания точного файла(ов) для наблюдения. То, что обычно было бы простым, теперь стало излишне сложным, поскольку ротация журналов vCenter сжимает журнал, а затем увеличивает имя файла при создании следующего файла журнала. Например:
vpxd-1.log -> vpxd-1.log.gz -> vpxd-2.log
Я хочу пересылать сообщения из журнала vCenter vpxd.log:
*vpxa(\.log|\.\d+(\.gz)?|-\d+\.log(\.gz)?)
решение1
Поскольку журналы vCenter форматируются иначе, чем журналы ESXi, я решил использовать Logstash вместо nxlog. Я настрою локальные фильтры в пересылателе для преобразования сообщений vCenter в формат, аналогичный формату сообщений ESXi.
Дополнительную информацию о запуске Logstash как службы Windows см. в этом руководстве.
Конфигурация сервиса:
C:
cd \logstash
set HOME=c:/logstash/sincedb
"C:\Program Files\Java\jdk1.7.0_45\bin\java.exe" -jar logstash-1.2.2.jar agent --config logstash.conf --log logstash.log
Конфигурация Logstash:
input {
file {
path => [ "C:/vmware_logs/vpxd-[0-5][0-9].log", "C:/vmware_logs/vpxd-alert-[0-5][0-9].log" ]
type => "syslog"
exclude => "*.gz"
}
}
output {
udp {
host => "<address>"
port => "514"
}
stdout {
debug => true
}
}