filmov
tv
Python Kurs Fortgeschritten 👩🎓 | #19 - Logging
Показать описание
Logging mit Python
Hallo und Herzlich Willkommen =)
In dieser Lektion wirst du das logging Modul von Python kennenlernen.
Logging ist immer dann nützlich, wenn du zu einem späteren Zeitpunkt wissen möchtest was genau während der Ausführung deines Programmes passiert ist.
Das logging Modul von Python bietet dir sehr viele Möglichkeiten um während der Ausführung deines Programmes bestimmte Nachrichten in einer .log Textdatei zu speichern.
Es gehört zu den Standard Modulen, sodass du es nicht erst installieren, sondern direkt am Anfang deines Programmes importieren kannst.
Anschließend kannst du mit der .basicConfig() Funktion grundlegende Einstellungen des Moduls vornehmen.
import logging
# Einfaches logging mit logging Modul
Mit dem „filename“ Parameter kannst du den Namen deiner logging Datei festlegen.
Der „level“ Parameter gibt das Level an ab welchem die Einträge gespeichert werden.
Das geringste Level ist dabei logging.DEBUG, welches du nutzen kannst um sehr viele Details aufzuzeichnen die dir bei der Fehlersuche während der Entwicklung seines Programmes helfen.
logging.INFO ist das nächst höhere Level, mit dem du interessante Informationen speichern kannst.
Mögliche Probleme kannst du im logging.WARNING Level mitschreiben.
Wenn es zu Fehlern in der Programmausführung kommt kannst du das logging.ERROR, und bei kritischen Fehlern die zu Programmabstürzen führen würden, das logging.CRITICAL Level nutzen.
In diesem Fall werden also alle Meldungen mit Level INFO oder höher abgespeichert.
Mit dem „format“ Parameter kannst du ein bestimmtest Format für alle logging Einträge vorgeben.
Alle Formatierungsoptionen, die dir zur Verfügung stehen, findest du im „LogRecord attributes“ Abschnitt auf:
Um einen Eintrag zu speichern kannst du die folgenden Funktionen nutzen:
Für viele einfache Projekte wird dir diese Art des logging reichen.
Wenn du an einem komplexeren Projekt mit mehreren Dateien arbeitest, kann es aber auch hilfreich sein einmal ein logger Objekt zu erstellen, welches du anschließend in allen Dateien nutzen kannst.
# Logging mit logging Objekt
def GetLogger():
"""Neuen Logger erstellen."""
formatter = logging.Formatter("%(asctime)s; %(name)s; %(levelname)s; %(message)s")
return logger
# logger Objekt erstellen
logger = GetLogger()
Funktionen in anderen Dateien kannst du dieses logger Objekt einfach als Parameter übergeben und anschließend direkt nutzen.
import LoggingMitLoggerObjekt
LoggingMitLoggerObjekt.FunktionInEinemAnderenModul(logger)
def FunktionInEinemAnderenModul(logger):
text = "Funktion wird ausgeführt."
print(text)
Falls du Probleme oder Fragen mit dem logging Modul hast, dann lass es mich bitte wissen, oder wenn es besonders schnell gehen soll, dann frag am besten zuerst Google oder schaue im Fragen Teil nach.
Wenn du es geschafft hast mit dem logging Modul dein erstes Logfile zu erstellen und einige Einträge darin zu speichern, wird dir die Anwendung dieses Wissens in Zukunft hoffentlich viel Zeit und Nerven bei der Fehlersuche sparen.
Vielen Dank fürs zuschauen und bis gleich in der nächsten Lektion =)