eventlet safety: don't send until we've got the span stack back in a
clean state, because sending can context switch.
This commit is contained in:
@@ -51,10 +51,10 @@ def stop(name):
|
|||||||
annotate('stop')
|
annotate('stop')
|
||||||
span = span_stack.spans.pop()
|
span = span_stack.spans.pop()
|
||||||
assert span.name == name, 'start span name {0} not equal to end span name {1}'.format(span.name, name)
|
assert span.name == name, 'start span name {0} not equal to end span name {1}'.format(span.name, name)
|
||||||
for backend in config.get_backends():
|
|
||||||
backend.send(span)
|
|
||||||
if not span_stack.spans:
|
if not span_stack.spans:
|
||||||
del(span_stack.trace_id)
|
del(span_stack.trace_id)
|
||||||
|
for backend in config.get_backends():
|
||||||
|
backend.send(span)
|
||||||
|
|
||||||
def annotate(value, service_name=None, address=None, port=None):
|
def annotate(value, service_name=None, address=None, port=None):
|
||||||
last_span = span_stack.spans[-1]
|
last_span = span_stack.spans[-1]
|
||||||
|
|||||||
Reference in New Issue
Block a user