我需要在 Flask 服务器上编写一个方法,它将部分请求写入日志文件。但是,如果我理解正确的话,Flask 是多线程的,写入文件很可能是不安全的。
诚然,总的来说,我对 python 和多线程编程或多或少是新手,所以我需要有人稍微牵着我的手:)
到目前为止我的代码(稍作修改,如果没有其中的部分内容,我在网上发布时会遇到麻烦)
@app.route('/store_test')
def store_test():
now = str(time.time())
ip_address = request.remote_addr
agent = request.user_agent.string
log_data = [now,ip_address,agent]
log_data_string = "\t".join(log_data)
filename = "log.dat"
f = open(filename,'a')
f.write(log_data_string + "\n")
f.close()
return 'OK'
我猜我需要在 open 和 close 语句周围包装一些代码,但我不知道是什么,我正在阅读“Python in a Nutshell”一书中的线程和进程一章,它并没有真正给我太多关于如何实际使用这些方法的想法。
任何帮助,将不胜感激。