python3 配置logging日志类
配置类config_file:
from configparser import ConfigParser
class config_file:
def __init__(self,conf_filePath,encoding="utf-8"):
#打开配置文件,实例化ConfigParser类,并以默认utf-8的编码格式读取文件
self.cf = ConfigParser()
self.cf.read(conf_filePath,encoding)
def get_Int_Value(self,section,option):
#获取整数
return self.cf.getint(section,option)
def get_boolValue(self,section,option):
#获取布尔值
return self.cf.getboolean(section,option)
def get_strValue(self,section,option):
# 获取字符串类型的值
return self.cf.get(section,option)
def get_floatValue(self,section,option):
# 获取浮点数值
return self.cf.getfloat(section,option)
def get_sections(self):
# 获取所有的section
return self.cf.sections()
def get_options(self,section):
# 获取所有的option
return self.cf.options(section)
日志类:
from configparser import ConfigParser
import logging
from config_file import config_file
class Log_Test(config_file):#继承config_file def logging(self):
logger = logging.getLogger(self.get_strValue('log','logger_name')) #从配置文件读取logger名
logger.setLevel(self.get_strValue('log', 'logger_level')) # 设置logger收集器的收集log级别
format_logger = logging.Formatter(self.get_strValue('log','logger_format'))
if(self.get_boolValue('log','logger_out')):
handle = logging.StreamHandler() # 指定输出到console控制台
handle.setLevel(self.get_strValue('log', 'logger_level')) # 读取日志等级并设定logging的级别
handle.setFormatter(format_logger) # 指定日志格式
else:
handle = logging.FileHandler(self.get_strValue('log','logger_filepath'), encoding='utf-8')
handle.setLevel(self.get_strValue('log', 'logger_level')) # 读取日志等级并设定logging的级别
handle.setFormatter(format_logger) # 指定日志格式
logger.addHandler(handle)
return logger
日志配置文件logging.cfg:
[log]
#日志收集器
logger_name=TEST
#日志级别 级别需要大写 DEBUG-->INFO-->WARNING-->ERROR-->CRITICAL/FATAL
logger_level=DEBUG
#日志输出格式 注意转义
logger_format=%%(asctime)s-%%(filename)s-%%(levelname)s-日志信息:%%(message)s
#日志是否输出到控制台 True or False
logger_out=False
#日志输出指定文件地址
logger_filepath=logging_Test.log
将读取配置文件类进行封装,日志类继承配置类。
python3 配置logging日志类的更多相关文章
- logging日志类
#! /usr/bin/env python #coding=utf-8 import logging,os class Logger: def __init__(self, path,clevel ...
- Python3自定义日志类教程
一.说明 Python3的logging功能是比较丰富的支持不同层次的日志输出,但或是我们想在日志前输出时间.或是我们想要将日志输入到文件,我们还是想要自定义日志类. 之前自己也尝试写过但感觉文档太乱 ...
- python3+selenium框架设计03-封装日志类
首先我们先来实现日志的功能,日志可以使用python3自带logging模块,不会的可以百度一下相关文章,也可以看我另外一篇文章Python3学习笔记24-logging模块 在封装日志类前,我们需要 ...
- python3+requests库框架设计02-封装日志类
首先我们先来实现日志的功能,日志可以使用python3自带logging模块,不会的可以百度一下相关文章,也可以看我另外一篇文章Python3学习笔记24-logging模块 在封装日志类前,我们需要 ...
- Python3自定义日志类 mylog
#encoding=utf-8 import os, sysimport datetimeimport time class Mylog(object): # 根文件夹 root_dir = s ...
- logging日志模块详细,日志模块的配置字典,第三方模块的下载与使用
logging日志模块详细 简介 用Python写代码的时候,在想看的地方写个print xx 就能在控制台上显示打印信息,这样子就能知道它是什么 了,但是当我需要看大量的地方或者在一个文件中查看的时 ...
- slf4j/logback: logging日志的配置
slf4j/logback: logging日志的配置 import依赖: import org.slf4j.Logger;import org.slf4j.LoggerFactory;private ...
- logging日志模块配置
logging日志模块 日志级别 日志一共分成5个等级,从低到高分别是: 1)DEBUG 2)INFO 3)WARNING 4)ERROR 5)CRITICAL 说明: DEBUG:详细的信息,通常只 ...
- 接口自动化--日志类封装(logging)
上篇随笔已经写到了读取Excel类的封装了,下面就写下日志类, 日志类在我们自动化的过程中是十分重要的,在我们的自动化程序出现异常的时候就可以打印日志 下面是我自己封装的日志类 import logg ...
随机推荐
- cdq分治(hdu 5618 Jam's problem again[陌上花开]、CQOI 2011 动态逆序对、hdu 4742 Pinball Game、hdu 4456 Crowd、[HEOI2016/TJOI2016]序列、[NOI2007]货币兑换 )
hdu 5618 Jam's problem again #include <bits/stdc++.h> #define MAXN 100010 using namespace std; ...
- python中的__metaclass__
什么是元类: python中类也是一种对象, 可以称为类对象. 元类就是用来创建类对象的"东西". 你创建类就是为了创建类的实例对象, 不是吗? 但是我们已经学习了python中的 ...
- 【ASP.NET】website转webapplication
*以下操作都以VS2013为参考: #新建两种web项目 1.添加webapplication项目: 2.添加website项目: #比较两种web项目新建的webform页面的不同点: 1.文件目录 ...
- openstack项目【day23】:keystone组件基础
本节内容 一 什么是keystone 二 为何要有keystone 三 keystone的功能 四 keystone概念详解 五 keystone内包含的组件 六 keystone与openstack ...
- GDB使用记录
ref:http://sunyongfeng.com/201506/programmer/tools/gdb.html 简介 GDB,GNU Debugger,特性如下: GDB具备各种调试功效,可对 ...
- NOI-OJ 2.2 ID:6261 汉诺塔
思路 汉诺塔是递归思想最经典的例子,通过递归不断缩小问题,将n个盘子的问题简化n-1个,直至1个. 三个盘子,分别为A:from,B:to,C:by(A为起点盘,B为目标盘,C为中转盘) 过程 将1- ...
- LCA(ST倍增)
时间复杂度: dfs树,求st表(状态数组f):O(NlgN) 处理M个查询:O(MlgN) 总:O((M+N)lgN) #include<iostream> #include<cs ...
- [译]Ocelot - Load Balancer
原文 可以对下游的服务进行负载均衡. 提供了下面几种负载均衡: LeastConnection - tracks which services are dealing with requests an ...
- linux内存 free命令 buffer cache作用
free命令用于查看linux内存使用情况 #free shared:用于进程之间相互共享数据. Used:已使用内存. total:内存总量. free:未使用的内存. available:开启一个 ...
- uap
1.UAP 从前端到后端 详细教程 (一) 博主友好几篇相关的文章