当前位置: 首页 > news >正文

南充网站设计做网站和编程序

南充网站设计,做网站和编程序,aspcms园林绿化工程网站源码,neutral wordpress目录 1、日志输出到文件 2、日志输出到屏幕 3、设置输出等级 4、设置多个日志输出对象 5、日志的配置 6、记录异常 7、设置日志输出样式1、日志输出到文件basicConfig()提供了非常便捷的方式让你配置logging模块并马上开始使用。什么都不配置直接使用默认值在控制台中打log用这样的方式替换print语句对日后项目维护会有很大帮助。但是如果设置了filename输出到文件就不会再在屏幕上打印。 例子1.1 import logginglogging.basicConfig(filenameexample.log, levellogging.DEBUG) logging.debug(This message should go to the log file)当前目录下会生成example.log文件其中有如下内容DEBUG:root:This message should go to the log file 2、日志输出到屏幕例子2.1 import logginglogging.basicConfig(levellogging.DEBUG) logging.debug(This message should go to the log file)屏幕输出DEBUG:root:This message should go to the log file   3、设置输出等级默认情况下logging将日志打印到屏幕日志级别默认为WARNING低于该级别的日志将不被打印。日志级别大小关系为CRITICAL ERROR WARNING INFO DEBUG NOTSET当然也可以自己定义日志级别。日志优先级分为debug : 10 info : 20 warning : 30 error : 40basicConfig()中levellogging.INFO是为所有日志对象设置初始级别。例子3.1——对logging设置等级可通过logger.setLevel(logging.DEBUG)为个体日志对象设定级别。例子3.2——对logger设置等级 例子3.1——对logging设置等级 import logginglogging.basicConfig(levellogging.INFO) # start reading database logging.info(Start reading database) # update records here logging.info(Finish updating records)屏幕输出INFO:__main__:Start reading databaseINFO:__main__:Finish updating records 例子3.2——对logger设置等级 import logginglogging.basicConfig(levellogging.INFO)#必须有初始等级logger1 logging.getLogger(log1) logger1.setLevel(logging.INFO) # Start reading database logger1.info(Start reading database) # update records here logger1.info(Finish updating records)logger2 logging.getLogger(log2) logger2.setLevel(logging.DEBUG) # Start reading database logger2.info(Start reading database) logger2.debug(666) # update records here logger2.info(Finish updating records)屏幕输出INFO:log1:Start reading databaseINFO:log1:Finish updating recordsINFO:log2:Start reading databaseDEBUG:log2:666INFO:log2:Finish updating records   4、设置多个日志输出对象 import logginglogging.basicConfig(levellogging.INFO) # 获取logger实例如果参数为空则返回root logger1 logging.getLogger(log1) # Start reading database logger1.info(Start reading database) # update records here logger1.info(Finish updating records)logger2 logging.getLogger(log2) logger2.setLevel(logging.DEBUG) # Start reading database logger2.info(Start reading database) logger2.debug(666) # update records here logger2.info(Finish updating records)屏幕输出INFO:log1:Start reading databaseINFO:log1:Finish updating recordsINFO:log2:Start reading databaseDEBUG:log2:666INFO:log2:Finish updating records 5、日志的配置作为开发者我们可以通过以下3中方式来配置logging:1使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数2创建一个日志配置文件然后使用fileConfig()函数来读取该文件的内容3创建一个包含配置信息的dict然后把它传递个dictConfig()函数 参考http://python.jobbole.com/81666/https://www.cnblogs.com/wswang/p/6138304.htmlhttp://www.jb51.net/article/114316.htm 6、记录异常 try: 1 / 0 except: # 等同于error级别但是会额外记录当前抛出的异常堆栈信息 logger.exception(this is an exception message)7、设置日志输出样式fmt中允许使用的变量可以参考下表。 %(name)s Logger的名字%(levelno)s 数字形式的日志级别%(levelname)s 文本形式的日志级别%(pathname)s 调用日志输出函数的模块的完整路径名可能没有%(filename)s 调用日志输出函数的模块的文件名%(module)s 调用日志输出函数的模块名|%(funcName)s 调用日志输出函数的函数名|%(lineno)d 调用日志输出函数的语句所在的代码行%(created)f 当前时间用UNIX标准的表示时间的浮点数表示|%(relativeCreated)d 输出日志信息时的自Logger创建以来的毫秒数|%(asctime)s 字符串形式的当前时间。默认格式是“2003-07-08 16:49:45,896”。逗号后面的是毫秒%(thread)d 线程ID。可能没有%(threadName)s 线程名。可能没有%(process)d 进程ID。可能没有%(message)s 用户输出的消息 例子7.1——对logging设置日志输出样式 import logging import time# 日志初始配置写入日志文件 logging.basicConfig( levellogging.DEBUG, # 设置写入级别。日志级别大小关系为CRITICAL ERROR WARNING INFO DEBUG NOTSET # 设置写入样式。2018-01-12 13:09:02|mytest.py|module|line:9|INFO|start runing format%(asctime)s|%(filename)s|%(funcName)s|line:%(lineno)d|%(levelname)s|%(message)s, datefmt%Y-%m-%d %X, filenametime.strftime(%Y%m%d) .log # 写入文件位置和文件名 )# 控制台打印输出日志 console logging.StreamHandler() # 定义一个StreamHandler将INFO级别或更高的日志信息打印到标准错误并将其添加到当前的日志处理对象 formatter logging.Formatter(fmt%(asctime)s|%(name)-8s: %(levelname)-8s| %(message)s,datefmt%Y-%m-%d %H:%M:%S) # 控制台输出样式 console.setFormatter(formatter) logging.getLogger().addHandler(console) console.setLevel(logging.INFO) # 设置要打印日志的等级低于这一等级不会打印# 定义日志内容用于写入日志文件和控制台的打印 logging.critical(CRITICAL le) # 定义严重日志内容 logging.error(error le) # 定义错误日志内容 try: 1 / 0 except Exception as e: logging.warning(exception: %s, e) # 定义警告日志内容 logging.info(start runing) # 定义消息日志内容 logging.info(login done) str1 lalala logging.debug(\n%s\n, str1) # 定义调试日志内容控制台输出2018-02-09 14:12:31|root : CRITICAL| CRITICAL le2018-02-09 14:12:31|root : ERROR | error le2018-02-09 14:12:31|root : WARNING | exception: division by zero2018-02-09 14:12:31|root : INFO | start runing2018-02-09 14:12:31|root : INFO | login done日志文件写入:2018-02-09 14:11:30|004-日志简单使用.py|module|line:21|CRITICAL|CRITICAL le2018-02-09 14:11:30|004-日志简单使用.py|module|line:22|ERROR|error le2018-02-09 14:11:30|004-日志简单使用.py|module|line:26|WARNING|exception: division by zero2018-02-09 14:11:30|004-日志简单使用.py|module|line:27|INFO|start runing2018-02-09 14:11:30|004-日志简单使用.py|module|line:28|INFO|login done2018-02-09 14:11:30|004-日志简单使用.py|module|line:30|DEBUG|lalala 例子7.2——对logger实例设置日志输出样式 import logging import sys# 获取logger实例如果参数为空则返回root logger logger logging.getLogger(AppName)# 指定logger输出格式 formatter logging.Formatter(%(asctime)s %(levelname)-8s: %(message)s)# 文件日志 file_handler logging.FileHandler(test.log)#创建文件的日志处理器 file_handler.setFormatter(formatter) # 可以通过setFormatter指定输出格式# 控制台日志 console_handler logging.StreamHandler(sys.stdout)#创建控制台的日志处理器 console_handler.formatter formatter # 也可以直接给formatter赋值# 为logger添加的日志处理器 logger.addHandler(file_handler) logger.addHandler(console_handler)# 指定日志的最低输出级别默认为WARN级别 logger.setLevel(logging.INFO)# 输出不同级别的log logger.debug(this is debug info) logger.info(this is information) logger.warning(this is warning message) logger.error(this is error message) logger.fatal(this is fatal message, it is same as logger.critical) logger.critical(this is critical message)屏幕输出也是日志文件写入2018-02-09 14:00:22,857 INFO : this is information2018-02-09 14:00:22,857 WARNING : this is warning message2018-02-09 14:00:22,857 ERROR : this is error message2018-02-09 14:00:22,857 CRITICAL: this is fatal message, it is same as logger.critical2018-02-09 14:00:22,857 CRITICAL: this is critical message   延伸 系统日志参考 https://www.jianshu.com/p/abb6148c15b4转载于:https://www.cnblogs.com/andy9468/p/8435854.html
http://www.pierceye.com/news/91024/

