flask 简单设置日志文件配置

最近做了几个模型,需要配置接口提供使用,这时候就用到了日志系统

首先创建一个 logs.py 文件,在文件中配置日志等级、保存路径、日志文件大小、日志输出格式

import os
import logging
from logging.handlers import RotatingFileHandler

# 获取当前绝对路径
def get_cwd():
    return os.path.dirname(os.path.abspath(__file__))

def log_config():
    # 设置日志的的登记
    logging.basicConfig(level=logging.INFO)

    # 日志输出目录
    log_path = os.path.join(get_cwd(),'flask.log')
    # 创建日志记录器,设置日志的保存路径和每个日志的大小和日志的总大小
    file_log_handler = RotatingFileHandler(log_path, encoding='UTF-8', maxBytes=1024*1024*100,backupCount=100)
    # 创建日志记录格式,日志等级,输出日志的文件名 行数 日志信息
    # formatter = logging.Formatter("%(levelname)s %(asctime)s [%(filename)s]: %(lineno)s - %(funcName)s - %(message)s")
    formatter = logging.Formatter("%(levelname)s %(asctime)s [%(filename)s]: %(lineno)s - %(funcName)s - %(message)s")
    # 为日志记录器设置记录格式
    file_log_handler.setFormatter(formatter)
    # 为全局的日志工具对象(flaks app使用的)加载日志记录器
    logging.getLogger().addHandler(file_log_handler)

配置完这些,再接口中,每次启用都调用一些这个方法,就可以收集日志

from logs.logs import log_config
import logging

log_config() # 创建app前设置日志
app = Flask(__name__)

@app.route('/')
def hello_world():
    logging.info('测试日志系统~~')
    return 'Address nlp_test!!'

ok,这样就会在同级目录下生成日志文件,等文件大小满了之后,会继续创建新的文件,以此类推

除此之外,还需要设置接收数据的格式和回传数据格式,获取post请求的json数据时,请求的 Content-Type 需要是 application/json

posted @ 2023-09-13 14:39  Mr·Li程序员  阅读(285)  评论(0编辑  收藏  举报