585
21.5
Dokumentation eines Programmlaufs mit Log-Dateien
21.5 Dokumentation eines Programmlaufs mit Log-Dateien
Bei CGI-Skripten werden Standardausgabe und print()-Funktion für das Versenden von
HTTP-Paketen an den Client genutzt. Eine Selbstdokumentation (Tracing) des Programm-
laufs über
print() ist dann nicht möglich.
Eine Alternative ist, Mitteilungen über den aktuellen Stand eines Programmlaufs in eine
Textdatei zu schreiben. Sie nennt man auch Log-Datei. Wenn ein Fehler aufgetreten ist,
kann man in der Log-Datei nachsehen und nach einer Ursache für das Versagen des Pro-
gramms suchen.
Der Begriff Log gehört inzwischen zur Alltagssprache. Sie kennen Web-Logs – oder kurz
Blogs –, in denen literarisch ambitionierte Menschen Kurzberichte über ihren Alltag veröf-
fentlichen. Auf Schiffen gibt es ein Logbuch, in das der Kapitän wichtige Ereignisse einer
Reise einträgt. Tatsächlich kommt der Begriff aus der Seefahrt. Log ist das englische Wort
für ein Holzscheit, mit dem früher die Geschwindigkeit von Schiffen gemessen wurde. Das
Holz wurde an ein Seil gebunden und ins Wasser geworfen. In dem Seil waren in regelmä-
ßigen Abständen Knoten. Da das Schiff in Bewegung war, das Logscheit auf dem Wasser
jedoch ruhte, wurde das Seil vom Schiff gezogen. Der Seemann, durch dessen Hände das
Seil ins Wasser glitt, zählte die Knoten, die in einer bestimmten Zeitspanne über die Bord-
kante gingen. Die Anzahl der Knoten war somit ein Maß für die Geschwindigkeit des Schif-
fes. Und diese wurde ins Logbuch eingetragen. Heute bezeichnet der Begriff Log ganz
abstrakt eine chronologische Dokumentation von Ereignissen.
Das Standardmodul
logging bietet Ihnen ausgefeilte Möglichkeiten, Logs von Programm-
läufen zu führen.
21.5.1 Grundfunktionen
Die Grundfunktionen des Moduls logging können Sie im interaktiven Modus ausprobie-
ren. Eine der Hauptideen des Moduls ist, dass mehrere Logger definiert werden können, die
jeweils Einträge in eine Log-Datei vornehmen können. Ein Logger ist jedoch schon von
vornherein vorgegeben. Das ist der root-Logger. Mit der Funktion
logging.basicConfig()
legen Sie die Log-Datei des root-Loggers fest und stellen das Logging-Level ein. Zum Log-
ging-Level später mehr.
Ich sortiere: [10]
Element zum Spalten der Liste: 10
Ich sortiere: [34]
Element zum Spalten der Liste: 34
Ich sortiere: [68]
Element zum Spalten der Liste: 68
[7, 9, 10, 20, 24, 34, 61, 68]
>>> import logging
>>> logging.basicConfig(filename="/tmp/logging.txt",
level=logging.DEBUG)

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.