Python log 模块介绍
刚用Python log模块写了一个例子,记录一下。
import logging
import logging.handlers
import os
from datetime import datetime basedir=r'D:\log'
LOG_LEVEL = 0
resultPath = os.path.join(basedir,'result')
if not os.path.exists(resultPath):
os.mkdir(resultPath)
LOG_PATH = os.path.join(resultPath, str(datetime.now().strftime('%Y-%m-%d-%H-%M-%S')))
if not os.path.exists(LOG_PATH):
os.mkdir(LOG_PATH)
LOG_FILE_PATH = os.path.join(LOG_PATH, 'output.log')
LOG_MAX_SIZE = 10*1024*1024
LOG_BACKUP_COUNT = 5
FILE_LOG_LEVEL = 10
STREAM_LOG_LEVEL = 20 class LOG:
logger = None @staticmethod
def getLogger():
if LOG.logger is not None:
return LOG.logger
LOG.logger = logging.getLogger()
LOG.logger.setLevel(LOG_LEVEL)
Rthandler = logging.handlers.RotatingFileHandler(
LOG_FILE_PATH,
maxBytes=LOG_MAX_SIZE,
backupCount=LOG_BACKUP_COUNT,
encoding='utf-8',
)
StreamHandler = logging.StreamHandler()
formatter = logging.Formatter(
'%(asctime)s-[%(levelname)s][%(module)s][%(funcName)s]-%(message)s')
Rthandler.setFormatter(formatter)
StreamHandler.setFormatter(formatter)
Rthandler.setLevel(FILE_LOG_LEVEL)
StreamHandler.setLevel(STREAM_LOG_LEVEL)
LOG.logger.addHandler(Rthandler)
LOG.logger.addHandler(StreamHandler)
return LOG.logger log=LOG.getLogger()
log.info('log test')
Python log 模块介绍的更多相关文章
- Python之模块介绍
模块介绍 模块,是用一些代码实现的某个功能的代码集合. 类似与函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用,提供了代码的重用性和代码间的耦合.对于一个复杂的功能,可能需要多个函 ...
- python multiprocessing模块 介绍
一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu\_count\(\)查看),在python中大部分情况需要使用多进 ...
- Python day18模块介绍2(使用BASE_DIR修改临时path,os模块)
1.BASE_DIR修改path(别人导入py项目时不会因为绝对路径无法解释) #sys修改环境变量 #使用BASE_DIR将绝对路径改为相对路径 import sys,os BASE_DIR=os. ...
- python常用模块介绍
关于if __name__ == "__main__": 若执行文件为bin,调用文件为cal: 若在执行文件bin中执行print(__name__) 输出:__main__ 当 ...
- Python—time模块介绍
time 模块 在平常的代码中,我们常常需要与时间打交道.在Python中,常用的与时间处理有关的模块就包括:time,datetime,下面来介绍time模块. 在开始之前,首先要说明几点: 一.在 ...
- Python Fileinput 模块介绍
作者博文地址:http://www.cnblogs.com/spiritman/ fileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环来读取一个或多个文本文件的所有行. [默 ...
- Python os模块介绍
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curd ...
- Python—sys模块介绍
sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxi ...
- Python—os模块介绍
OS模块 我们平时工作中很常用到的一个模块,通过os模块调用系统命令,获得路径,获取操作系统的类型等都是使用该模块.os 模块提供了很多允许你的程序与操作系统直接交互的功能 得到当前工作目录,即当前P ...
随机推荐
- AR和VR的区别到底在哪?
AR是Augmented Reality的字母缩写,中文名字是“增强现实”,是一种全新人机交互技术.通过AR技术,让参与者与虚拟对象进行实时互动,从而获得一种奇妙的视觉体验,而且能够突破空间.时间以及 ...
- Spring异常:Annotation-specified bean name.. for bean class ...
Spring重命名问题.对照项目中的注解,查找@Service是否重重名.由于Spring是在注解下按配置扫描的方式去创建对象的,那么两个重名的注解也就不成立了. 备注,特别注意test包下有没有通过 ...
- Failed to start NodeManager caused by "/var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: Permission denied"
Hadoop 安装步骤: 0. 安装前准备(节点机器,环境设置,yum源设置) 1. 配置并安装Cloudera-Manager 2. 启动 CM 服务 3. 安装CDH,并配置集群 4. 启动 ...
- django notes 三:Template 的查找
django 中有 2种 Template Loader django.template.loaders.filesystem.Loader django.template.loaders.app_d ...
- 【微信小程序】采坑之scroll-view组件
一.摘要 今天在使用scroll-view组件的时候发现结果跟预想的不一样.其实也不是第一次用了,同样的写法却出现了意料之外的效果,所以认定是bug了.博主使用的是2.3.0版本,所以之前的版本应该也 ...
- PostgreSQL On Windows Process Connection Performance
本文主要对PostgreSql在Windows下的连接测试. 测试环境: Win7 x64, PostgreSql 10.1 x64 测试语言: VS2015 C# 因为Pg的数据库连接是开启进程来处 ...
- 兼容ie6的ul水平居中对齐
---恢复内容开始--- margin可以为负数左移动. padding不可以. ---恢复内容结束---
- Lucene学习之四:Lucene的索引文件格式(2)
本文转载自:http://www.cnblogs.com/forfuture1978/archive/2009/12/14/1623599.html 略有删减和补充 四.具体格式 上面曾经交代过,L ...
- Node.js学习笔记(四) --- fs模块的使用
目录 . fs.stat 检测是文件还是目录 . fs.mkdir 创建目录 . fs.writeFile 创建写入文件 . fs.appendFile 追加文件 . fs.readFile 读取文件 ...
- Centos7 linux 安装 redis 遇到的几个问题
环境:centos7 + redis 5.0 解决方案仅供参考,如不能解决问题,请查找请他方案. 1.不能编译没有GCC 编译工具 make报错: make[1]: [persist-set ...