Package SpecClient
[hide private]
[frames] | no frames]

Source Code for Package SpecClient

 1  #$Id: __init__.py,v 1.3 2005/03/17 12:45:26 guijarro Exp $ 
 2  __all__ = ['SpecMotor', 'SpecCounter', 'SpecCommand', 'Spec', 'SpecVariable'] 
 3   
 4   
 5  # 
 6  # create the SpecClient logger 
 7  # 
 8  import logging 
 9   
10  _logger = logging.getLogger('SpecClient') 
11  _logger.setLevel(logging.DEBUG) 
12  _oldLevel = logging.DEBUG 
13  _formatter = logging.Formatter('* [%(name)s] %(levelname)s %(asctime)s %(message)s') 
14   
15  if len(logging.root.handlers) == 0: 
16      # 
17      # log to stdout 
18      # 
19      import sys 
20   
21      _hdlr = logging.StreamHandler(sys.stdout) 
22      _hdlr.setFormatter(_formatter) 
23      _logger.addHandler(_hdlr) 
24   
25   
26 -def removeLoggingHandlers():
27 for handler in _logger.handlers: 28 _logger.removeHandler(handler)
29 30
31 -def setLoggingOff():
32 global _oldLevel 33 _oldLevel = _logger.getEffectiveLevel() 34 _logger.setLevel(1000) #disable all logging events less severe than 1000 (CRITICAL is 50...)
35 36
37 -def setLoggingOn():
38 _logger.setLevel(_oldLevel)
39 40
41 -def addLoggingHandler(handler):
42 _logger.addHandler(handler)
43 44
45 -def setLoggingHandler(handler):
46 global _hdlr 47 48 removeLoggingHandlers() #_logger.removeHandler(_hdlr) 49 50 _hdlr = handler 51 addLoggingHandler(_hdlr)
52 53
54 -def setLogFile(filename):
55 # 56 # log to rotating files 57 # 58 from logging.handlers import RotatingFileHandler 59 60 hdlr = RotatingFileHandler(filename, 'a', 1048576, 5) #1 MB by file, 5 files max. 61 hdlr.setFormatter(_formatter) 62 63 setLoggingHandler(hdlr)
64