Python实现日志同时输出到屏幕和文件

  

<强> 1。日志输出到屏幕

        # !/usr/bin/env python   # - * -编码:utf - 8 - *      从__future__进口absolute_import   从__future__进口部门   从__future__进口print_function      导入日志      logging.basicConfig(=日志级别。NOTSET、格式=' % s - (asctime) %(名字)s - % (levelname) s - %(消息)s ')      logging.debug(“这是一个调试消息。”)   logging.info(“这是一个信息消息。”)   日志记录。警告(“这是一个警告消息。”)   日志记录。错误(“这是一个错误消息”。)   日志记录。重要的(这是一个关键的消息。)   之前      

默认的是日志级别。警告,低于这个级别的就不输出了。如果需要显示低于日志记录。警告级别的内容,可以引入日志记录。NOTSET级别来显示。

  

调试-打印全部的日志。详细的信息,通常只出现在诊断问题上。

  

INFO -打印信息、警告、错误,关键级别的日志。确认一切按预期运行。

  

警告——打印警告、错误,关键级别的日志。表明一些问题在不久的将来,这个软件还能按预期工作。

  

错误——打印错误,关键级别的日志。更严重的问题,软件没能执行一些功能。

  

关键:打印关键级别。一个严重的错误,表明程序本身可能无法继续运行。

     /usr/bin/python2.7/home/strong/git_workspace/MonoGRNet/test.py   2019-06-26 16:00:45,990 -根-调试-这是一个调试消息。   2019-06-26 16:00:45,990 -根-信息-这是一个信息的信息。   2019-06-26 16:00:45,990根-警告这是一个警告消息。   2019-06-26 16:00:45,990 -根错误-这是一个错误消息。   2019-06-26 16:00:45,990 -根至关重要——这是一个重要的消息。      过程完成退出代码0   之前      

<强> 2。日志输出到文件

        # !/usr/bin/env python   # - * -编码:utf - 8 - *      从__future__进口absolute_import   从__future__进口部门   从__future__进口print_function      导入日志   进口os.path   导入的时间      记录器=logging.getLogger ()   logger.setLevel (logging.DEBUG)      time_line=trftime (Y ' % % m % d % H % m ', time.localtime (time.time ()))      print (os.getcwd ())   log_path=os.path.dirname (os.getcwd ()) + '/'   日志文件=log_path + time_line + ' . log '      处理程序=日志记录。文件句柄(日志文件模式=' w ')   handler.setLevel (logging.INFO)      格式化程序=logging.Formatter (“% (asctime) s - %(文件名)s[线:% (lineno) d] - % (levelname): %(消息)”)   handler.setFormatter (formatter)      logger.addHandler(处理器)      logger.debug(“这是一个调试消息。”)   logger.info(“这是一个信息消息。”)   记录器。警告(“这是一个警告消息。”)   记录器。错误(“这是一个错误消息”。)   记录器。重要的(这是一个关键的消息。)   之前         /usr/bin/python2.7/home/strong/git_workspace/MonoGRNet/test.py/home/strong/git_workspace/MonoGRNet      过程完成退出代码0   之前      

201906261627.的日志         2019-06-26 16:27:26,899 -测试。py(线:30)——信息:这是一个信息的信息。   2019-06-26 16:27:26,899 -测试。py(线:31)——警告:这是一个警告消息。   2019-06-26 16:27:26,899 -测试。py[线:32]-错误:这是一个错误消息。   2019-06-26 16:27:26,899 -测试。py(线:33)——至关重要的:这是一个关键的消息。      

<强> 3。日志同时输出到屏幕和文件

        # !/usr/bin/env python   # - * -编码:utf - 8 - *      从__future__进口absolute_import   从__future__进口部门   从__future__进口print_function      导入日志   进口os.path   导入的时间      记录器=logging.getLogger (__name__)   logger.setLevel(水平=logging.DEBUG)      time_line=trftime (Y ' % % m % d % H % m ', time.localtime (time.time ()))      print (os.getcwd ())   log_path=os.path.dirname (os.getcwd ()) + '/'   日志文件=log_path + time_line + ' . log '      处理程序=日志记录。文件句柄(日志文件模式=' w ')   handler.setLevel (logging.INFO)      格式化程序=logging.Formatter (“% (asctime) s - %(文件名)s[线:% (lineno) d] - % (levelname): %(消息)”)   handler.setFormatter (formatter)      控制台=logging.StreamHandler ()   console.setLevel (logging.WARNING)      logger.addHandler(处理器)   logger.addHandler(控制台)      logger.debug(“这是一个调试消息。”)   logger.info(“这是一个信息消息。”)   记录器。警告(“这是一个警告消息。”)   记录器。错误(“这是一个错误消息”。)   记录器。重要的(这是一个关键的消息。)   

Python实现日志同时输出到屏幕和文件