2016-04-12 6 views
0

Ich habe einen Rsyslog-Server und ELK-Stack auf dem gleichen Server ausgeführt.Spezifische Protokollierung mit Rsyslog und ELK

Unsere Anwendung leitet Protokolle an rsyslog weiter und leitet sie an localhost weiter.

Wir wollen jetzt unsere Protokollierung aufteilen (Frontend und Backend Logging).

Unser Frontend-Entwickler hat ein Tag [Frontend] hinzugefügt, das der Nachricht hinzugefügt wird. Ist es möglich, dies in rsyslog herauszufiltern und an einen anderen Logstash weiterzuleiten, während die Backend-Protokollierung beibehalten wird?

ich habe dies in meiner Konfiguration im Moment, aber es hält alle Nachrichten an diese logstash Spedition:

*.* @@localhost:5555 
:msg, contains, "\[frontend\]" stop 

*.* @@localhost:5544 
:programname, contains, "backend" ~ 

Wir senden die Frontend-Protokolle über das Backend so Programmnamen ‚Back-End‘ in jeder Nachricht ist, dass wir erhalten

Antwort

0

etwas mehr Forschung getan und eine funktionierende Lösung gefunden:

*.*  { 
     :msg, contains, "\[frontend\]" 
     @@localhost:5555 
     } 

*.*  {:programname, contains, "backend" 
     @@localhost:5544 
     stop 
     }