Estou tentando usar o nxlog para encaminhar mensagens do vCenter para o Logstash com o im_file
módulo de entrada e um padrão para especificar os arquivos exatos a serem observados. O que normalmente seria simples agora é desnecessariamente complicado, pois a rotação de log do vCenter compacta o log e aumenta o nome do arquivo quando o próximo arquivo de log é criado. Por exemplo:
vpxd-1.log -> vpxd-1.log.gz -> vpxd-2.log
Quero encaminhar mensagens do log vpxd.log do vCenter:
*vpxa(\.log|\.\d+(\.gz)?|-\d+\.log(\.gz)?)
Responder1
Como os logs do vCenter são formatados de maneira diferente dos logs do ESXi, decidi usar o Logstash em vez do nxlog. Configurarei filtros locais no encaminhador para converter mensagens do vCenter em um formato semelhante às mensagens ESXi.
Configuração do serviço:
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
Configuração do 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
}
}