Skip to content

Commit

Permalink
Merge pull request #23 from Overseas-Student-Living/more-detailed-log…
Browse files Browse the repository at this point in the history
…-message

Add call ID to log message
  • Loading branch information
iky authored Sep 6, 2017
2 parents 2397b21 + ccd2e7b commit 70ac178
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 9 deletions.
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ You should see two log records printed out in the first shell:
$ nameko run traced
starting services: traced
Connected to amqp://guest:***@127.0.0.1:5672//
entrypoint call trace
entrypoint result trace
[traced.hello.8eb11de2-0b28-495d-af91-98bd6a051bca] entrypoint call trace
[traced.hello.8eb11de2-0b28-495d-af91-98bd6a051bca] entrypoint result trace
The output does not tell much, given the default logging formatter prints
just the message. But there's much more on the log records, to get it out
Expand Down
15 changes: 12 additions & 3 deletions nameko_tracer/dependency.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,10 @@ def worker_setup(self, worker_ctx):
'timestamp': timestamp,
}
adapter = self.adapter_factory(worker_ctx)
adapter.info('entrypoint call trace', extra=extra)
adapter.info(
'[%s] entrypoint call trace',
worker_ctx.call_id,
extra=extra)
except Exception:
logger.warning('Failed to log entrypoint trace', exc_info=True)

Expand All @@ -81,8 +84,14 @@ def worker_result(self, worker_ctx, result=None, exc_info=None):
}
adapter = self.adapter_factory(worker_ctx)
if exc_info:
adapter.warning('entrypoint result trace', extra=extra)
adapter.warning(
'[%s] entrypoint result trace',
worker_ctx.call_id,
extra=extra)
else:
adapter.info('entrypoint result trace', extra=extra)
adapter.info(
'[%s] entrypoint result trace',
worker_ctx.call_id,
extra=extra)
except Exception:
logger.warning('Failed to log entrypoint trace', exc_info=True)
16 changes: 12 additions & 4 deletions tests/test_dependency.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,13 +72,15 @@ def some_method(self, spam):

setup_record, result_record = tracker.log_records

assert setup_record.msg == 'entrypoint call trace'
assert setup_record.msg == '[%s] entrypoint call trace'
assert setup_record.levelno == logging.INFO
assert result_record.msg == 'entrypoint result trace'
assert result_record.msg == '[%s] entrypoint result trace'
assert result_record.levelno == logging.INFO

setup_details = getattr(setup_record, constants.TRACE_KEY)

assert setup_record.args == (setup_details['call_id'],)

assert setup_details[constants.TIMESTAMP_KEY] == request_timestamp
assert (
setup_details[constants.STAGE_KEY] ==
Expand All @@ -87,6 +89,8 @@ def some_method(self, spam):

result_details = getattr(result_record, constants.TRACE_KEY)

assert result_record.args == (result_details['call_id'],)

assert result_details[constants.TIMESTAMP_KEY] == response_timestamp
assert result_details[constants.RESPONSE_TIME_KEY] == 60.0
assert (
Expand Down Expand Up @@ -129,20 +133,24 @@ def some_method(self, spam):

setup_record, result_record = tracker.log_records

assert setup_record.msg == 'entrypoint call trace'
assert setup_record.msg == '[%s] entrypoint call trace'
assert setup_record.levelno == logging.INFO
assert result_record.msg == 'entrypoint result trace'
assert result_record.msg == '[%s] entrypoint result trace'
assert result_record.levelno == logging.WARNING

setup_details = getattr(setup_record, constants.TRACE_KEY)

assert setup_record.args == (setup_details['call_id'],)

assert setup_details[constants.TIMESTAMP_KEY] == request_timestamp
assert (
setup_details[constants.STAGE_KEY] ==
constants.Stage.request.value)

result_details = getattr(result_record, constants.TRACE_KEY)

assert result_record.args == (result_details['call_id'],)

assert result_details[constants.TIMESTAMP_KEY] == response_timestamp
assert result_details[constants.RESPONSE_TIME_KEY] == 60.0
assert (
Expand Down

0 comments on commit 70ac178

Please sign in to comment.