Daten an einer Datei angemeldet; Wie drehe ich Protokolle und wie analysiere ich die Daten, um keine "Lücken" in den Daten zu haben?

StackOverflow https://stackoverflow.com/questions/2499727

  •  21-09-2019
  •  | 
  •  

Frage

Ich habe eine Webanwendung, die aus Leistungsgründen alle Daten in eine Protokolldatei ausgelöst wird.

Ich habe zwei Bedenken mit diesem Ansatz:

  1. Wie rotiere ich am besten Protokolle, um keine Daten zu verlieren?
  2. Für jede Benutzersitzung werden mehrere Anfragen protokolliert. Jede Anfrage enthält eine eindeutige ID, sodass ich die Anfragen an die Sitzung einfach binden kann. Das Problem ist jedoch, dass ich, wenn ich die Protokolle drehe, eine Anfrage in einem Protokoll und eine andere Anforderung in einem anderen Protokoll zu haben.

Wie arrangiere ich mein Parsen auf eine Weise, die es mir ermöglicht, alle Anfragen von einer bestimmten Sitzung zu analysieren? Ich bin bereit, eine Sitzungszeit zu definieren, beispielsweise, dass die Anfragen maximal 30 Minuten voneinander entfernt sein müssen.

Wenn ich nach 00 Minuten eine stündliche Protokollrotation hatte:

Was wäre, wenn der Benutzer eine Anfrage um 13:59 Uhr und eine um 14:01 anforderte? Der Benutzer würde am Ende Anfragen in zwei verschiedenen Protokollen haben.

War es hilfreich?

Lösung

Antwort auf Teil 1: Wenn Sie auf *nix sind, verwenden Sie Syslog/Logger. Überprüfen Sie den Logger (1) und Syslog.Conf (5) Man -Seiten.

Antwort auf Teil 2: Sie sind nicht gezwungen, jeweils nur eine Protokolldatei zu betrachten. less ${SERVICE}* Öffnen Sie normalerweise alle relevanten Protokolldateien zusammen: Wenn Sie am Ende einer Seite gehen, verschiebt sich n in die nächste Datei und: P zurück.

Verwenden Sie alternativ ein Protokollanalysatorprogramm. Steve Kemps Post Um prompt Nadeln in Syslog -Heuheuschellen zu finden, zusammen mit seinen Kommentaren viel Boden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top