当前位置: 首页 > 编程笔记 >

python+logging+yaml实现日志分割

丌官晔
2023-03-14
本文向大家介绍python+logging+yaml实现日志分割,包括了python+logging+yaml实现日志分割的使用技巧和注意事项,需要的朋友参考一下

本文实例为大家分享了python+logging+yaml实现日志分割的具体代码,供大家参考,具体内容如下

1、建立log.yaml文件

version: 1
disable_existing_loggers: False
formatters:
 simple:
  format: "%(asctime)s - %(filename)s - %(levelname)s - %(message)s"
  datefmt: '%F %T'
 
handlers:
 console:
  class: logging.StreamHandler
  level: DEBUG
  formatter: simple
  stream: ext://sys.stdout
 info_file_handler:
  class: logging.handlers.TimedRotatingFileHandler
  level: DEBUG
  formatter: simple
  filename: ./mylog/log.log #这个路径根据自己的日志存放路径填写
  interval: 1
  backupCount: 2 #most 2 extensions
  encoding: utf8
  when: H #这里是按小时生成
root:
 level: INFO
 handlers: [console, info_file_handler]

2、在自己的app.py中引用log.yaml

import yaml
import logging.config
import os
 
def setup_logging(default_path='log.yaml', default_level=logging.INFO):
 """
 Setup logging configuration
 """
 if os.path.exists("mylog"):
  pass
 else:
  os.mkdir('mylog')
 path = default_path
 if os.path.exists(path):
  with open(path, 'rt') as f:
   config = yaml.load(f.read())
  logging.config.dictConfig(config)
 else:
  logging.basicConfig(level=default_level)
  print('the input path doesn\'t exist')
setup_logging(default_path='./log.yaml')
logger = logging.getLogger()

之后就可以在需要日志的业务节点上使用logger.info或者其他级别输出日志信息

3、生成的日志文件效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • translated_page: https://github.com/PX4/Devguide/blob/master/en/log/flight_log_analysis.md translated_sha: 95b39d747851dd01c1fe5d36b24e59ec865e323e Flight Log Analysis 这里有几个分析PX4飞行日志的软件,描述如下: Log Munc

  • 日志是构建工具的主要"UI"。如果日志太多,真正的警告和问题容易被隐藏。另一方面,如果出了错,你需要找出相关的信息。Gradle 定义了6个日志级别,如表 Table 18.1, “Log levels” 所示。除了那些您通过可能会平常看到的日志级别之外,有两个 Gradle 特定日志级别。这两个级别分别是 QUIET 和 LIFECYCLE。 默认使用后面的这个日志级别,用于报告构建进度。 Ta

  • 本文向大家介绍python logging日志模块的详解,包括了python logging日志模块的详解的使用技巧和注意事项,需要的朋友参考一下 python logging日志模块的详解 日志级别 日志格式说明 日志输出 有两种方式记录跟踪,一种输出控制台,另一种是记录到文件中,如日志文件。 将日志输出到控制台 在a.py写入以下信息 【解析】 通过logging.basicConfig函数对

  • 本文向大家介绍django实现日志按日期分割,包括了django实现日志按日期分割的使用技巧和注意事项,需要的朋友参考一下 settings文件中配置: 项目启动时,win系统下,添加 --noreload :python manage.py runserver --noreload ,防止PermissionError报错; pycharm使用时,在此添加参数 补充知识:logback输出日志:

  • 本文向大家介绍Python Django框架实现应用添加logging日志操作示例,包括了Python Django框架实现应用添加logging日志操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python Django框架实现应用添加logging日志。分享给大家供大家参考,具体如下: Django uses Python's builtin logging module t

  • 本文向大家介绍python logging日志模块以及多进程日志详解,包括了python logging日志模块以及多进程日志详解的使用技巧和注意事项,需要的朋友参考一下 本篇文章主要对 python logging 的介绍加深理解。更主要是 讨论在多进程环境下如何使用logging 来输出日志, 如何安全地切分日志文件。 1. logging日志模块介绍 python的logging模块提供了灵