loguru使用

2024-09-19  本文已影响0人  RS_jianshu
import os
from pathlib import Path
from loguru import logger


BASE_DIR = Path(__file__).resolve().parent
print(BASE_DIR)
# 设置主日志文件,所有日志都会记录在此文件中
log_file_path = os.path.join(BASE_DIR, "logs")
# 如果不存在这个logs文件夹,就自动创建一个
if not os.path.exists(log_file_path):
    os.mkdir(log_file_path)
# 按照日期切割
log_name = 'api.{time:YYYY-MM-DD}.log'
format_ = "{time:YYYY-MM-DD HH:mm:ss.SSS}|{level}|{name}|{file}|{function}|-|{line}|{message}"

logger.add(
    sink=os.path.join(log_file_path, log_name),  # sink:为记录器生成的每条记录指定目的地。默认情况下,它设置为 sys.stderr
    rotation='00:00',
    # rotation="1 minutes",
    retention='7 days',
    enqueue=True,  # enqueue:启用此选项会将日志记录放入队列中,以避免多个进程记录到同一目的地时发生冲突。
    encoding='utf-8',
    level='INFO',
    # filter=lambda record: record["level"].name == 'INFO',  # 仅记录INFO日志,根据需要过滤
    format=format_
)
上一篇 下一篇

猜你喜欢

热点阅读