Django后台项目开发实战六

日志记录

第六阶段

日志处理教程 Django 日志处理

我这里实现一个简单的日志,在 setting.py 文件添加日志

python 复制代码
LOGGING = {
    # 版本
    'version': 1,
    # 是否禁止默认配置的记录器
    'disable_existing_loggers': False,
    'formatters': {
        'simple': {
            'format': '%(asctime)s %(name)-12s %(lineno)d %(levelname)-8s %(message)s'
        }
    },
    'handlers': {
        # 标准输出
        'console': {
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'mail_admins':{
            'level': 'ERROR',
            'class':'django.utils.log.AdminEmailHandler'
        },
        # 自定义 handlers,输出到文件
        'file': {
            'class': 'logging.FileHandler',
            'filename': os.path.join(os.path.dirname(BASE_DIR), 'web-log.log'),
            'formatter': 'simple',
        },
    },
    'root':{
        'handlers':['console','file'],
        'level':'INFO'
    },
    'loggers': {
        'django': {
            'handlers': ['console','file'],
            'level': 'ERROR',
        }
    }
}

在 interview 文件夹下的 admin.py 文件添加写入日志的代码,当导出 csv 时便会记录操作

python 复制代码
import logging

logger = logging.getLogger(__name__)

def export_model_as_csv(modeladmin,request,queryset):
    ...

    logger.info("%s exported %s candidate records" % (request.user,len(queryset)))

    return response

效果图就不展示了,大家自己操作一下就好

第六阶段结束!

相关推荐
MZ_ZXD0011 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
Goat恶霸詹姆斯1 小时前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七2 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草2 小时前
redis-9-哨兵
数据库·redis·bootstrap
明哥说编程2 小时前
Dataverse自定义表查询优化:D365集成大数据量提速实战【索引配置】
数据库·查询优化·dataverse·dataverse自定义表·索引配置·d365集成·大数据量提速
xiaowu0802 小时前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
讯方洋哥2 小时前
HarmonyOS App开发——关系型数据库应用App开发
数据库·harmonyos
惊讶的猫3 小时前
Redis持久化介绍
数据库·redis·缓存
Apple_羊先森3 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
全栈前端老曹4 小时前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