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 time模块详解(常用函数实例讲解,非常好)
Apr 24 Python
Python的Django框架中消息通知的计数器实现教程
Jun 13 Python
Python数据分析之双色球中蓝红球分析统计示例
Feb 03 Python
Python实现的计算器功能示例
Apr 26 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
使用pip安装python库的多种方式
Jul 31 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
python模式 工厂模式原理及实例详解
Feb 11 Python
python 按钮点击关闭窗口的实现
Mar 04 Python
python实现udp聊天窗口
Mar 31 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
Nov 11 Python
Jupyter Notebook添加代码自动补全功能的实现
Jan 07 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后退一页表单内容保存实现方法
2012/06/17 PHP
php常用正则函数实例小结
2016/12/29 PHP
javascript 中对象的继承〔转贴〕
2007/01/22 Javascript
人人网javascript面试题 可以提前实现下
2012/01/05 Javascript
jQuery中even选择器的定义和用法
2014/12/23 Javascript
javascript实现可全选、反选及删除表格的方法
2015/05/15 Javascript
浅析javascript函数表达式
2016/02/10 Javascript
Bootstrap作品展示站点实战项目2
2016/10/14 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
详解jquery easyui之datagrid使用参考
2016/12/05 Javascript
JavaScript中使用webuploader实现上传视频功能(demo)
2017/04/10 Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
2017/08/23 jQuery
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
详解html-webpack-plugin用法全解
2018/01/22 Javascript
详解如何使用webpack打包JS
2018/06/21 Javascript
JS实现横向轮播图(初级版)
2020/06/24 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
[12:51]71泪洒现场!是DOTA2让经典重现
2014/03/24 DOTA
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
详解Python2.x中对Unicode编码的使用
2015/04/03 Python
在Python下利用OpenCV来旋转图像的教程
2015/04/16 Python
Python的math模块中的常用数学函数整理
2016/02/04 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
python lambda函数及三个常用的高阶函数
2020/02/05 Python
python中not、and和or的优先级与详细用法介绍
2020/11/03 Python
HTML5制作3D爱心动画教程 献给女友浪漫的礼物
2014/11/05 HTML / CSS
Canvas制作的下雨动画的示例
2018/03/06 HTML / CSS
viagogo波兰票务平台:演唱会、体育比赛、戏剧门票
2018/04/23 全球购物
人事部主管岗位职责
2013/12/26 职场文书
美容院营销方案
2014/03/05 职场文书
工程类专业自荐信范文
2014/03/09 职场文书
父母对孩子说的话
2014/04/12 职场文书
消防安全月活动总结
2015/05/08 职场文书
惊涛骇浪观后感
2015/06/05 职场文书
2016公司中秋节寄语
2015/12/07 职场文书
Mysql事务索引知识汇总
2022/03/17 MySQL