Logging kommt vom Englischen Begriff „log“ und bezeichnet in diesem Zusammenhang ein Protokoll. Ähnlich einem Logbuch enthält es alle wichtigen Aufzeichnungen über den Ereignisverlauf. Abhängig davon, was untersucht werden soll, werden entweder nur bestimmte Aktionen oder Ereignisse in einem Prozess erfasst oder es wird jede einzelne Aktion geprüft.
Wer eine neue Programmiersprache lernt, macht unweigerlich einige Fehler. Auch wenn Python für jene, die bereits Programmiersprachen wie C++ oder Java kennen, aufgrund ähnlicher Strukturen verständlich ist (zum Beispiel die Form der Schleifen), so hat doch jede Sprache ihre Besonderheiten. Python beispielsweise stellt Hierarchien durch Einrückungen dar. Übersieht man im Eifer des Gefechts ein fehlendes Leerzeichen, funktioniert selbst die simpelste Anwendung nicht. Ein Fehlerprotokoll weist unerfahrene Entwickler beim Debugging auf die entsprechende Zeile und den Fehler „unexpected Indentation“ hin. In diesem Fall protokolliert das Python-Logging einfache Skriptfehler und gibt eine Nachricht aus. Aber Logging kann noch mehr. Entwickler nutzen Logging in Programmen für ganz unterschiedliche Anwendungsbereiche:
- Debugging: Der ganze Quellcode wird auf Fehler untersucht, um einen reibungslosen Ablauf des fertigen Programms zu gewährleisten.
- Auffinden und Beheben von Sicherheitslücken: Mögliche Risiken werden präventiv ermittelt und behoben.
- IT-Forensik: Durch sie kann man bei kritischen Vorfällen wie Hacker-Angriffen anhand der Log-Datei die Ursache ermitteln.
- IT-Audit: Diese Überprüfung stellt fest, ob Datensicherheit und-integrität gewährleistet sind, sie vergleicht Ziele des jeweiligen Unternehmens mit den vorhandenen IT-Strukturen auf deren Vereinbarkeit und analysiert die Effizienz der Programme und Betriebssysteme.
- Vergleich verschiedener Versionenvon Datensätzen: Indem für jeden Durchlauf eine eigene Log-Datei angelegt wird, ist ein Vergleich möglich.
Beim Logging können sehr viele Daten anfallen, insbesondere, wenn man mit Python eine komplexe Anwendung schreibt. Mit Python-Logging-to-File (also einer Log-Datei, die durch das Python-Logging-Modul erstellt und über einen Handler mit den Logging-Informationen bestückt wird) sammeln Entwickler diese Daten. Wichtig dabei ist, dass die Log-Datei asynchron arbeitet. Andernfalls blockiert das Logging in Python womöglich die Ausführung des Skripts.