1. 日志输出到屏幕
#!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import absolute_import from __future__ import division from __future__ import print_function import logging logging.basicConfig(level=logging.NOTSET, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') logging.debug('This is a debug message.') logging.info('This is an info message.') logging.warning('This is a warning message.') logging.error('This is an error message.') logging.critical('This is a critical message.')
默认的 level 是 logging.WARNING,低于这个级别的就不输出了。如果需要显示低于 logging.WARNING 级别的内容,可以引入 logging.NOTSET 级别来显示。
DEBUG - 打印全部的日志。详细的信息,通常只出现在诊断问题上。
INFO - 打印 INFO、WARNING、ERROR、CRITICAL 级别的日志。确认一切按预期运行。
WARNING - 打印 WARNING、ERROR、CRITICAL 级别的日志。表明一些问题在不久的将来,这个软件还能按预期工作。
ERROR - 打印 ERROR、CRITICAL 级别的日志。更严重的问题,软件没能执行一些功能。
CRITICAL : 打印 CRITICAL 级别。一个严重的错误,表明程序本身可能无法继续运行。
/usr/bin/python2.7 /home/strong/git_workspace/MonoGRNet/test.py 2019-06-26 16:00:45,990 - root - DEBUG - This is a debug message. 2019-06-26 16:00:45,990 - root - INFO - This is an info message. 2019-06-26 16:00:45,990 - root - WARNING - This is a warning message. 2019-06-26 16:00:45,990 - root - ERROR - This is an error message. 2019-06-26 16:00:45,990 - root - CRITICAL - This is a critical message. Process finished with exit code 0
2. 日志输出到文件
#!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import absolute_import from __future__ import division from __future__ import print_function import logging import os.path import time logger = logging.getLogger() logger.setLevel(logging.DEBUG) time_line = time.strftime('%Y%m%d%H%M', time.localtime(time.time())) print(os.getcwd()) log_path = os.path.dirname(os.getcwd()) + '/' logfile = log_path + time_line + '.log' handler = logging.FileHandler(logfile, mode='w') handler.setLevel(logging.INFO) formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") handler.setFormatter(formatter) logger.addHandler(handler) logger.debug('This is a debug message.') logger.info('This is an info message.') logger.warning('This is a warning message.') logger.error('This is an error message.') logger.critical('This is a critical message.')
/usr/bin/python2.7 /home/strong/git_workspace/MonoGRNet/test.py /home/strong/git_workspace/MonoGRNet Process finished with exit code 0
201906261627.log
2019-06-26 16:27:26,899 - test.py[line:30] - INFO: This is an info message. 2019-06-26 16:27:26,899 - test.py[line:31] - WARNING: This is a warning message. 2019-06-26 16:27:26,899 - test.py[line:32] - ERROR: This is an error message. 2019-06-26 16:27:26,899 - test.py[line:33] - CRITICAL: This is a critical message.
3. 日志同时输出到屏幕和文件
#!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import absolute_import from __future__ import division from __future__ import print_function import logging import os.path import time logger = logging.getLogger(__name__) logger.setLevel(level=logging.DEBUG) time_line = time.strftime('%Y%m%d%H%M', time.localtime(time.time())) print(os.getcwd()) log_path = os.path.dirname(os.getcwd()) + '/' logfile = log_path + time_line + '.log' handler = logging.FileHandler(logfile, mode='w') handler.setLevel(logging.INFO) formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") handler.setFormatter(formatter) console = logging.StreamHandler() console.setLevel(logging.WARNING) logger.addHandler(handler) logger.addHandler(console) logger.debug('This is a debug message.') logger.info('This is an info message.') logger.warning('This is a warning message.') logger.error('This is an error message.') logger.critical('This is a critical message.')
/usr/bin/python2.7 /home/strong/git_workspace/MonoGRNet/test.py /home/strong/git_workspace/MonoGRNet This is a warning message. This is an error message. This is a critical message. Process finished with exit code 0
201906261636.log
2019-06-26 16:36:38,385 - test.py[line:34] - INFO: This is an info message. 2019-06-26 16:36:38,385 - test.py[line:35] - WARNING: This is a warning message. 2019-06-26 16:36:38,385 - test.py[line:36] - ERROR: This is an error message. 2019-06-26 16:36:38,385 - test.py[line:37] - CRITICAL: This is a critical message.
以上这篇Python 实现日志同时输出到屏幕和文件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“Python 实现日志同时输出到屏幕和文件”评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
2024年12月31日
2024年12月31日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]