# -*- coding: euc-kr -*- #------------------------------------------------------------------------------- # Name: mmiDebug.py # Purpose: MMI상의 debug message를 출력하는 클래스 # # Author: 류호창 # # Created: 22-12-2007 # Copyright: (c) LG-Nortel 2007 # Licence: <Ryoo Ho Chang GGU!> #------------------------------------------------------------------------------- # ex) # roxia_debug = True, in config.py # from roxiadebug import * # roxia_trace(....) import config import sys class MmiDebug: def __init__(self): self.STD_OUT = 1 self.TEMP_LOG_FILE = 2 self.traceHeader = '[_TRACE_]' self.exceptionHeader = '[_EXCEPTION_]' self.eventHeader = '[_EVENT_]' self.todoHeader = '[_TODO_]' self.traceNum = 0 self.timestamp = True self.logFileHandler = None self.logTarget = sys.stdout # default for print chevron if config.log_target == self.TEMP_LOG_FILE: self.mmiLogFile = '/tmp/mmiLog' self.logFileHandle = open(self.mmiLogFile) self.logTarget = self.logFileHandle def __del__(self): if self.logFileHandle: self.logFileHandler.close() def mmiGetTime(self): import time, ntptime lt = time.localtime(ntptime.ntime()) return '%02d:%02d:%02d' % (lt[3], lt[4], lt[5]) def mmiTrace(self, a1, *args): if config.mmi_debug: delimiter = '[HCRYOO] ====> ' if self.timestamp: header = delimiter + self.traceHeader + '(%s)' % self.mmiGetTime() else: header = delimiter + self.traceHeader print >> self.logTarget, header, a1, for a in args: print >> self.logTarget, a, print >> self.logTarget def mmiException(self, a1, *args): if config.mmi_debug: if self.timestamp: header = self.exceptionHeader + '(%s)' % self.mmiGetTime() else: header = self.exceptionHeader print >> self.logTarget, header, a1, for a in args: print >> self.logTarget, a, print >> self.logTarget def mmiFormatedTrace(self, format, *args): if config.mmi_debug: if self.timestamp: header = self.traceHeader + '(%s)' % self.mmiGetTime() else: header print >> self.logTarget, header + ' ' + format % args def mmiEvent(self, a1, *args): if config.mmi_debug: if self.timestamp: header = self.eventHeader + '(%s)' % self.mmiGetTime() else: header self.traceNum += 1 traceno = '%d,' % (self.traceNum) print >> self.logTarget, header, traceno, a1, for a in args: print >> self.logTarget, a, print >> self.logTarget def mmiTodo(self, a1, *args): if config.mmi_debug: if self.timestamp: header = self.todoHeader + '(%s)' % self.mmiGetTime() else: header = self.todoHeader print >> self.logTarget, header, a1, for a in args: print >> self.logTarget, a, print >> self.logTarget