Python/torch/深度学习——logging库生成日志

# Python/torch/深度学习——logging库生成日志



前言

logging库生成日志使用记录,细节就不讲了,具体可看“Python的Logging模块”
参考网址:Python的Logging模块
参考网址:python保存日志文件


完整代码

import logging
import os
import time


def logging_init(logging_level=logging.INFO):
    logger = logging.getLogger('socket_logger')
    logger.setLevel(level=logging_level)
    # 获取当前时间
    time_line = time.strftime('%Y_%m_%d', time.localtime(time.time()))
    
    # 保存文件夹路径
    log_path = os.path.join(os.getcwd(), 'logging')
    # 保存文本路径
    log_file = os.path.join(log_path, f'{time_line}.txt')
    
    handler = logging.FileHandler(log_file, encoding="utf-8", mode='a')
    
    # 设置输出格式
    formatter = logging.Formatter("%(asctime)s - %(levelname)s: %(message)s")
    # 设置handler的输出格式
    handler.setFormatter(formatter)
    
    logger.addHandler(handler)
    return logger


def socket_log(logger, message):
    logger.info(message)


logger = logging_init()
socket_log(logger, '1')

几个函数采坑记录

time.strftime()

获得当前时间,这里选择只保存年_月_日,用于按日建log文件,第二种是保存了秒和毫秒

time_line = time.strftime('%Y_%m_%d', time.localtime(time.time()))
# time_line = time.strftime('%Y_%m_%d_%H_%M', time.localtime(time.time()))

logging.getLogger()

这个括号里填不填好像区别不大?
目前没有出问题,也没找到有人讲,欢迎知道的大佬留言


logging.FileHandler()

# FileHandler():如果文件不存在,会自动创建文件,不需要再自己判断,但是如果是文件夹不存在会直接报错
# log_file:log文件的保存路径,以.txt结尾
# mode:总共两种模式
# 'w':覆盖写入,会自动清除之前log文件中内容
# 'a':在已有内容后继续写,不会清除已有内容
handler = logging.FileHandler(log_file, mode='w')
#  encoding="utf-8":允许保存中文
handler = logging.FileHandler(log_file, encoding="utf-8", mode='a')

logging.Formatter()

详细内容可以看参考网址:Python的Logging模块

# 设置输出格式
# 当前日期(年-月-日 24小时制小时:分:秒,毫秒) - 等级名:信息
formatter = logging.Formatter("%(asctime)s - %(levelname)s: %(message)s")
# 示例输出结果:
# 2023-12-20 14:40:34,966 - INFO: 1
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值