我已经创建了这个python脚本来帮助我在运行脚本时创建日志文件,它在我自己的机器上运行良好。但由于某种原因,确切的代码不适用于其他机器。 在我的机器中,它显示pycharm控制台中的日志,并将它们保存在文件中。在其他机器中,除了创建空白文件外,它不会做任何事情。
我做错了什么?
log = logging.getLogger('Logger Name')
try:
logger_file_name = new_file_name()
handler = logging.FileHandler(logger_file_name)
formatter = logging.Formatter('%(asctime)s | %(levelname)s | %(message)s')
handler.setFormatter(formatter)
log.addHandler(handler)
log.info(logger_file_name+ ' File will be used for Saving Logs')
main()
except Exception as err:
log.debug("An Error was found which was not caught")
log.exception(err)
答案 0 :(得分:0)
尝试显式设置日志记录级别,例如:
InputStreamReader r=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(r);
String str=br.readLine();
否则,您依赖于可能安装在不同计算机上的不同python版本上可能不同的默认值。例如,在2.7.12上,默认级别设置为log.setLevel(logging.DEBUG)
,WARNING
消息不会显示 - 就像您观察到的那样。
来自2.7.12记录文档的A simple example section:
log.info()
如果您在脚本中键入这些行并运行它,您将看到:
import logging logging.warning('Watch out!') # will print a message to the console logging.info('I told you so') # will not print anything
在控制台上打印出来。
WARNING:root:Watch out!
消息未显示,因为 默认级别为INFO
...