症状:使用python直接运行时可以正常记入日志,使用Nginx+uWSGI部署后无日志生成。
背景介绍:
定义了一个initlogger函数对logger做了一些初始化工作。
该函数在myapi.py(flask主文件)中的name中进行启动初始化。
if __name__ == '__main__':
initlogger()
app.run(host='0.0.0.0', port=11120, debug=True)
发现没有生成日志后,想起应该在uWSGI的启动文件中进行初始化。
PS:uwsgi --socket 127.0.0.1:11121 -w WSGI:app
即在WSGI.py文件中的name中进行启动初始化。
from myapi import app
import myapi
if __name__ == "__main__":
myapi.initlogger()
app.run()
依然没有日志生成,不知道怎么处理。本人为python新手,请大家指导。
后面自己搞定了,不过具体原理还不是很理解,希望有了解的人可以补充一下,谢谢!
直接把logger初始化的语句放在主文件myapi.py中,而不是在if name == "main"中调用初始化。