主页 > 人工智能  > 

Backend-日志记录


目录

1. settings.py 文件设定

2. book_log.py 文件设定

3. view 视图文件调用


1. settings.py 文件设定

文件位置:BookProject 目录下

LOG_PATH = os.path.join(os.getcwd(), 'logs')  # 设定日志文件位置:项目名下的logs文件夹中 2. book_log.py 文件设定

文件位置:BookApp.views.tools 中

理解下方代码的时间线:-----要删除文件的所在时间范围-----mark_day节点-----暂时保留文件的所在时间-----today节点---->

import os from BookProject.settings import LOG_PATH from threading import Thread import logging import logging.handlers import datetime # 生成 logs 文件夹 if not os.path.exists(LOG_PATH):     os.mkdir(LOG_PATH) # 生成 log 文件 log_file_name=os.path.join(LOG_PATH,'{}.log'.format(str(datetime.datetime.now().strftime('%Y-%m-%d'))))  # 项目名\logs\XXXX-XX-XX.log # log日志的基础配置 logging.basicConfig(     handlers=[logging.handlers.TimedRotatingFileHandler(filename=log_file_name, when='D', interval=60*60*24, backupCount=2)]     ,level=logging.DEBUG     ,format='%(asctime)s  %(message)s'  # 日志内容的展示格式     ,datefmt='[%Y-%m-%d %H:%M:%S]' # 日志内容的记录时间格式     ) # 操作成功的日志记录 def info_threadjob(msg):     logging.info(msg) def log_success(msg):     t1 = Thread(target=info_threadjob, args=(msg,))     t1.start() # 操作失败的日志记录 def err_threadjob(msg):     logging.exception(msg) def log_error(msg):     t1 = Thread(target=err_threadjob, args=(msg,))     t1.start() # 删除几天前操作的日志文件 def del_logs():     day_len = 1 # 天数     today = datetime.datetime.now()  # 今天时间     prev_day = datetime.timedelta(days=-day_len)  # 前 day_len 天     mark_day = today + prev_day  # 前day_len天的具体日期时间节点,2023-01-27 16:29:29.206065     res_list = os.listdir(LOG_PATH)  # 日志文件位置列表     for r in res_list: # 循环每个日志文件         log_file = os.path.join(LOG_PATH, r)         file_time = os.path.getmtime(log_file)  # 文件的最后修改时间(注意是文件实实在在有修改的时间,而不是文件内容里的时间,也不是日志文件名上的时间)         if datetime.datetime.fromtimestamp(file_time) <= mark_day: # 前者 2021-01-28 16:12:02.148921             os.remove(log_file) 3. view 视图文件调用

注意:写入日志的内容,不能有中文

from BookApp.views.tools.book_log import * log_success("1. start getting data from from_db")  # 记录操作成功讯息 try:     del_logs()  # 删除已有日志文件 except Exception as e:     log_error("error: {}".format(str(e)))  # 记录操作失败讯息

标签:

Backend-日志记录由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Backend-日志记录