相关文章:

  • 响应式网站开发费用做不规则几何图形的网站
  • 西安网站建设优化集团门户网站建设不足
  • 深圳建网站的公企业做网站有什么用
  • wordpress插件 2017南宁seo排名外包
  • 在淘宝上开网店的详细步骤丹东网站seo
  • 网站建设外包公司招聘发帖子有哪些app平台
  • 网站风格发展趋势快设计
  • 稳定的网络建站咨询电话正规网站建设咨询电话
  • 请人代做谷歌外贸网站做购彩网站是怎么盈利的
  • 网站内链怎么删除wordpress如何下载
  • 深圳网站公司有了域名搭建网站详细步骤
  • 主机宝 建设网站怎么知道网站哪家公司做的
  • 1元做网站方案城乡建设住房建设厅官方网
  • 厦门网站网页设网页素材html
  • 活字格能开发企业网站吗商品门户网站解决方案
  • 网站虚拟主机内存不足能不能链接美工怎么做网站效果图
  • 网站版建设软件开发培训班有哪些
  • 舟山市城市建设档案馆网站武夷山景区网站建设特点
  • 北京建设工程质量总站网站哈尔滨网站只做
  • 做外单网站有哪些网站开发工程师需要什么技术
  • 跨境电商自己做网站引流会宁县建设局网站
  • 对于学校网站建设的建议google推广公司哪家好
  • 国外做装饰画的网站公司logo设计图片欣赏
  • 宿州外贸网站建设公司工信部资质查询网站
  • 动漫做暧视频网站用手机制作动画的app
  • 网站备案 域名证书帝国cms响应式网站模板
  • 一个电信ip做网站卡不卡企业网站建设排名资讯
  • 网站建设论文的开题报告制作一个app软件需要多少时间
  • 我们做的网站是优化型结构做二手车网站需要什么
  • 湛江网站建设保定公司互联网信息服务平台官网