User Tools

Site Tools


uls:agents:log_file_adapter

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
uls:agents:log_file_adapter [2024-04-19 09:48]
uls [Logfileadapter]
uls:agents:log_file_adapter [2025-04-03 10:43] (current)
uls [Configuration File]
Line 50: Line 50:
 Für jede neu hinzukommende Zeile werden folgende Aktionen durchgeführt:​ Für jede neu hinzukommende Zeile werden folgende Aktionen durchgeführt:​
   * passt die Zeile zum regulären Ausdruck von vreg, dann diese Zeile ignorieren => auf nächste Zeile warten   * passt die Zeile zum regulären Ausdruck von vreg, dann diese Zeile ignorieren => auf nächste Zeile warten
-  * passt die Zeile zu einem regulären Ausdruck ​von reg0..reg99 ​oder reg0+..reg99+, dann die Zeile parsen mit iformat0..99 ​und entsprechende ​action0..action99 ​ausführen => wenn reg0+..reg99+, dann weiter vergleichen,​ sonst auf nächste Zeile warten +  * passt die Zeile zu einem regulären Ausdruck ​der reg oder reg+, dann die Zeile parsen mit iformat ​und entsprechende ​action, write oder syslog ​ausführen 
-  * ist ereg_all = 1, dann eaction ausführen => auf nächste Zeile warten +    ​=> wenn reg+, dann weiter vergleichen,​ sonst auf nächste Zeile warten
-  * passt die Zeile zum regulären Ausdruck von ereg, dann die Zeile parsen mit inputformat und eaction ausführen => auf nächste Zeile warten +
-  * ist wreg_all = 1, dann waction ausführen => auf nächste Zeile warten +
-  * passt die Zeile zum regulären Ausdruck von wreg, dann die Zeile parsen mit inputformat und waction ausführen => auf nächste Zeile warten+
   * ist lreg_all = 1, dann laction ausführen => auf nächste Zeile warten   * ist lreg_all = 1, dann laction ausführen => auf nächste Zeile warten
   * passt die Zeile zum regulären Ausdruck von lreg, dann die Zeile parsen mit inputformat und laction ausführen => auf nächste Zeile warten   * passt die Zeile zum regulären Ausdruck von lreg, dann die Zeile parsen mit inputformat und laction ausführen => auf nächste Zeile warten
   * wenn keine der obigen Bedingungen erfüllt sind, dann wird die Zeile ignoriert => auf nächste Zeile warten   * wenn keine der obigen Bedingungen erfüllt sind, dann wird die Zeile ignoriert => auf nächste Zeile warten
  
-Zu allen direkt eingetragenen regulären Ausdrücken reg[+] kann auch eine Datei reg_file[+] angegeben werden, die mehrere Zeilen mit jeweils einem regulären Ausdruck enthalten können. Die regulären Ausdrücke werden bei der Anwendung von reg_filelogisch ODER verknüpft. Es wird entweder reg oder reg_file verwendet, der letzte Eintrag in der Konfigurationsdatei entscheidet.+Zu allen direkt eingetragenen regulären Ausdrücken reg[+] kann auch eine Datei reg_file[+] angegeben werden, die mehrere Zeilen mit jeweils einem regulären Ausdruck enthalten können. Die regulären Ausdrücke werden bei der Anwendung von reg_file logisch ODER verknüpft. Es wird entweder reg oder reg_file verwendet, der letzte Eintrag in der Konfigurationsdatei entscheidet.
  
  
Line 282: Line 279:
 #   ​unabhängig von inputfilepatternsort wird auf die neueste Datei gewechselt #   ​unabhängig von inputfilepatternsort wird auf die neueste Datei gewechselt
 inputfilepatternsearch = 60 inputfilepatternsearch = 60
 +
 +# inputfilereopen
 +# Bei Linux werden die Logdateien nicht geschlossen
 +inputfilereopen = 1    # Logdateien schließen, wenn nicht gelesen wird (ist bei Windows standard)
 +
 +# exit_on
 +# der lfa4uls kann beendet werden, wenn:
 +exit_on = EOF     # beenden, wenn Datei zu Ende gelesen wurde
 +exit_on = FNF     # wenn keine Datei gefunden wird, bzw. wenn es keine neue Datei gibt
  
  
