Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiele dafür, wie Python durch Protokollierung Protokolle in Dateien und Konsolen schreibt

Beispiele dafür, wie Python durch Protokollierung Protokolle in Dateien und Konsolen schreibt

不言
不言Original
2018-05-24 15:08:583179Durchsuche

Das Folgende ist ein Beispiel für das Schreiben von Protokollen in Dateien und Konsolen in Python. Es hat einen guten Referenzwert und ich hoffe, es wird für alle hilfreich sein. Schauen wir uns gemeinsam

wie unten gezeigt an:

import logging 

# 创建一个logger 
logger = logging.getLogger('mylogger') 
logger.setLevel(logging.DEBUG) 
# 创建一个handler,用于写入日志文件 
fh = logging.FileHandler('test.log') 
fh.setLevel(logging.DEBUG) 
# 再创建一个handler,用于输出到控制台 
ch = logging.StreamHandler() 
ch.setLevel(logging.DEBUG) 
# 定义handler的输出格式 
formatter = logging.Formatter('[%(asctime)s][%(thread)d][%(filename)s][line: %(lineno)d][%(levelname)s] ## %(message)s')
fh.setFormatter(formatter) 
ch.setFormatter(formatter) 
# 给logger添加handler 
logger.addHandler(fh) 
logger.addHandler(ch) 
# 记录一条日志 
logger.info('foorbar')

In Bezug auf die Formatiererkonfiguration %( Die Form von 1dea5f48fed82ca0e7a5493fa56c2e35)s ist der Schlüsselwortersatz des Wörterbuchs. Zu den bereitgestellten Schlüsselwörtern gehören:

Die protokollierte Nachricht, berechnet als msg % args.
Format Beschreibung
%(name)s
Format Description
%(name)s Name of the logger (logging channel).
%(levelno)s Numeric logging level for the message (DEBUG, INFO, WARNING, ERROR, CRITICAL).
%(levelname)s Text logging level for the message ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL').
%(pathname)s Full pathname of the source file where the logging call was issued (if available).
%(filename)s Filename portion of pathname.
%(module)s Module (name portion of filename).
%(funcName)s Name of function containing the logging call.
%(lineno)d Source line number where the logging call was issued (if available).
%(created)f Time when the LogRecord was created (as returned by time.time()).
%(relativeCreated)d Time in milliseconds when the LogRecord was created, relative to the time the logging module was loaded.
%(asctime)s Human-readable time when the LogRecord was created. By default this is of the form “2003-07-08 16:49:45,896” (the numbers after the comma are millisecond portion of the time).
%(msecs)d Millisecond portion of the time when the LogRecord was created.
%(thread)d Thread ID (if available).
%(threadName)s Thread name (if available).
%(process)d Process ID (if available).
%(message)s The logged message, computed as msg % args.
Name des Loggers (Protokollierungskanal).
%(levelno)s

Numerische Protokollierungsstufe für die Nachricht (DEBUG
, INFO, WARNUNG

, FEHLER, KRITISCH).
%(levelname)s Textprotokollierungsebene für die Nachricht ('DEBUG'

, 'INFO', 'WARNING', 'ERROR'

, 'CRITICAL'

).
%(pathname)s
Vollständiger Pfadname der Quelldatei, in der der Protokollierungsaufruf ausgegeben wurde ( falls verfügbar).
%(filename)s Dateinamensteil des Pfadnamens.
%(module)s

Module (name Teil des Dateinamens).
%(funcName)s
Name der Funktion, die den Protokollierungsaufruf enthält.
%(lineno)d Quellzeilennummer, in der der Protokollierungsaufruf ausgegeben wurde (falls verfügbar).
%(created)f

tt>

Zeit, zu der der LogRecord erstellt wurde (wie von der -Zeit zurückgegeben. time()).
%(relativeCreated)d Zeit in Millisekunden, als der LogRecord erstellt wurde, relativ zum Zeitpunkt, zu dem das Protokollierungsmodul geladen wurde.
%(asctime)s Menschenlesbare Zeit, zu der der LogRecord erstellt wurde. Standardmäßig ist dies der Fall hat die Form „2003-07-08 16:49:45,896“ (die Zahlen nach dem Komma sind Millisekundenteile der Zeit).
%(msecs)d Millisekundenanteil der Zeit, in der der LogRecord tt> wurde erstellt.
%(thread)d Thread-ID ( falls verfügbar).
%(threadName)s Thread-Name (falls verfügbar).
%(process)d Prozess ID (falls verfügbar).
%(message)s
Verwandte Empfehlungen: Beispielcode für Python zur Implementierung von Log LogEine kurze Diskussion zum Konfigurationsdateipfadproblem von Python-Protokollen

Das obige ist der detaillierte Inhalt vonBeispiele dafür, wie Python durch Protokollierung Protokolle in Dateien und Konsolen schreibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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