StreamHandler
: console, FileHandler
: fichierSi vous voulez le régler sur l'heure japonaise, vous devez jouer avec l'attribut Formatter.converter
.
Puisque Formatter.converter
est un appelable qui renvoie time.struct_time
, définissez une fonction appropriée.
def customTime(*args):
return datetime.now(timezone('Asia/Tokyo')).timetuple()
.timetuple ()
, veuillez commenter.main.py
import logging
from pytz import timezone
from datetime import datetime
#Nommez-le enregistreur.En appelant avec ce nom, les paramètres suivants seront hérités d'autres modules..
logger = logging.getLogger("example")
logger.setLevel(logging.DEBUG)
#Paramètres du gestionnaire à afficher sur la console
sh = logging.StreamHandler()
sh.setLevel(logging.DEBUG)
def customTime(*args):
return datetime.now(timezone('Asia/Tokyo')).timetuple()
formatter = logging.Formatter(
fmt='%(levelname)s : %(asctime)s : %(message)s',
datefmt="%Y-%m-%d %H:%M:%S %z"
)
formatter.converter = customTime
sh.setFormatter(formatter)
#Paramètres du gestionnaire à exporter dans un fichier
fh = logging.FileHandler("logs/example.log")
fh.setLevel(logging.DEBUG)
def customTime(*args):
return datetime.now(timezone('Asia/Tokyo')).timetuple()
formatter = logging.Formatter(
fmt='%(levelname)s : %(asctime)s : %(message)s',
datefmt="%Y-%m-%d %H:%M:%S %z"
)
formatter.converter = customTime
fh.setFormatter(formatter)
logger.addHandler(sh)
logger.addHandler(fh)
Recommended Posts