Inhaltsverzeichnis
Protokollierungsebene
Protokollierung konfigurieren
Nachrichten protokollieren
Protokollierungsfilter
Fazit
Heim Backend-Entwicklung Python-Tutorial Python-Protokollierungsmodul entmystifiziert: Die Kunst der Protokollierung beherrschen

Python-Protokollierungsmodul entmystifiziert: Die Kunst der Protokollierung beherrschen

Mar 07, 2024 pm 09:55 PM
Standardbibliothek

Python logging 模块揭秘:掌控日志记录的艺术

python Einführung in das Protokollierungsmodul

Das

logging-Modul ist ein leistungsstarkes loggingloggingtool in der Python-Standardbibliothek. Es bietet eine standardisierte, konfigurierbare Möglichkeit, Anwendungsereignisse, Fehler und Debugging-Informationen zu protokollieren. Durch die Verwendung des Protokollierungsmoduls können Entwickler das Anwendungsverhalten einfach verfolgen, die Fehlerbehebung vereinfachen und die Codequalität verbessern.

Protokollierungsebene

Das Protokollierungsmodul definiert mehrere Protokollierungsstufen, um die Wichtigkeit von Nachrichten anzuzeigen:

  • DEBUG: Debug-Informationen zum Aufzeichnen des detaillierten Anwendungsverhaltens.
  • INFO: Allgemeine Informationen, die zur Aufzeichnung des normalen Betriebs der Anwendung verwendet werden.
  • WARNUNG: Warnmeldung zur Aufzeichnung potenzieller Probleme.
  • ERROR: Fehlermeldung zur Protokollierung von Anwendungsfehlern.
  • KRITISCH: Kritische Fehlermeldung zur Aufzeichnung kritischer Fehler, die die Anwendung unterbrechen.

Protokollierung konfigurieren

Das Protokollierungsmodul ermöglicht die Konfiguration des Protokollierungsverhaltens auf verschiedene Arten:

Root Logger:

import logging

# 创建根记录器
root_logger = logging.getLogger()

# 设置日志记录级别
root_logger.setLevel(logging.INFO)

# 添加控制台处理程序
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.DEBUG)
console_handler.setFORMatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
root_logger.addHandler(console_handler)

# 添加文件处理程序
file_handler = logging.FileHandler("my_app.log")
file_handler.setLevel(logging.WARNING)
file_handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
root_logger.addHandler(file_handler)
Nach dem Login kopieren

Benutzerdefinierter Logger:

# 创建自定义记录器
my_logger = logging.getLogger("my_app.module1")

# 设置日志记录级别
my_logger.setLevel(logging.DEBUG)

