Python 3.x 是否可以根据flask中的路由动态更改日志文件位置?

Python 3.x 是否可以根据flask中的路由动态更改日志文件位置?,python-3.x,flask,logging,Python 3.x,Flask,Logging,我有一个烧瓶应用程序与各种路线设置 我想记录消息,以便为每个路由转到不同的日志文件 这可能吗 在响应每个路由上的请求的函数中,我尝试过这样做(注意,为了示例起见,这只是伪代码): 我希望这意味着对routeC的请求会转到routeC.log,类似于A和B 但是,如果在启动uwsgi后,我首先点击/routeC,这似乎会设置所有日志以访问routeC.log,这样当我点击路由A或B时,它们的日志行也会在routeC.log中结束 如果我先点击routeB或routeA,也会发生类似的情况——无论哪

我有一个烧瓶应用程序与各种路线设置

我想记录消息,以便为每个路由转到不同的日志文件

这可能吗

在响应每个路由上的请求的函数中,我尝试过这样做(注意,为了示例起见,这只是伪代码):

我希望这意味着对routeC的请求会转到routeC.log,类似于A和B

但是,如果在启动uwsgi后,我首先点击/routeC,这似乎会设置所有日志以访问routeC.log,这样当我点击路由A或B时,它们的日志行也会在routeC.log中结束

如果我先点击routeB或routeA,也会发生类似的情况——无论哪个获得第一个请求,都会建立到该文件的日志记录,而其他路由似乎无法覆盖其请求的日志记录

这种根据请求动态设置日志文件位置的方法是否可行

如果是,我做错了什么


我觉得我缺少了一些基本的东西…

可能会有帮助。这有帮助,但对我来说,问题是我似乎需要独立命名伐木工人。我有一个广泛的应用程序,整个应用程序只使用标准日志类,前面是flask,因此我希望根据路由设置对象中的名称/日志位置,而不是为每个路由设置整个不同的记录器。我可以编写一个代理类或函数来处理切换到某个命名日志记录程序的操作,或者扩展基本日志记录类来实现这一点,我想这两个选项都需要对应用程序的其余部分进行大量更新,我想这可能会有所帮助。这很有帮助,但对我来说,问题是我似乎需要命名日志记录程序独立地。我有一个广泛的应用程序,整个应用程序只使用标准日志类,前面是flask,因此我希望根据路由设置对象中的名称/日志位置,而不是为每个路由设置整个不同的记录器。我可以编写一个代理类或函数来处理切换到某个命名记录器的操作,或者扩展基本日志类来实现这一点,我想这两个选项都需要对应用程序的其余部分进行大量更新,这是我希望避免的

@app.route('/routeA', methods=['POST'])
def routeA():
    logging.basicConfig(filename='/path/to/routeA.log'))
    ...

@app.route('/routeB', methods=['POST'])
def routeB():
    logging.basicConfig(filename='/path/to/routeB.log'))
    ...

@app.route('/routeC', methods=['POST'])
def routeC():
    logging.basicConfig(filename='/path/to/routeC.log'))
    ...