Skip to content

Instantly share code, notes, and snippets.

@pfreixes
Created October 19, 2017 10:59
Show Gist options
  • Save pfreixes/847a18b973266950c2cf8279b2435da6 to your computer and use it in GitHub Desktop.
Save pfreixes/847a18b973266950c2cf8279b2435da6 to your computer and use it in GitHub Desktop.
Simple example of how to use the new request tracing
async def request_start(session, trace_context, method, host, port, headers):
trace_context.start = loop.time()
headers['X-Request-id'] = 'request_id'
async def request_stop(session, trace_context, response):
print("request type {}".format(trace_context.query))
print("request finsihed with {} status code".format(response.status_code))
print("request took {}".format(loop.time() - trace_context.start))
async def request_exception(session, trace_context, exc):
print("request_exception {}".format(exc))
session = ClientSession()
session.on_request_start.add(request_start)
session.on_request_stop.add(request_stop)
session.on_request_exception.add(request_exception)
async def foo():
resp = await session.get(
"http://microservice_foo.local/search?q=people",
trace_context=SimpleNamespace(query='people')
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment