django日志

urls.py

python 复制代码
"""data_analyse_web URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/3.2/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path

from django.http import HttpResponse


def log(request):
    # 1.导入
    import logging
    # 2.创建日志器
    logger = logging.getLogger("django")  # settings里设置的日志器的名字
    # 3.调用日志器的方法来保存日志
    logger.info("用户登陆了")
    logger.warning("redis缓存不足")
    logger.error("数据保存在")
    logger.debug("~~~~~~~~~~~")
    return HttpResponse("log")


urlpatterns = [
    path('admin/', admin.site.urls),
    path("log/", log)
]

settings.py

python 复制代码
# logging settings
LOGGING = {
    "version": 1,
    "disable_existing_loggers": False,  # 是否禁用已经存在的日志器 false-不禁用
    "formatters": {  # 日志显示格式
        "verbose": {
            "format": "%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s"
        },
        "simple": {
            "format": "%(levelname)s %(module)s %(lineno)d %(message)s"
        }
    },
    "filters": {  # 对日志进行过滤
        "require_debug_true": {
            "()": "django.utils.log.RequireDebugTrue",
        },
    },
    "handlers": {  # 日志处理方法
        "console": {  # 向终端输出日志
            "level": "INFO",
            "filters": ["require_debug_true"],
            "class": "logging.StreamHandler",
            "formatter": "simple"

        },
        "file": {  # 向文件输出日志
            "level": "INFO",
            "class": "logging.handlers.RotatingFileHandler",
            "filename": os.path.join(BASE_DIR, "logs/web.log"),  # 日志文件的位置
            "maxBytes": 300 * 1024 * 1024,
            "backupCount": 10,
            "formatter": "verbose"
        }
    },
    "loggers": {  # 日治器
        "django": {  # 定义了一个名为django的日志器
            "handlers": ["console", "file"],  # 可同时向终端和日志中输出日志
            "propagate": True,  # 是否继续传递日志信息
            "level":"INFO",# 日志器接收的最低日志级别
        }
    }
}
相关推荐
workflower3 小时前
单元测试-例子
java·开发语言·算法·django·个人开发·结对编程
唐古乌梁海11 小时前
【python】在Django中,执行原生SQL查询
python·sql·django
小宁爱Python12 小时前
Django Web 开发系列(二):视图进阶、快捷函数与请求响应处理
前端·django·sqlite
Q_Q196328847519 小时前
python+uniapp基于微信小程序的助眠小程序
spring boot·python·小程序·django·flask·uni-app·node.js
小宁爱Python1 天前
Django Web 开发系列(一):视图基础与 URL 路由配置全解析
后端·python·django
大飞记Python1 天前
部门管理|“编辑部门”功能实现(Django5零基础Web平台)
前端·数据库·python·django
Q_Q5110082851 天前
python+uniapp基于微信小程序团购系统
spring boot·python·微信小程序·django·uni-app·node.js·php
给我起把狙2 天前
Django与Tornado框架深度对比:从MVCMTV到高并发架构设计
python·django·tornado
weixin_421133412 天前
django xadmin 结合 minio
数据库·django·sqlite
患得患失9492 天前
【NestJS】NestJS三件套:校验、转换与文档生成,对比Django DRF
django·sqlite·nestjs