日志结构
(0.2.2
+)
工具箱从0.2.2版本开始会在运行时输出日志,在数据目录下的latest.log
是最后一次运行时的日志,目前暂不保留历史日志。
在技术上,工具箱采用的日志模块是loguru
,这是Python的第三方日志模块而非内置模块logging
。输出日志的层级上,基于loguru
的内建层级,工具箱对其做如下规定:
日志等级规定
- TRACE - 默认被隐藏的日志等级,用于记录异步操作的开始与事无巨细的用户GUI操作。
- DEBUG - 调试等级,用于记录程序运行层面的进展与打印步骤中数据。
- INFO - 消息等级,用于打印用户能够从GUI层面上感知到的变化。
- SUCCESS - 成功消息等级,用于记录操作成功。
- WARNING - 警告等级,表明需要得到重视的程序情况,或很可能导致意外的操作。
- ERROR - 错误等级,表示程序遇到了意外的输入或操作,该正在进行的输入或操作必须终止,此外程序仍然可以继续运行。
- CRITICAL - 严重错误等级,表示程序遇到致命问题无法运行。
2025-01-23T16:28:11.709381+0800 | DEBUG | 模块导入完成。
2025-01-23T16:28:11.784643+0800 | DEBUG | 程序初始化完成。
2025-01-23T16:28:12.786067+0800 | SUCCESS | 工具箱本体进入事件循环。
2025-01-23T16:28:16.985638+0800 | SUCCESS | 已获取到用户信息,登录成功。
2025-01-23T16:28:18.613657+0800 | INFO | 工具箱主页初始化完毕。
2025-01-23T16:28:18.614658+0800 | INFO | 已将用户信息应用在工具箱主页上。
2025-01-23T16:28:18.614658+0800 | SUCCESS | 工具箱主页加载完毕。
2025-01-23T16:28:18.727397+0800 | DEBUG | 获取并更新了工具箱新闻 {'body': '这是芒果工具箱的第一条新闻嗷!', 'id': 1, 'time': '2024-12-23', 'title': '芒果工具箱新闻模块开工动土!'}。
2025-01-23T16:28:18.728914+0800 | DEBUG | 获取工具箱当前版本信息 {'desc': {'0.2.0': 'Full Rebuild Again.', '0.2.1': 'Update for the self-update-check-system and other small changes.'}, 'latest': '0.2.1'} 。
如果你贡献的代码中需要输出日志
使用项目结构./app/common/logger.py
中的logger
对象的trace
、debug
、……、critical
方法来打印你需要的日志。如果你编辑的文件中尚未导入logger
,你可能需要类似如下代码来完成相对导入:
python
from ..common.logger import logger