Line 357: Line 363:
  
  
-# ----- LINE FORMAT ​----- +# ----- date time ----- 
-+utcin = 1|0    ​read timestamps in UTC or localtime 
-# ----- INPUT FORMAT -----+utcout = 1|0   # write timestamps in UTC or localtime 
 + 
 + 
 +# ----- INPUT LINE FORMAT -----
  
 inputformat = %t %h %q: %sValue1: %1, Value2: %2, %W inputformat = %t %h %q: %sValue1: %1, Value2: %2, %W
Line 368: Line 377:
  
 inputformat =| %t %h %q: %svalue1: %1, value2: %2, %W inputformat =| %t %h %q: %svalue1: %1, value2: %2, %W
- 
  
 # Folgende Codes koennen zum Parsen der Zeilen benutzt werden: # Folgende Codes koennen zum Parsen der Zeilen benutzt werden:
Line 520: Line 528:
 #                 ​gleiche Zeilen werden für <s> Sekunden unterdrückt. Die erste passende Zeile wird ausgegeben. #                 ​gleiche Zeilen werden für <s> Sekunden unterdrückt. Die erste passende Zeile wird ausgegeben.
 #                 Bei der Prüfung auf gleiche Zeilen werden alle Felder mit Ausnahme der Zeitstempelfelder herangezogen,​ #                 Bei der Prüfung auf gleiche Zeilen werden alle Felder mit Ausnahme der Zeitstempelfelder herangezogen,​
-#                 die als Ausgabe genutzt werden können. Also nicht %s (ab Version 5.5).+#                 die als Ausgabe genutzt werden können. Also nicht %s, %c (ab Version 5.5).
 #                 Wenn ein Feld nicht beachtet werden soll, dann muss das Feld um ein '​i'​ erweitert werden: %q -> %iq, %1 -> %i1, ... #                 Wenn ein Feld nicht beachtet werden soll, dann muss das Feld um ein '​i'​ erweitert werden: %q -> %iq, %1 -> %i1, ...
 #                 ​Beispiel:​ #                 ​Beispiel:​
Line 537: Line 545:
 # Average über die Variablen ausgegeben werden kann. # Average über die Variablen ausgegeben werden kann.
 # <​CONSFMT>:​ # <​CONSFMT>:​
-#            <​n>/<​m>​[s|m|h]<​SFLE>: <n> 0-59+#            <​n>/<​m>​[s|m|h]<​SFLEN>: <n> 0-59
 #              <m> Anzahl s|m|h #              <m> Anzahl s|m|h
 #              s|m|h Sekunden, Minuten, Stunden, def. ist m #              s|m|h Sekunden, Minuten, Stunden, def. ist m
-#              <SFLE> Zeitstempelflag:​ S: Start, F: First, L: Last, E: End, def. ist E+#              <SFLEN> Zeitstempelflag:​ S: Start, F: First, L: Last, E: End, N: Now, def. ist E
 # Bedeutung: Beginnend mit <n> wird alle <m> s|m|h eine Zeile ausgegeben. # Bedeutung: Beginnend mit <n> wird alle <m> s|m|h eine Zeile ausgegeben.
 # Beispiele: # Beispiele:
-0/5m -> alle 5 Minuten eine Zeile + 
-3/10s -> alle 10 Sekunden (3, 13, 23, 33, 43, 53) eine Zeile+consoliate = 0/5m         ​-> alle 5 Minuten eine Zeile 
 +consolidate = 3/10s       ​-> alle 10 Sekunden (3, 13, 23, 33, 43, 53) eine Zeile
 # #
 # <​CONSFMT2>:​ # <​CONSFMT2>:​
-# <​m><​smh><​FL>: <smh> für Sekunden, Minute, Stunden, <m> Anzahl +# <​m><​smh><​FLN>: <smh> für Sekunden, Minute, Stunden, <m> Anzahl 
-              ​F|L first/last+               F|L|N first/last/now
 # Bedeutung: Es wird auf pasende Zeilen gewartet, dann wird alle # Bedeutung: Es wird auf pasende Zeilen gewartet, dann wird alle
 # <m> Sekunden/​Minuten/​Stunden ein konsolidierter Wert          # <m> Sekunden/​Minuten/​Stunden ein konsolidierter Wert         
Line 556: Line 565:
 #   ​ausgegeben oder bei SIGHUP|SIGUSR1 #   ​ausgegeben oder bei SIGHUP|SIGUSR1
 # #
