Suchmuster für NXLOG-Dateieingaben

Suchmuster für NXLOG-Dateieingaben

Ich versuche, nxlog zu verwenden, um vCenter-Nachrichten mit dem im_fileEingabemodul und einem Muster an Logstash weiterzuleiten, um die genauen zu überwachenden Dateien anzugeben. Was normalerweise einfach wäre, ist jetzt unnötig kompliziert, da die Protokollrotation von vCenter das Protokoll komprimiert und dann den Dateinamen erhöht, wenn die nächste Protokolldatei erstellt wird. Beispiel:

vpxd-1.log -> vpxd-1.log.gz -> vpxd-2.log

Ich möchte Meldungen aus dem vCenter vpxd.log-Protokoll weiterleiten:

*vpxa(\.log|\.\d+(\.gz)?|-\d+\.log(\.gz)?)

Antwort1

Da vCenter-Protokolle anders formatiert sind als ESXi-Protokolle, habe ich mich entschieden, Logstash statt nxlog zu verwenden. Ich werde im Forwarder lokale Filter einrichten, um vCenter-Nachrichten in ein ähnliches Format wie die ESXi-Nachrichten zu konvertieren.

Weitere Informationen zum Ausführen von Logstash als Windows-Dienst finden Sie in diesem Handbuch.


Dienstkonfiguration:

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-Konfiguration:

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
  }
}

verwandte Informationen