Module : log#

Coder : ASH
Last Update : 2026-7-22-22:56
Contact : yore159357@163.com
Version : 0.0.1


Features : 功能特性#

核心功能

  1. 自动日志记录 - 自动记录事件发生的时间(相对于模块启动)
  2. 多级别日志 - 支持 debug、info、warn、error、fatal 五个标准日志级别
  3. 自定义事件类型 - 允许为日志事件添加自定义类型标签
  4. 自动文件管理 - 自动创建日志目录和日志文件
  5. 日志解析 - 提供日志文件解析和统计分析功能
  6. 日志转换 - 支持将解析后的日志重新写入日志文件

日志级别#

  • debug - 调试信息
  • info - 一般信息
  • warn - 警告信息
  • error - 错误信息
  • fatal - 致命错误

Default Parameter : 默认参数#

st:在您的程序导入时,会自动将导入的时间记作系统时,如果需要中途调用,请用赋值语句:log.st = [您所想更改的时间]

defult_log_file_dir:默认的日志文件存放目录,未修改时,默认路径为./logs


Function Declaration : 函数说明#

log(event_content,level = 'debug',type = 'event',event_time = None)#

ASH:这是主要的日志记录函数,也是模块的核心

参数#

  • event_content (str) : 日志事件内容描述

  • level (str, optional) : 日志级别,默认为 'debug'

  • type (str, optional) : 事件类型,默认为 'event'

  • event_time (float, optional) : 自定义事件时间戳,默认为 None(使用当前时间)

功能#

记录事件到日志文件并自动计算相对启动时间的时间戳,格式为:

[相对时间][级别][类型][内容]

示例#

log('程序启动')                    # 默认debug级别
log('用户登录成功', level='info')   # info级别
log('磁盘空间不足', level='warn', type='system')
log('初始化完成', event_time=time.time())

trans_log(log_list)#

ASH:日志转换函数,没啥大用

参数#

log_list (list) : 写有固定格式的日志内容的列表

功能#

  1. 解析标准格式的日志行

  2. 将解析后的日志重新写入当前日志文件

  3. 保持时间戳相对性

提示#

1.传入的列表的格式#

对于传入函数的列表,有以下格式要求:

[
    "事件1伪日志",
    "事件2伪日志",
    ...
]

对于每一条伪日志,结构要求为:

"[绝对时间][级别][类型][内容]"
2.绝对时间与相对时间#

本函数要求传入的伪日志内容要求时间为绝对时间(Unix时间戳)而非日志记录文件内的相对时间


read_log_files()#

ASH:这个函数可以读取对应路径的日志文件,并返回相应的事件类型计数 该函数返回值(dict)的结构如下:

{
    'file_name':'文件名称.log',
    'file_path':'文件路径',
    'event_num':{
        'debug':debug_number,
        'info':info_number,
        'warn':warn_number,
        'error':error_number,
        'fatal':fatal_number
    },
    'normal_exit':True
    'end_event':event
}

参数说明#

  • 'event_num' : 不同重要程度的事件类型的计数的字典,其值为int型.

  • 'normal_exit' : 对应程序退出是否正常的布尔值

  • 'end_event' : 表示结束事件的类型

在调用该函数时,请确保读取文件在模组默认所在的目录内,并使用以下语句

from Modules import log
read_result = log.read_log_file(files_path)
print(read_result)

最终输出结果可能同上