diff --git a/mitogen/service.py b/mitogen/service.py index da48521f..f58f882c 100644 --- a/mitogen/service.py +++ b/mitogen/service.py @@ -99,6 +99,10 @@ def get_or_create_pool(size=None, router=None): return _pool +def get_thread_name(): + return threading.currentThread().getName() + + def call(service_name, method_name, call_context=None, **kwargs): """ Call a service registered with this pool, using the calling thread as a @@ -611,10 +615,11 @@ class Pool(object): try: event = self._select.get_event() except mitogen.core.LatchError: - LOG.debug('%r: graceful exit', self) + LOG.debug('thread %s exiting gracefully', get_thread_name()) return except mitogen.core.ChannelError: - LOG.debug('%r: exitting: %s', self, sys.exc_info()[1]) + LOG.debug('thread %s exiting with error: %s', + get_thread_name(), sys.exc_info()[1]) return func = self._func_by_source[event.source] @@ -627,16 +632,14 @@ class Pool(object): try: self._worker_run() except Exception: - th = threading.currentThread() - LOG.exception('%r: worker %r crashed', self, th.getName()) + LOG.exception('%r: worker %r crashed', self, get_thread_name()) raise def __repr__(self): - th = threading.currentThread() return 'Pool(%04x, size=%d, th=%r)' % ( id(self) & 0xffff, len(self._threads), - th.getName(), + get_thread_name(), ) @@ -752,7 +755,7 @@ class PushFileService(Service): def store_and_forward(self, path, data, context): LOG.debug('%r.store_and_forward(%r, %r, %r) %r', self, path, data, context, - threading.currentThread().getName()) + get_thread_name()) self._lock.acquire() try: self._cache[path] = data