Changeset 1859 for trunk/python/logging.py
- Timestamp:
- 08/05/10 14:40:38 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/python/logging.py
r1858 r1859 19 19 20 20 .. note:: Do instantiate a new one - use the :obj:`asaplog` instead. 21 21 22 22 """ 23 23 def __init__(self): 24 self._enabled = False24 self._enabled = True 25 25 self._log = "" 26 26 if is_casapy(): … … 31 31 set_global_sink(self.logger) 32 32 33 def post(self, level ):33 def post(self, level, origin=""): 34 34 """Post the messages to the logger. This will clear the buffered 35 35 logs. … … 42 42 if not self._enabled: 43 43 return 44 if not rcParams['verbose']:45 return46 44 47 45 logs = self._log.strip() 48 46 if len(logs) > 0: 49 self.logger.post(logs, priority=level)47 self.logger.post(logs, priority=level, origin=origin) 50 48 if isinstance(self.logger, LogSink): 51 49 logs = self.logger.pop().strip() … … 64 62 65 63 """ 66 from asap import rcParams67 64 if self._enabled: 68 if rcParams["verbose"]: 69 sep = "" 70 self._log = sep.join([self._log, msg]) 71 if newline: 72 self._log += "\n" 65 sep = "" 66 self._log = sep.join([self._log, msg]) 67 if newline: 68 self._log += "\n" 73 69 74 70 def enable(self, flag=True): … … 80 76 self._enabled = flag 81 77 78 def is_enabled(self): 79 return self._enabled 80 82 81 asaplog = AsapLogger() 83 82 """Default asap logger""" 84 83 85 def print_log_dec(f , level='INFO'):84 def print_log_dec(f): 86 85 """Decorator which posts log at completion of the wrapped method. 86 87 87 Example:: 88 88 … … 96 96 @wraps_dec(f) 97 97 def wrap_it(*args, **kw): 98 val = f(*args, **kw) 99 print_log(level) 100 return val 98 level = "INFO" 99 try: 100 val = f(*args, **kw) 101 return val 102 except Exception, ex: 103 level = "ERROR" 104 asaplog.push(str(ex)) 105 if rcParams['verbose']: 106 pass 107 else: 108 raise 109 finally: 110 print_log(level, f.func_name) 101 111 return wrap_it 102 112 103 def print_log(level='INFO' ):113 def print_log(level='INFO', origin=""): 104 114 """Alias for asaplog.post(level)""" 105 asaplog.post(level )115 asaplog.post(level, origin)
Note: See TracChangeset
for help on using the changeset viewer.