OpenTracing + Jaeger + Python: автоматически составлять график каждого вызова функции - PullRequest
0 голосов
/ 28 февраля 2020

Я впервые смотрю на OpenTracing для Python и прошёл несколько уроков.

Насколько я понимаю, OpenTracing требует, чтобы вы явно упаковывали свой код в операторы with (или с явными операторами start / stop), и в этом случае он будет создавать только промежуток для того, что вы явно указали.

with tracer.start_span('fourth-span') as span4:
    span4.set_tag('fourth-tag', '60')
    with tracer.start_span('fifth-span', child_of=span4) as span5:
        span5.set_tag('fifth-tag', '80')

Мне было интересно, есть ли способы автоматической рекурсивной обработки функции, чтобы она могла перехватывать все другие вызовы дочерних функций и создавать для них дочерние промежутки без явной упаковки каждого дочернего вызова.

Я видел такие сервисы, как NewReli c, которые делают это, где вы можете в основном обернуть все приложение, и оно будет рекурсивно обрабатывать все вызовы функций, которые оно выполняет. Мне было интересно, было ли что-то похожее с OpenTracing.

Простите, если это не вариант использования OpenTracing, но я пытаюсь определить, является ли это предполагаемым вариантом использования или нет. Любой совет высоко ценится.

...