Loading AI tools
Aufzeichnung bestimmter Ausgaben von laufenden Computerprogrammen, i.d.R. zu Diagnosezwecken Aus Wikipedia, der freien Enzyklopädie
Eine Logdatei (auch Protokolldatei, Ereignisprotokolldatei; englisch log file) enthält das automatisch geführte Protokoll aller oder bestimmter Aktionen von Prozessen auf einem Computersystem.
Wichtige Anwendungen finden sich vor allem bei der Prozesskontrolle und Automatisierung. Prinzipiell werden alle Aktionen mitgeschrieben, die für eine spätere Untersuchung (Audit) erforderlich sind oder sein könnten. Der Flugschreiber in Flugzeugen ist ein Beispiel für kontinuierliche Protokollierung, die jedoch selten ausgewertet wird, zum Beispiel nach einem Unfall.
Im Bereich der Datenbanken gibt es ein Transaktionsprotokoll, in der Änderungen an der Datenbank von korrekt abgeschlossenen Transaktionen (per Commit abgeschlossen) festgehalten werden, um im Fall eines Fehlers (z. B. Systemabsturz) den aktuellen Datenbestand wiederherstellen zu können.
Das Wort Logfile wird in Teilen der Blogosphäre zunehmend auch als Begriff für einen Blog-Eintrag genutzt. Mit dieser Bedeutung wurde der Begriff zunächst nur von Log-Files.de (diese Seite ist inzwischen gesperrt) verwendet, inzwischen ist er gerade bei Blogs mit reinem Tagebuch-Charakter beliebt.
Auf einem PC können Protokolldateien bestimmter Aktionen von einem oder mehreren Nutzern an einem Rechner geschrieben werden, ohne dass diese es bemerken oder ihre Arbeit beeinflusst wird. Wesentlich ist hierzu das Systemlogbuch (unter Linux meist in /var/log/messages, aber auch Windows NT und Nachfolger schreiben entsprechende Einträge in eines oder mehrere Ereignisprotokolle), wenn sie entsprechend konfiguriert werden. Darin können u. a. die Anmeldungen am System protokolliert werden, aber auch andere wichtige Informationen.
Außer dem Betriebssystem selbst schreiben meist Hintergrundprogramme (z. B. ein E-Mail-Server, ein Proxyserver und anderes) in Logdateien, um Aktionsmeldungen, Fehlermeldungen und Hinweise persistent (dauernd) oder temporär verfügbar zu halten. Ähnliches gilt für Installationsprogramme, Firewalls, Virenscanner und dergleichen. Logdateien werden im Idealfall auf einem von der Anwendung getrennten Laufwerk gespeichert, um die I/O-Ressourcen der Anwendung nicht einzuschränken.[1]
Logdateien werden auch von Webservern erstellt, können aber auch außerhalb des Internets bei Untersuchungen der Benutzerfreundlichkeit von Programmen, allgemeinem Nutzerverhalten oder der Fehlersuche in einem System genutzt werden.
Die Logdatei wird bei der Logdateianalyse untersucht.
Prinzipiell enthält eine Protokollzeile in einer Logdatei meist ein Ereignis sowie das dazugehörige Datum und die dazugehörige Uhrzeit als Zeitstempel. Dabei wird die Zeitangabe meist vorangestellt, da es sich bei einer Logdatei um eine chronologische Aufstellung handelt.
Bei dem Beispiel handelt es sich um den (in der Mitte gekürzten) Inhalt der Protokolldatei \WINDOWS\system32\wbem\Logs\setup.log
unter Windows XP; links der Zeitstempel, rechts die zu dieser Zeit ausgeführte Aktion:
(Sun Sep 13 23:02:05 2009): Beginning Wbemupgd.dll Registration (Sun Sep 13 23:02:05 2009): Current build of wbemupgd.dll is 5.1.2600.2180 (xpsp_sp2_rtm.040803-2158) (Sun Sep 13 23:02:05 2009): Beginning Core Upgrade (Sun Sep 13 23:02:05 2009): Beginning MOF load (Sun Sep 13 23:02:05 2009): Processing C:\WINDOWS\system32\WBEM\cimwin32.mof (Sun Sep 13 23:02:09 2009): Processing C:\WINDOWS\system32\WBEM\cimwin32.mfl (Sun Sep 13 23:02:12 2009): Processing C:\WINDOWS\system32\WBEM\system.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\evntrprv.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\hnetcfg.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\sr.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\dgnet.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\whqlprov.mof (Sun Sep 13 23:02:16 2009): Processing C:\WINDOWS\system32\WBEM\ieinfo5.mof (Sun Sep 13 23:02:17 2009): MOF load completed. (Sun Sep 13 23:02:17 2009): Beginning MOF load (Sun Sep 13 23:02:17 2009): MOF load completed. (Sun Sep 13 23:02:17 2009): Core Upgrade completed. (Sun Sep 13 23:02:17 2009): Wbemupgd.dll Service Security upgrade succeeded. (Sun Sep 13 23:02:17 2009): Beginning WMI(WDM) Namespace Init (Sun Sep 13 23:02:20 2009): WMI(WDM) Namespace Init Completed (Sun Sep 13 23:02:20 2009): ESS enabled (Sun Sep 13 23:02:20 2009): ODBC Driver <system32>\wbemdr32.dll not present (Sun Sep 13 23:02:20 2009): Successfully verified WBEM OBDC adapter (incompatible version removed if it was detected). (Sun Sep 13 23:02:20 2009): Wbemupgd.dll Registration completed. (Sun Sep 13 23:02:20 2009):
Eine typische Webserver-Logdatei („Combined Log Format“) sieht folgendermaßen aus (Auszug mit zwei Einträgen):
183.121.143.32 - - [18/Mar/2003:08:04:22 +0200] "GET /images/logo.jpg HTTP/1.1" 200 512 "http://www.wikipedia.org/" "Mozilla/5.0 (X11; U; Linux i686; de-DE;rv:1.7.5)" 183.121.143.32 - - [18/Mar/2003:08:05:03 +0200] "GET /images/bild.png HTTP/1.1" 200 805 "http://www.google.org/" …
Bedeutung | Wert im Beispiel | Erläuterung |
---|---|---|
IP-Adresse | 183.121.143.32 | IP-Adresse des anfordernden Hosts |
Unbelegt | – | vorgesehen für RFC-1413-Identität, die jedoch standardmäßig (-) nicht ermittelt wird |
Wer | – | Ggf. Nutzername aus einer HTTP-Authentifizierung, sonst „-“ |
Wann | [18/Mar/2003:08:04:22 +0200] | Zeitstempel (Datum, Uhrzeit, Zeitverschiebung) |
Was | "GET /images/logo.jpg HTTP/1.1" | Anforderung, eines Bildes, Übertragungsprotokoll |
Ok | 200 | HTTP-Statuscodes (200=Erfolgreiche Anfrage) |
Wie viel | 512 | Ggf. Menge der gesendeten Daten (Byte), sonst (z. B. bei Umleitungen) „-“ |
Woher | "http://www.wikipedia.org/" | Von welcher Internetseite (URI) wird angefordert |
Womit | "Mozilla/5.0 (X11; U; Linux i686; de-DE; rv:1.7.6)" | Mit welchem Webbrowser/Betriebssystem/Oberfläche |
Bemerkung: Woher? und Womit? entsprechen nicht dem Common Logfile Format.[2] |
Kann man selber auf einem Server mit der eigenen Webpräsenz keine Protokolldateien abrufen, dann ermöglichen verschiedene Webdienste (z. B. Nedstat[3] oder W3 Statistics[4]) das Setzen eines kleinen Zählers auf der eigenen Webpräsenz. Dieser Zähler wird immer wieder beim Abrufen der Seite vom Anbieterserver geladen, wo daraufhin eine Auswertung der Zugriffe mithilfe der Zugriffs-Protokolldatei in Form von Tabellen und Grafiken erstellt wird. Hilfsmittel dabei können Zählpixel und HTTP-Cookies sein, wobei es letztere Internetseitenbetreibern durch das Speichern von eindeutigen Seriennummern ermöglichen, Logdateien über einzelne zugreifende Computer über einen längeren Zeitraum zu führen.
Da das Loggen aller Programmereignisse die für Logdateien verfügbaren Ressourcen innerhalb kurzer Zeit aufbrauchen würde und die Auffindbarkeit bestimmter Ereignisse erschweren würde, werden verschiedene Dringlichkeitsstufen definiert, welche nach Bedarf ein- und ausgeschaltet werden können.
Übliche Definition von Log-Levels:[5]
Wichtig ist hierbei, dass in Logdateien und -datenbanken nur Informationen zum Programmablauf und -zustand erhoben werden sollen, jedoch keine Informationen zu den Benutzern des Programms.
Nach § 15[Anbieter/Datenbank unbekannt] des deutschen Telemediengesetzes dürfen Diensteanbieter personenbezogene Daten eines Nutzers nur erheben und verwenden, soweit dies erforderlich ist, um die Inanspruchnahme von Telemedien zu ermöglichen und abzurechnen. Über das Ende des Nutzungsvorgangs hinaus dürfen Nutzungsdaten nur gespeichert werden, soweit sie für Zwecke der Abrechnung mit dem Nutzer erforderlich sind. Auf dieser Grundlage hat das Amtsgericht Berlin 2007 entschieden,[6] dass die Protokollierung der IP-Adressen der Benutzer eines öffentlich zugänglichen Internetportals ohne deren Einwilligung unzulässig ist.
Logger sind Softwarekomponenten für Computerprogramme, welche in eine Logdatei schreiben oder diese auslesen.
Im Rahmen des Application Lifecycle Management werden, zusätzlich zu dezentralen Logdateien, auch zentralisierte Logging-Datenbanken eingesetzt, um eine zentrale Auswertung von Programmfehlern und -informationen zu ermöglichen. Derartige Datenbanken können beispielsweise über ein Webservice oder mittels Log-Scraping befüllt werden.
Für eine Echtzeitauswertung sind Logdateien nicht geeignet. Hierfür kommen stattdessen Monitoring-Mechanismen zum Einsatz, etwa Performance Counter und Event Tracing for Windows (ETW) auf Windows-Systemen oder collectd (system statistics collection daemon) unter Linux-Systemen.
Eine weitere Technologie sind Operations-Datenbanken, welche unter anderem eine Auswertung des Zustands von Geschäftsprozessen ermöglicht.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.