-consolidatenull = 1      # Zeile auch ausgeben, wenn keine Zeilen konsolidiert wurden. +consolidatenull = 1      # Zeile auch ausgeben, wenn keine Zeilen konsolidiert wurden. 
-consolidatedistinct = 1  # Es werden nur unterschiedliche Zeilen betrachtet. Z. B. unterschiedliche User zählen.+consolidatedistinct = 1  # Es werden nur unterschiedliche Zeilen betrachtet. Z. B. unterschiedliche User zählen
 +consolidatedistinctinit = 100000 ​ # distinct lines Vorbelegung,​ wenn größer als 10000.
  
  
Line 586: Line 596:
                 <​priority>:​ LOG_DEBUG|LOG_INFO|LOG_NOTICE|LOG_WARNING|LOG_ERR|LOG_CRIT|LOG_ALERT|LOG_EMERG                 <​priority>:​ LOG_DEBUG|LOG_INFO|LOG_NOTICE|LOG_WARNING|LOG_ERR|LOG_CRIT|LOG_ALERT|LOG_EMERG
 store       = Ausgabeformat beim Schreiben in Temp-Datei (unter storepath) store       = Ausgabeformat beim Schreiben in Temp-Datei (unter storepath)
-writetopath = Pfad festlegen für "write"+writetopath = Pfad festlegen für "writeto"
 writeto ​    = Ausgabemuster für Datei, die mit writetopath festgelegt wird. writeto ​    = Ausgabemuster für Datei, die mit writetopath festgelegt wird.
 exit        = <​exitcode> ​          # lfa4uls beenden mit Exitcode <​exitcode>​ (Der <​exitcode>​ kann auch eine Variable z. B. %3 sein) exit        = <​exitcode> ​          # lfa4uls beenden mit Exitcode <​exitcode>​ (Der <​exitcode>​ kann auch eine Variable z. B. %3 sein)
Line 598: Line 608:
                            ​konsolidierte Zeilen zurückgesetzt werden                            ​konsolidierte Zeilen zurückgesetzt werden
  
-# ----- Einschränkung der reg<​n> ​für verschiedene Logdateien -----+# ----- Einschränkung der reg für verschiedene Logdateien -----
 # #
-# Die anzuwendenden reg<​n> ​können pro "​inputfile"​ bzw. "​inputfilepattern"​ eingeschränkt werden.+# Die anzuwendenden reg können pro "​inputfile"​ bzw. "​inputfilepattern"​ eingeschränkt werden.
 # Dazu wird vor den entsprechenden "​inputfile"​ und "​inputfilepattern"​ Zeilen der Gültigkeitsbereich definiert: # Dazu wird vor den entsprechenden "​inputfile"​ und "​inputfilepattern"​ Zeilen der Gültigkeitsbereich definiert:
 # #
-# setregrange = <​start>​ - <end>+# setregrange = <​start>​ - <​end> ​   # Geht übersichtlicher durch die Bildung von Blöcken.
 # #
 # für die nun folgenden "​input*"​ Zeilen gelten nur die reg<​start>​ - reg<​end>​ # für die nun folgenden "​input*"​ Zeilen gelten nur die reg<​start>​ - reg<​end>​
 +#
 +# Sollte nicht mehr verwendet werden, denn das kann durch entsprechende Blöcke übersichtlicher abgebildet werden:
 +
 +inputfile = file1
 +reg =
 +write =
 +
 +reg = 
 +write = 
 +
 +# durch Angabe eines neuen "​inputfile*"​ wird ein neuer Block begonnen. Die vorherigen reg gelten nur für file1 und die folgenden nur für file2.
 +inputfile = file2
 +reg =
 +write =
 +
 +reg = 
 +write =
  
  
 # ----- SYSLOG ----- # ----- SYSLOG -----
 # festlegen der Syslog Parameter # festlegen der Syslog Parameter
-syslogpars = <​syslog-ident>,​ <​syslog-facility> ​          # Siehe openlog+syslogpars = <​syslog-ident>,​ <​syslog-facility> ​          # Siehe "​man ​openlog"
  
  
 # ----- LOG ----- # ----- LOG -----
 # #
-Regulaeren ​Ausdruck und Aktion ​fuer "​Logging" ​(Info)+Regulären ​Ausdruck und Aktion ​für "​Logging"​ 
 +# ACHTUNG: lreg_all, lreg, laction und lwrite werden in einer der nächsten Versionen nicht mehr zur Verfügung stehen. 
 +# Die Kombination aus lreg_all = 1 und lwrite kann durch regall und write abgelöst werden.
  
 lreg_all ​   = 1 lreg_all ​   = 1
uls/agents/log_file_adapter.1713512931.txt.gz · Last modified: 2024-04-19 09:48 by uls