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