mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-07 22:44:56 -04:00
Improve opentracing for federation requests (#11870)
The idea here is to set the parent span for incoming federation requests to the *outgoing* span on the other end. That means that you can see (most of) the full end-to-end flow when you have a process that includes federation requests. However, in order not to lose information, we still want a link to the `incoming-federation-request` span from the servlet, so we have to create another span to do exactly that.
This commit is contained in:
parent
31b554c297
commit
964f5b9324
3 changed files with 61 additions and 19 deletions
|
@ -478,6 +478,8 @@ def start_active_span(
|
|||
def start_active_span_follows_from(
|
||||
operation_name: str,
|
||||
contexts: Collection,
|
||||
child_of=None,
|
||||
start_time: Optional[float] = None,
|
||||
*,
|
||||
inherit_force_tracing=False,
|
||||
tracer=None,
|
||||
|
@ -487,6 +489,14 @@ def start_active_span_follows_from(
|
|||
Args:
|
||||
operation_name: name of the operation represented by the new span
|
||||
contexts: the previous spans to inherit from
|
||||
|
||||
child_of: optionally override the parent span. If unset, the currently active
|
||||
span will be the parent. (If there is no currently active span, the first
|
||||
span in `contexts` will be the parent.)
|
||||
|
||||
start_time: optional override for the start time of the created span. Seconds
|
||||
since the epoch.
|
||||
|
||||
inherit_force_tracing: if set, and any of the previous contexts have had tracing
|
||||
forced, the new span will also have tracing forced.
|
||||
tracer: override the opentracing tracer. By default the global tracer is used.
|
||||
|
@ -497,7 +507,9 @@ def start_active_span_follows_from(
|
|||
references = [opentracing.follows_from(context) for context in contexts]
|
||||
scope = start_active_span(
|
||||
operation_name,
|
||||
child_of=child_of,
|
||||
references=references,
|
||||
start_time=start_time,
|
||||
tracer=tracer,
|
||||
)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue