python+logging+yaml实现日志分割


Posted in Python onJuly 22, 2019

本文实例为大家分享了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、生成的日志文件效果

python+logging+yaml实现日志分割

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现在每个独立进程中运行一个函数的方法
Apr 23 Python
Python 多线程Threading初学教程
Aug 22 Python
Python制作词云的方法
Jan 03 Python
对python模块中多个类的用法详解
Jan 10 Python
Python面向对象之类的定义与继承用法示例
Jan 14 Python
Python 学习教程之networkx
Apr 15 Python
我就是这样学习Python中的列表
Jun 02 Python
详解PyTorch手写数字识别(MNIST数据集)
Aug 16 Python
Django重设Admin密码过程解析
Feb 10 Python
彻底搞懂python 迭代器和生成器
Sep 07 Python
python 6种方法实现单例模式
Dec 15 Python
python中函数返回多个结果的实例方法
Dec 16 Python
python删除列表元素的三种方法(remove,pop,del)
Jul 22 #Python
python Gunicorn服务器使用方法详解
Jul 22 #Python
python实现按行分割文件
Jul 22 #Python
python UDP(udp)协议发送和接收的实例
Jul 22 #Python
linux环境下Django的安装配置详解
Jul 22 #Python
python判断一个对象是否可迭代的例子
Jul 22 #Python
树莓派使用python-librtmp实现rtmp推流h264的方法
Jul 22 #Python
You might like
php SQL防注入代码集合
2008/04/25 PHP
php 静态化实现代码
2009/03/20 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
PHP新手NOTICE错误常见解决方法
2011/12/07 PHP
php重定向的三种方法分享
2012/02/22 PHP
PHP定时执行任务实现方法详解(Timer)
2015/07/30 PHP
Javascript中找到子元素在父元素内相对位置的代码
2012/07/21 Javascript
可兼容IE的获取及设置cookie的jquery.cookie函数方法
2013/09/02 Javascript
node.js中的console.timeEnd方法使用说明
2014/12/09 Javascript
使用DataTable插件实现异步加载数据
2017/11/19 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
解决vue admin element noCache设置无效的问题
2019/11/12 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
Python实现自动添加脚本头信息的示例代码
2016/09/02 Python
python3编码问题汇总
2016/09/06 Python
Python3中条件控制、循环与函数的简易教程
2017/11/21 Python
利用python编写一个图片主色转换的脚本
2017/12/07 Python
python读取word文档,插入mysql数据库的示例代码
2018/11/07 Python
Python中的 enum 模块源码详析
2019/01/09 Python
Python设计模式之建造者模式实例详解
2019/01/17 Python
使用python实现简单五子棋游戏
2019/06/18 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
详解python内置常用高阶函数(列出了5个常用的)
2020/02/21 Python
python logging.info在终端没输出的解决
2020/05/12 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
美国二手复古奢侈品包包购物网站:LXRandCo
2019/06/18 全球购物
台湾良兴购物网:EcLife
2019/12/01 全球购物
标记环介质访问控制协议
2016/03/27 面试题
车间调度岗位职责
2013/11/30 职场文书
工程安全生产协议书
2014/11/21 职场文书
转让协议书
2015/01/27 职场文书
担保贷款承诺书
2015/04/30 职场文书
跑吧孩子观后感
2015/06/10 职场文书
vue实现可拖拽的dialog弹框
2021/05/13 Vue.js
MySQL8.0 Undo Tablespace管理详解
2022/06/16 MySQL