日志旋转时,线程功能停止记录

时间:2019-08-27 21:40:17

标签: python python-3.x multithreading logging

我有一个使用“ rotateFileHandler”的python 3程序,请注意,当日志文件旋转时,我的线程化python函数停止记录。

这是一个普遍的问题吗?如果是,那么有关如何处理的建议?

Logging.conf ---------------------------------------------------------------

[loggers]
keys=root

[handlers]
keys=rotateFileHandler

[formatters]
keys=simpleFormatter

[logger_root]
level=DEBUG
handlers=rotateFileHandler

[handler_rotateFileHandler]
class=handlers.RotatingFileHandler
level=INFO
formatter=simpleFormatter
args=('%(logto)s', 'a', 1000000, 5, 'utf8')

[formatter_simpleFormatter]
format=%(thread)d:%(asctime)s:%(levelname)s: %(message)s; %(filename)s:%(lineno)d)
datefmt=%Y-%m-%d %H:%M:%S

常规代码流:------------------------------------------- -----------------

def get_flow_State:


if __name__ == '__main__':
...
...
logging.config.fileConfig(config, disable_existing_loggers=False, defaults={'logto': logto})
...
...

# start consumer thread, will handle all return state handling
# Note: get_flow_state stops logging when fileRotateHandler rotates file

try:
    t1 = threading.Thread(target=get_flow_state)
    t1.start()
except Exception as e:
    this.logger.error("Error: unable to start response queue thread:%s", e)

# startup atom
app.run(threaded=True, port=int(port), host='0.0.0.0', debug=False) 

0 个答案:

没有答案