diff options
author | elie <elie> | 2014-10-27 12:09:06 +0000 |
---|---|---|
committer | elie <elie> | 2014-10-27 12:09:06 +0000 |
commit | c19ed98c46696d37108cf6cbedcbcb601b34540b (patch) | |
tree | 45b22159841f92587232cbb564607412a0d7baab | |
parent | a4d83c864a9bad7702c20413ef23c9f6e7c25dfc (diff) | |
download | pysnmp-c19ed98c46696d37108cf6cbedcbcb601b34540b.tar.gz |
* added support for logging into parent application's logger
* use logging framework for timestamps generation
-rw-r--r-- | pysnmp/debug.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/pysnmp/debug.py b/pysnmp/debug.py index 83f92bf..4623e60 100644 --- a/pysnmp/debug.py +++ b/pysnmp/debug.py @@ -39,7 +39,7 @@ class Printer: if handler is None: handler = logging.StreamHandler() if formatter is None: - formatter = logging.Formatter('%(name)s: %(message)s') + formatter = logging.Formatter('%(asctime)s %(name)s: %(message)s') handler.setFormatter(formatter) handler.setLevel(logging.DEBUG) logger.addHandler(handler) @@ -57,7 +57,14 @@ class Debug: elif self.defaultPrinter is not None: self._printer = self.defaultPrinter else: - self._printer = Printer() + if 'loggerName' in options: + # route our logs to parent logger + self._printer = Printer( + logger=logging.getLogger(options['loggerName']), + handler=logging.NullHandler() + ) + else: + self._printer = Printer() self('running pysnmp version %s' % __version__) for f in flags: inverse = f and f[0] in ('!', '~') @@ -77,7 +84,7 @@ class Debug: return 'logger %s, flags %x' % (self._printer, self._flags) def __call__(self, msg): - self._printer('[%s]: %s' % (self.timestamp(), msg)) + self._printer(msg) def __and__(self, flag): return self._flags & flag @@ -85,10 +92,6 @@ class Debug: def __rand__(self, flag): return flag & self._flags - def timestamp(self): - return time.strftime('%H:%M:%S', time.localtime()) + \ - '.%.3d' % int((time.time() % 1) * 1000) - # This will yield false from bitwise and with a flag, and save # on unnecessary calls logger = 0 |