Skip to content

Commit cdbfe63

Browse files
author
paskozdilar
committed
Add service name to logger name
1 parent d6e8a03 commit cdbfe63

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

zrpc/server.py

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
from zrpc.serialization import serialize, deserialize, SerializationError
1717

1818

19-
logger = logging.getLogger(__name__)
20-
21-
2219
class _RPCCache(collections.OrderedDict):
2320

2421
def __init__(self, maxsize=128, *args, **kwds):
@@ -47,9 +44,12 @@ def __init__(self, name=None, socket_dir=None):
4744
# Convert CamelCase class name into snake_case
4845
class_name = self.__class__.__name__
4946
name = re.sub('([A-Z]+)', r'_\1', class_name).strip('_').lower()
50-
logger.warning('Service name not set -- using "%s".' % name)
47+
self._logger = logging.getLogger(__name__ + '.' + name)
48+
self._logger.warning('Service name not set -- using "%s".' % name)
5149
else:
52-
logger.info('Starting RPC server "{}"...'.format(name))
50+
self._logger = logging.getLogger(__name__ + '.' + name)
51+
self._logger.info('Starting RPC server "{}"...'.format(name))
52+
5353
socket_dir = os.path.abspath(socket_dir or '/tmp/zrpc_sockets')
5454

5555
context = zmq.Context.instance()
@@ -66,19 +66,18 @@ def __init__(self, name=None, socket_dir=None):
6666
except (OSError, zmq.ZMQError) as exc:
6767
raise ConnectError('Server init error') from exc
6868

69-
logger.info('Waiting for bind to complete...')
69+
self._logger.info('Waiting for bind to complete...')
7070
while not os.path.exists(socket_path):
7171
time.sleep(0.5)
7272
os.chmod(socket_path, 0o777)
73-
logger.info('Success.')
73+
self._logger.info('Success.' + str(os.listdir(socket_dir)))
7474

7575
poller.register(socket)
7676

7777
if self._rpc_methods is None:
7878
self._rpc_methods = {}
7979

80-
for method in self._rpc_methods.keys():
81-
logger.info('Registered RPC method: "%s"' % method)
80+
self._logger.info('RPC methods: %s' % list(self._rpc_methods.keys()))
8281

8382
self._name = name
8483
self._context = context
@@ -119,7 +118,7 @@ def unregister(self, fd):
119118

120119
def run(self):
121120
""" Run service forever. """
122-
logger.info('Running "{}" forever...'.format(self._name))
121+
self._logger.info('Running "{}" forever...'.format(self._name))
123122
while True:
124123
self.run_once()
125124

@@ -131,9 +130,9 @@ def run_once(self, timeout=None):
131130
socket = self._socket
132131
poller = self._poller
133132

134-
logger.debug('Polling for requests...')
133+
self._logger.debug('Polling for requests...')
135134
ready_sockets = dict(poller.poll(timeout=timeout))
136-
logger.debug('Ready_sockets: {}'.format(ready_sockets))
135+
self._logger.debug('Ready_sockets: {}'.format(ready_sockets))
137136

138137
for ready_socket in ready_sockets:
139138
if ready_socket is socket:
@@ -148,7 +147,7 @@ def __handle_request(self, socket):
148147
request = deserialize(request_data)
149148
[request_id, method_name, args, kwargs] = request
150149
except (SerializationError, ValueError) as exc:
151-
logger.error('Received malformed RPC request!')
150+
self._logger.error('Received malformed RPC request!')
152151
# send empty message to keep REP state machine happy
153152
socket.send(b'')
154153
return
@@ -164,23 +163,26 @@ def __handle_request(self, socket):
164163
except KeyError:
165164
payload = 'Invalid RPC method name: %s' % method_name
166165
is_exception = True
167-
logger.error(payload)
166+
self._logger.error(payload)
168167
else:
169-
logger.debug('Executing "%s" with args "%s" and kwargs "%s"...'
168+
self._logger.debug('Executing "%s" with args "%s" and kwargs "%s"...'
170169
% (method_name, str(args)[:50], str(kwargs)[:50]))
171170
try:
172171
payload = method(self, *args, **kwargs)
173172
except Exception as exc:
174-
logger.error('--- RPC METHOD EXCEPTION ---', exc_info=True)
173+
self._logger.error('--- RPC METHOD EXCEPTION ---',
174+
exc_info=True)
175175
payload = '%s: %s' % (type(exc).__name__, exc)
176176
is_exception = True
177177
else:
178178
is_exception = False
179179

180-
logger.debug('Serializing RPC response "%s"...' % str(payload)[:50])
180+
self._logger.debug('Serializing RPC response "%s"...'
181+
% str(payload)[:50])
181182
response = [request_id, payload, is_exception]
182183
response_data = serialize(response)
183-
logger.debug('Sending RPC response "%s"...' % str(response_data)[:50])
184+
self._logger.debug('Sending RPC response "%s"...'
185+
% str(response_data)[:50])
184186
self._cache[request_id] = response_data
185187
socket.send(response_data)
186188

0 commit comments

Comments
 (0)