1、编写python测试脚本
#!/usr/bin/env python
import logging
import logging.config
logging.config.fileConfig("logger.conf")
def logerror():
logger = logging.getLogger("errorLogger")
logger.error("There is a error in this file",exc_info=1)
def logdebug():
logger = logging.getLogger("debugLogger")
logger.debug("There is a debug in this file")
logdebug()
def testfun():
print "test"
try:
testfun(1)
except TypeError,e:
logerror()
2、编写logging配置文档,将一般调试日志文件写入myapp.debug文件,将脚本运行过程中出错信息写入myapp.err文件。
[loggers]
keys=root,errorLogger,debugLogger
[logger_root]
level=DEBUG
handlers=errorHand,debugHand
[logger_errorLogger]
handlers=errorHand
qualname=errorLogger
propagate=0
[logger_debugLogger]
handlers=debugHand
qualname=debugLogger
propagate=0
###############################################
[handlers]
keys=errorHand,debugHand
[handler_errorHand]
class=handlers.RotatingFileHandler
level=ERROR
formatter=form01
args=('myapp.err', 'a', 10*1024*1024, 1)
[handler_debugHand]
class=handlers.RotatingFileHandler
level=DEBUG
formatter=form01
args=('myapp.debug', 'a', 10*1024*1024, 1)
###############################################
[formatters]
keys=form01
[formatter_form01]
format=%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s
datefmt=%Y-%e-%d %H:%M:%S
[root@localhost tmp]# python mytest.py
[root@localhost tmp]# cat myapp.debug
2016-21-21 07:31:29 mytest.py[line:13] DEBUG There is a debug in this file
[root@localhost tmp]# cat myapp.err
2016-21-21 07:31:29 mytest.py[line:9] ERROR There is a error in this file
Traceback (most recent call last):
File "mytest.py", line 21, in <module>
testfun(1)
TypeError: testfun() takes no arguments (1 given)