十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、日志分为几个级别?
debug--调试信息
info--详细信息:数据 进度
warning 警告信息
error 错误信息
critical 致命的 严重的错误
二、实例
import logging
Formatter对象 用于决定日志打印的格式
fmt = logging.Formatter("%(asctime)s %(levelname)s Line:%(lineno)s==>%(message)s")
#Handler对象 将(logger创建的)日志记录发送到合适的目的输出
ch = logging.StreamHandler() # 标准输出流处理对象
ch.setFormatter(fmt)
ch.setLevel(logging.WARNING)
fh = logging.FileHandler("1.log") # 文件处理对象
fh.setFormatter(fmt)
fh.setLevel(logging.WARNING)
#Logger对象 对外暴露的接口
logger = logging.Logger("miaomiao",'INFO')
logger.addHandler(ch)
logger.addHandler(fh)
#日志输出
logger.debug("debug级别的日志")
logger.info("info级别的日志")
logger.warning("warning级别的日志")
logger.error("error级别的日志")
logger.critical("critical级别的日志")
三、说明
logging模块常用的类主要有以下几个
logging.Logger
主要提供应用程序代码直接使用的接口,一般不会直接实例化,而是通过logging.getLogger(name)得到
logging.Handler
日志处理对象的基类,不应实例化,被实例化的应该是其子类,如logging.StreamHandler,它负责发送日志记录到正确的目标
logging.Formatter
它决定了以怎样的格式来进行打印日志记录,常用的日志格式如下:
%(name)s
Logger对象的名字
%(levelname)s
日志级别的英文表示
%(filename)s
调用日志输出函数的模块名
%(lineno)s
调用日志输出函数的语句所在的代码行
%(asctime)s
字符串形式的当前时间
%(message)s
用户输出的消息
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。