django日志使用笔记

文章目录

django框架本身就带日志,一般配置在settings文件里。

配置

下列示例拿过去直接就可以用:

py 复制代码
import os
from pathlib import Path

# 获取项目根目录 (确保 BASE_DIR 已定义,通常在文件顶部)
# BASE_DIR = Path(__file__).resolve().parent.parent 

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,  # 不要禁用默认的 logger
    
    # 定义格式
    'formatters': {
        'verbose': {
            'format': '{levelname} {asctime} {module} {message}',
            'style': '{',
        },
        'simple': {
            'format': '{levelname} {message}',
            'style': '{',
        },
    },

    # 定义处理器 (Handlers)
    'handlers': {
        # 控制台输出
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'verbose',
        },
        # 文件输出
        'file': {
            'level': 'INFO',
            'class': 'logging.FileHandler',
            'filename': os.path.join(BASE_DIR, 'django_debug.log'), # 日志文件保存在项目根目录
            'encoding': 'utf-8',  # 关键:防止中文乱码
            'formatter': 'verbose',
        },
    },

    # 定义记录器 (Loggers)
    'loggers': {
        # Django 框架本身的日志
        'django': {
            'handlers': ['console', 'file'],
            'level': 'INFO',  # Django 内部日志级别
            'propagate': True,
        },
        # 你自己的 App 日志 (替换 'mysite' 为你的项目名或 app 名)
        'mysite': { 
            'handlers': ['console', 'file'],
            'level': 'DEBUG', # 你的代码日志级别
            'propagate': False,
        },
        # 捕获所有未明确配置的 logger (根记录器)
        '': { 
            'handlers': ['console', 'file'],
            'level': 'WARNING',
        },
    },
}
相关推荐
Decay__12 分钟前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
sbjdhjd3 小时前
网工进阶笔记:H3CSE 园区网全栈技术与协议汇总
网络·笔记·云计算·ssh·网络工程·vlan·aaa
小徐不徐说4 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
论文复现现场5 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
Decay__6 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
海绵宝宝的月光宝盒6 小时前
14-AutoCAD-阵列命令应用与案例实战(AR)
经验分享·笔记·自动化·课程设计·制造·学习方法·cad
心梦缘-雪雁7 小时前
SQL Server 查询数据存在哪个表里
数据库
白山编程大哥7 小时前
接口幂等性是什么?如何设计?
笔记
ACP广源盛139246256737 小时前
6 盘位存储扩展方案选型笔记:YLB3116 @ACP评估记录
笔记·硬件架构·硬件工程·国产芯片
小李不想当小白7 小时前
SPI通信外设与W25Q64 (硬件SPI)(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式