我有一个运行时间很长的 python 代码,它调用多个 api。
我还在每一步都实现了记录器来识别异常。但是,FileHandler 仅在 python 脚本完成时显示数据。
有没有办法在固定间隔后刷新记录器?我可以用它来监控工作的状态。
# when executed standalone, the main block is called
if __name__ == '__main__':
# Crate logger for RR api application
logger = logging.getLogger('RR_API')
logger.setLevel(logging.INFO)
# create file handler which logs messages
# If the handler is already defined, then no need to set it again
if not logger.handlers:
fh = logging.FileHandler("C:///Users///2128///python_data_logger.log")
fh.setLevel(logging.DEBUG)
# create formatter and add it to the handlers
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
#add the handlers to the logger
logger.addHandler(fh)
run_ts = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
logger.info('Starting Time' + '|' + run_ts)
print ('Starting Time',datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
count = 0
token = get_temp_token(run_ts)
portfolio = get_orgs(token,'"https://apidata.ratings.com/v1.0/orgs/"',run_ts)
日志文件中的输出:
2016-12-30 16:22:01,448 - RR_API - INFO - Starting Time|2016-12-30 16:22:01
2016-12-30 16:22:01,526 - RR_API - CRITICAL - No Access Token was downloaded | 2016-12-30 16:22:01
仅当脚本执行终止时,上述行才在日志文件中可见。