django异常日志_【python小随笔】Django+错误日志(配置Django报错文件指定位置)...

1:  自定义日志文件.py----------几个文件需要创建日志,就需要重新定义几份

#1定义一个日志文件 创建一个操作日志对象logger

file_1= logging.FileHandler('text_1.log', 'a', encoding='utf-8') # text_1.log 定义日志文件名

fmt= logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s") # 定义创建时间,哪个文件,错误level,··

file_1 .setFormatter(fmt) # 建立执行

# 定义日志

logger1= logging.Logger('s1', level=logging.ERROR) # 设置日志

logger1.addHandler(file_1 )

2:将定义好的定义日志导入需要存放报错的文件,并且使用traceback模块具体化报错地点:

#导入模块

importloggingimporttraceback#导入定义好的日志变量

from Api.utils.自定义日志 importlogger1#测试1:

deffunc():try:

a= a + 1

exceptException as e:

msg=traceback.format_exc()

logger1.error(msg)

func()#报错结果:(自动创建文件并且写入错误信息)

2019-11-26 14:25:10,196 - s1 - ERROR -logging2: Traceback (most recent call last):

File"C:/Users/user/Desktop/framework/django-rest-framework/Api/utils/logging2.py", line 17, infunc

a= a + 1UnboundLocalError: local variable'a' referenced before assignment

3:直接定义logging(不推荐),需要创建多个日志文件:

import logging

# logging

logging.basicConfig(

filename='loggingdemo.txt', # 日志文件名

format='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s',

datefmt='%Y-%m-%d %H:%M:%S %p',

level=10

)

logging.debug('None')

logging.info('None') # 正常的信息

logging.warning('None') # 警告(不出错)

logging.error('None') # 报错

logging.critical('None') # 非常严重的错误

# logging.log(10,'log')

"""

CRITICAL = 50

FATAL = CRITICAL

ERROR = 40

WARNING = 30

WARN = WARNING

INFO = 20

DEBUG = 10

NOTSET = 0

"""

def func():

try:

a = a + 1

except Exception as e:

print(e)

logging.error(str(e))

func()

4:Django里指定任意日志文件位置:

#取执行文件全局绝对路径(不管在哪里启动Django都会取到这个路径) 红色的字体表示自定义名称

path= os.path.abspath(os.path.dirname(__file__))#拼接路径

files_path = path + "/keywords_logging/文件名.log" #路径+设定的日志文件名

#设置日志

keyword_expect_debug = logging.FileHandler(files_path, 'a', encoding='utf-8')

fmt= logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s")

keyword_expect_debug.setFormatter(fmt)

keyword_debug= logging.Logger('keyword_debug', level=logging.DEBUG)

keyword_debug.addHandler(keyword_expect_debug)#定义文件日志

form 文件 importkeyword_debugtry:

a= a + 1

exceptException as e:

msg=traceback.format_exc()

logging_main.keyword_debug.debug(msg)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值