首页 > 其他分享 >logging日志

logging日志

时间:2024-04-02 21:56:59浏览次数:17  
标签:输出 logger logging debug 日志 message

★ 基本介绍

logging是Python内置的日志处理模块,用来记录程序的运行状态和故障排除;因为print是同步代码,会影响代码的执行速度,而logging是异步的,可以在多进程爬取中、在协程爬取中使用logging记录调试信息而不会影响到代码的异步执行和运行效率。

★ 日志信息等级

  • 日志信息分成五级;从高到低排序为:
    • CRITICAL:严重错误
    • ERROR: 错误
    • WARNING: 警告 (默认级别)
    • INFO: 主要信息
    • DEBUG: 调试信息

★ 日志输出

  • 将日志输出到控制台

    import logging
    
    # 定义日志输出格式和等级
    logging.basicConfig(level=logging.WARNING,  
                        format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')  
    logger = logging.getLogger("日志名")
    
    logger.debug()
    logger.error()
    ...
    
  • 将日志输出到文件

    import logging  
    
    logging.basicConfig(level=logging.WARNING,  
                        filename='./log.txt',  
                        filemode='w',  
                        format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')  
    
    logger = logging.getLogger("日志名")
    
    # use logging  
    logger.info('这是 loggging info message')  
    logger.debug('这是 loggging debug message')  
    logger.warning('这是 loggging a warning message')  
    logger.error('这是 an loggging error message')  
    logger.critical('这是 loggging critical message')
    
  • 将日志输出到控制台同时输出到文件

    import logging  
    
    # 第一步,创建一个logger  
    logger = logging.getLogger()  
    logger.setLevel(logging.INFO)  # Log等级总开关  
    
    # 第二步,创建一个handler,用于写入日志文件  
    logfile = './log.txt'  
    fh = logging.FileHandler(logfile, mode='a')  # open的打开模式这里可以进行参考
    fh.setLevel(logging.DEBUG)  # 输出到file的log等级的开关  
    
    # 第三步,再创建一个handler,用于输出到控制台  
    ch = logging.StreamHandler()  
    ch.setLevel(logging.WARNING)   # 输出到console的log等级的开关  
    
    # 第四步,定义handler的输出格式  
    formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")  
    fh.setFormatter(formatter)  
    ch.setFormatter(formatter)  
    
    # 第五步,将logger添加到handler里面  
    logger.addHandler(fh)  
    logger.addHandler(ch)  
    
    # 日志  
    logger.debug('这是 logger debug message')  
    logger.info('这是 logger info message')  
    logger.warning('这是 logger warning message')  
    logger.error('这是 logger error message')  
    logger.critical('这是 logger critical message')
    

标签:输出,logger,logging,debug,日志,message
From: https://www.cnblogs.com/cs-songbai/p/18110617

相关文章

  • 【Azure Function & Application Insights】在Azure Function的日志中,发现DrainMode m
    问题描述ApplicaitonInsights收集了AzureFunction的日志,定期发现有”DrainModemodeenabledTraces“。DrainMode是什么意思呢? 问题解答排出模式(Drainmode) 属于FunctionApp 缩放机制中的一部分,当后台检测到FunctionApp请求量不再需要当前的instance时会停止对......
  • 浮木云学习日志(13)---表格设计
    ​在之前的系列文章中已经介绍了浮木云平台的许多使用技巧,本次我将结合下面已经搭建好的表格示例来详细介绍“高级表格”组件。浮木云平台的“高级表格”组件可以通过表格列设置设计多样的表格,展示更丰富的内容。大家也可以进入他们的官网https://www.fumucloud.com/自己动手操作......
  • Spring Data JPA日志打印SQL语句和入参真就这么简单吗?
    1乞丐版配置spring:aop:proxy-target-class:truejpa:hibernate:ddl-auto:updateshow-sql:truelogging:level:root:infoorg.hibernate.SQL:debugorg.hibernate.engine.QueryParameters:debugorg.hibernate.engin......
  • 在Linux中,有哪些日志管理和分析工具?
    在Linux中,日志管理和分析是一个关键的系统管理任务,有助于追踪系统活动、诊断问题、审计安全事件以及优化系统性能。以下是一些常用的Linux日志管理和分析工具:syslogsyslog是最基础的日志记录系统,它接收来自系统和应用程序的消息,然后将它们写入预定义的日志文件,例如/var/log/m......
  • 【Azure Function & Application Insights】调用Function上传和下载文件,有时候遇见大
    问题描述在FunctionApp中配置了无代码模式的ApplicationInsights,但有时候发现,超过1MB的文件上传/下载操作成功。但是在ApplicationInsights中,却没有发现请求日志?这是一种什么情况呢? 问题解答ApplicationInsights 是具有采样功能的,当传入执行的速率超过指定的阈值时,Appl......
  • linux后台长ping带日期时间写入日志
    搜索一下,常见的写法都一样pingbaidu.com|awk'{printstrftime("%Y-%m-%d%H:%M:%S",systime())"\t"$0;fflush()}'>>long_ping.txt&可在后台进行,但一关闭shell窗口就没了nohuppingbaidu.com|awk'{printstrftime("%Y-%m-%d%......
  • Rust 实现日志记录功能
    目录log日志库标准简单示例使用方法库的开发者应用开发者日志库开发者使用log4rs添加依赖配置文件运行项目参考文章log日志库标准log是Rust的日志门面库,由官方积极维护可以放心使用。它是Rust的日志门面,相应的日志API已成为事实上的标准被其它日志框架所使用,有了日志门......
  • iPhone设备中通过开发者选项查看应用程序崩溃日志的实用技术
     ​目录 如何在iPhone设备中查看崩溃日志摘要引言导致iPhone设备崩溃的主要原因是什么?使用克魔助手查看iPhone设备中的崩溃日志奔溃日志分析总结摘要本文介绍了如何在iPhone设备中查看崩溃日志,以便调查崩溃的原因。我们将展示三种不同的方法,包括使用克魔助手查......
  • iOS移动应用实时查看运行日志的最佳实践
    目录一、设备连接二、使用克魔助手查看日志三、过滤我们自己App的日志......
  • iPhone设备中如何分析和解决应用程序崩溃日志的问题
     ​目录 如何在iPhone设备中查看崩溃日志摘要引言导致iPhone设备崩溃的主要原因是什么?使用克魔助手查看iPhone设备中的崩溃日志奔溃日志分析总结摘要本文介绍了如何在iPhone设备中查看崩溃日志,以便调查崩溃的原因。我们将展示三种不同的方法,包括使用克魔助手查......