# 添加流处理程序
stream_handler = logging.StreamHandler()
stream_handler.setLevel(logging.INFO)
stream_handler.setFormatter(logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s"))
my_logger.addHandler(stream_handler)
Nach dem Login kopieren

Nachrichten protokollieren

Nachdem die Protokollierungseinstellungen konfiguriert wurden, können Entwickler Nachrichten mit den folgenden Methoden protokollieren:

  • debug()
  • info()
  • warning()
  • error()
  • critical()

Jede Methode empfängt eine string-Nachricht und protokolliert die Nachricht auf der angegebenen Protokollierungsstufe.

my_logger.info("应用程序已启动")
Nach dem Login kopieren

Protokollierungsfilter

Das Protokollierungsmodul bietet einen Mechanismus, um Protokollnachrichten zu filtern und nur Nachrichten zu protokollieren, die bestimmte Bedingungen erfüllen. Filter können auf der Protokollierungsstufe, dem Nachrichtentext oder anderen benutzerdefinierten Kriterien basieren.

# 创建一个过滤日志记录级别的过滤器
level_filter = logging.Filter()
level_filter.filter = lambda record: record.levelno >= logging.WARNING

# 将过滤器添加到记录器
my_logger.addFilter(level_filter)
Nach dem Login kopieren

Fazit

Das Python-Protokollierungsmodul ist ein leistungsstarkes Tool zum Protokollieren von Anwendungsereignissen und Debugging-Informationen. Durch das Verständnis seiner Funktionalität und Konfigurationsoptionen können Entwickler robuste und wartbare Anwendungen entwerfen. Durch die umfassende „Visualisierung“ des Anwendungsverhaltens trägt das Protokollierungsmodul dazu bei, die Codequalität zu verbessern, die Fehlerbehebung zu vereinfachen und den Debugging-Prozess zu verbessern.

Das obige ist der detaillierte Inhalt vonPython-Protokollierungsmodul entmystifiziert: Die Kunst der Protokollierung beherrschen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie einen absoluten Wert in C++ So verwenden Sie einen absoluten Wert in C++ May 06, 2024 pm 06:15 PM

Es gibt zwei Möglichkeiten, absolute Werte in C++ zu erhalten: 1. Verwenden Sie die integrierte Funktion abs(), um den absoluten Wert eines Ganzzahl- oder Gleitkommatyps zu erhalten. 2. Verwenden Sie die generische Funktion std::abs(), um Erhalten Sie verschiedene unterstützte absolute Werte. Arbeitet mit absoluten Werten von Datentypen.

So verwenden Sie std:: in C++ So verwenden Sie std:: in C++ May 09, 2024 am 03:45 AM

std ist der Namespace in C++, der Komponenten der Standardbibliothek enthält. Um std zu verwenden, verwenden Sie die Anweisung „using namespace std;“. Die direkte Verwendung von Symbolen aus dem std-Namespace kann Ihren Code vereinfachen, wird jedoch nur bei Bedarf empfohlen, um eine Verschmutzung des Namespace zu vermeiden.

Was bedeutet Primzahl in C++? Was bedeutet Primzahl in C++? May 07, 2024 pm 11:33 PM

prime ist ein Schlüsselwort in C++, das den Primzahltyp angibt, der nur durch 1 geteilt werden kann. Es wird als boolescher Typ verwendet, um anzugeben, ob der angegebene Wert eine Primzahl ist wahr, andernfalls ist es falsch.

_komplexe Verwendung in C-Sprache _komplexe Verwendung in C-Sprache May 08, 2024 pm 01:27 PM

Der komplexe Typ wird zur Darstellung komplexer Zahlen in der C-Sprache verwendet, einschließlich Real- und Imaginärteilen. Seine Initialisierungsform ist complex_number = 3.14 + 2.71i, auf den Realteil kann über creal(complex_number) und auf den Imaginärteil über cimag(complex_number) zugegriffen werden. Dieser Typ unterstützt gängige mathematische Operationen wie Addition, Subtraktion, Multiplikation, Division und Modulo. Darüber hinaus wird eine Reihe von Funktionen zum Arbeiten mit komplexen Zahlen bereitgestellt, z. B. cpow, csqrt, cexp und csin.

Was bedeutet Fabs in C++? Was bedeutet Fabs in C++? May 08, 2024 am 01:15 AM

Die Funktion fabs() ist eine mathematische Funktion in C++, die den absoluten Wert einer Gleitkommazahl berechnet, das negative Vorzeichen entfernt und einen positiven Wert zurückgibt. Es akzeptiert einen Gleitkommaparameter und gibt einen absoluten Wert vom Typ Double zurück. Fabs(-5.5) gibt beispielsweise 5,5 zurück. Diese Funktion arbeitet mit Gleitkommazahlen, deren Genauigkeit von der zugrunde liegenden Hardware beeinflusst wird.

Was bedeutet Konfiguration in Java? Was bedeutet Konfiguration in Java? May 07, 2024 am 02:39 AM

Config stellt Konfigurationsinformationen in Java dar und wird zum Anpassen des Anwendungsverhaltens verwendet. Es wird normalerweise in externen Dateien oder Datenbanken gespeichert und kann über Java Properties, PropertyResourceBundle oder Bibliotheken von Drittanbietern verwaltet werden. Umweltbewusstsein, Handhabbarkeit, Skalierbarkeit.

Was bedeutet min in C++? Was bedeutet min in C++? May 08, 2024 am 12:51 AM

Die min-Funktion in C++ gibt das Minimum mehrerer Werte zurück. Die Syntax lautet: min(a, b), wobei a und b die zu vergleichenden Werte sind. Sie können auch eine Vergleichsfunktion angeben, um Typen zu unterstützen, die den <-Operator nicht unterstützen. C++20 hat die Funktion std::clamp eingeführt, die mindestens drei oder mehr Werte verarbeitet.

So berechnen Sie den absoluten Wert in C++ So berechnen Sie den absoluten Wert in C++ May 06, 2024 pm 06:21 PM

Es gibt drei Möglichkeiten, den Absolutwert in C++ zu ermitteln: Mit der Funktion abs() können Sie den Absolutwert jeder Art von Zahl berechnen. Mit der Funktion std::abs() können Sie den Absolutwert von Ganzzahlen, Gleitkommazahlen und komplexen Zahlen berechnen. Manuelle Berechnung absoluter Werte, geeignet für einfache ganze Zahlen.

See all articles