summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2014-04-09 18:44:49 +0300
committerSam Thursfield <sam.thursfield@codethink.co.uk>2014-04-10 15:13:29 +0300
commit3efa5ad43c988421c1402e9fa986b6ea25f38e1a (patch)
treefc8ec864c3284b3a12dfde6587d6065d727fd51e
parentb772a26680895ecf102b524444623fc10c4d183d (diff)
downloadmorph-3efa5ad43c988421c1402e9fa986b6ea25f38e1a.tar.gz
distbuild: Log IPs of initiators and workers in more places
This makes tracking multiple builds through one log file a bit easier.
-rw-r--r--distbuild/initiator_connection.py49
-rw-r--r--distbuild/worker_build_scheduler.py14
2 files changed, 31 insertions, 32 deletions
diff --git a/distbuild/initiator_connection.py b/distbuild/initiator_connection.py
index e6202908..d48d4698 100644
--- a/distbuild/initiator_connection.py
+++ b/distbuild/initiator_connection.py
@@ -51,10 +51,11 @@ class InitiatorConnection(distbuild.StateMachine):
self.conn = conn
self.artifact_cache_server = artifact_cache_server
self.morph_instance = morph_instance
+ self.initiator_name = conn.remotename()
def __repr__(self):
- remote = self.conn.remotename()
- return '<InitiatorConnection at 0x%x: remote %s>' % (id(self), remote)
+ return '<InitiatorConnection at 0x%x: remote %s>' % (id(self),
+ self.initiator_name)
def setup(self):
self.jm = distbuild.JsonMachine(self.conn)
@@ -88,10 +89,10 @@ class InitiatorConnection(distbuild.StateMachine):
def _handle_msg(self, event_source, event):
'''Handle message from initiator.'''
-
- logging.debug(
- 'InitiatorConnection: from initiator: %s', repr(event.msg))
-
+
+ logging.debug('InitiatorConnection: from %s: %r', self.initiator_name,
+ event.msg)
+
if event.msg['type'] == 'build-request':
new_id = self._idgen.next()
self.our_ids.add(new_id)
@@ -103,16 +104,16 @@ class InitiatorConnection(distbuild.StateMachine):
def _disconnect(self, event_source, event):
for id in self.our_ids:
- logging.debug('InitiatorConnection: InitiatorDisconnect(%s)'
- % str(id))
+ logging.debug('InitiatorConnection: %s: InitiatorDisconnect(%s)',
+ self.initiator_name, str(id))
self.mainloop.queue_event(InitiatorConnection,
InitiatorDisconnect(id))
# TODO should this clear our_ids?
self.mainloop.queue_event(self, _Close(event_source))
def _close(self, event_source, event):
- logging.debug('InitiatorConnection: closing: %s',
- repr(event.event_source))
+ logging.debug('InitiatorConnection: %s: closing: %s',
+ self.initiator_name, repr(event.event_source))
event.event_source.close()
@@ -124,6 +125,10 @@ class InitiatorConnection(distbuild.StateMachine):
'InitiatorConnection: received result: %s', repr(event.msg))
self.jm.send(event.msg)
+ def _log_send(self, msg):
+ logging.debug(
+ 'InitiatorConnection: sent to %s: %r', self.initiator_name, msg)
+
def _send_build_finished_message(self, event_source, event):
if event.id in self.our_ids:
msg = distbuild.message('build-finished',
@@ -132,8 +137,7 @@ class InitiatorConnection(distbuild.StateMachine):
self._route_map.remove(event.id)
self.our_ids.remove(event.id)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_failed_message(self, event_source, event):
if event.id in self.our_ids:
@@ -143,8 +147,7 @@ class InitiatorConnection(distbuild.StateMachine):
self._route_map.remove(event.id)
self.our_ids.remove(event.id)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_progress_message(self, event_source, event):
if event.id in self.our_ids:
@@ -152,8 +155,7 @@ class InitiatorConnection(distbuild.StateMachine):
id=self._route_map.get_incoming_id(event.id),
message=event.message_text)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_steps_message(self, event_source, event):
@@ -173,8 +175,7 @@ class InitiatorConnection(distbuild.StateMachine):
id=self._route_map.get_incoming_id(event.id),
steps=step_names)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_step_started_message(self, event_source, event):
if event.id in self.our_ids:
@@ -183,8 +184,7 @@ class InitiatorConnection(distbuild.StateMachine):
step_name=event.step_name,
worker_name=event.worker_name)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_output_message(self, event_source, event):
logging.debug('InitiatorConnection: build_output: '
@@ -197,8 +197,7 @@ class InitiatorConnection(distbuild.StateMachine):
stdout=event.stdout,
stderr=event.stderr)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_step_finished_message(self, event_source, event):
if event.id in self.our_ids:
@@ -206,8 +205,7 @@ class InitiatorConnection(distbuild.StateMachine):
id=self._route_map.get_incoming_id(event.id),
step_name=event.step_name)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
def _send_build_step_failed_message(self, event_source, event):
if event.id in self.our_ids:
@@ -215,6 +213,5 @@ class InitiatorConnection(distbuild.StateMachine):
id=self._route_map.get_incoming_id(event.id),
step_name=event.step_name)
self.jm.send(msg)
- logging.debug(
- 'InitiatorConnection: sent to initiator: %s', repr(msg))
+ self._log_send(msg)
diff --git a/distbuild/worker_build_scheduler.py b/distbuild/worker_build_scheduler.py
index 315d3094..5ec7c9aa 100644
--- a/distbuild/worker_build_scheduler.py
+++ b/distbuild/worker_build_scheduler.py
@@ -193,11 +193,13 @@ class WorkerConnection(distbuild.StateMachine):
self._worker_cache_server_port = worker_cache_server_port
self._morph_instance = morph_instance
self._helper_id = None
-
- def name(self):
+
addr, port = self._conn.getpeername()
name = socket.getfqdn(addr)
- return '%s:%s' % (name, port)
+ self._worker_name = '%s:%s' % (name, port)
+
+ def name(self):
+ return self._worker_name
def setup(self):
distbuild.crash_point()
@@ -231,7 +233,7 @@ class WorkerConnection(distbuild.StateMachine):
self._request_job(None, None)
def _maybe_cancel(self, event_source, build_cancel):
- logging.debug('WC: BuildController requested a cancel')
+ logging.debug('WC: BuildController %r requested a cancel' % event_source)
if build_cancel.id == self._initiator_id:
distbuild.crash_point()
@@ -265,7 +267,7 @@ class WorkerConnection(distbuild.StateMachine):
stdin_contents=distbuild.serialise_artifact(self._artifact),
)
self._jm.send(msg)
- logging.debug('WC: sent to worker: %s' % repr(msg))
+ logging.debug('WC: sent to worker %s: %r' % (self._worker_name, msg))
self._route_map.add(self._initiator_id, msg['id'])
self._initiator_request_map[self._initiator_id].add(msg['id'])
logging.debug(
@@ -281,7 +283,7 @@ class WorkerConnection(distbuild.StateMachine):
distbuild.crash_point()
- logging.debug('WC: from worker: %s' % repr(event.msg))
+ logging.debug('WC: from worker %s: %r' % (self._worker_name, event.msg))
handlers = {
'exec-output': self._handle_exec_output,