使用日志,调试OE程序,分析OE源码
-
笔者写了一个OE小模块,在安装测试时出现错误,百思不得其解,想看一下到底哪儿出了错,想到了日志,使用python自带的logging,使用后不起作用,搜索OE论坛,才知OE有自己的日志类.
在netsvc.py中的Logger 类.使用如下:
import netsvc
logger=netsvc.Logger()
在程序中如果想看某一个变量的值,使用: logger.notifyChannel('example module:',netsvc.LOG_INFO,str(变量)),在日志中就会有此变量的值,str 函数把python的任何变量,转变为字符串的值.
在查看源码时,如果不理解某个 参数或变量的值,就可以使用日志看一下,便于理解.
这是Logger类中,notifyChannel的定义:
def notifyChannel(self, name, level, msg)
level为以下值:
LOG_NOTSET = 'notset'
LOG_DEBUG_RPC = 'debug_rpc'
LOG_DEBUG = 'debug'
LOG_INFO = 'info'
LOG_WARNING = 'warn'
LOG_ERROR = 'error'
LOG_CRITICAL = 'critical'