Bug: nested subsegments don't work across threads
@srprash ya está trabajando en esto.
Desde el 28/9/2023.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
We're tracking a bug where nested subsegments don't work across threads, even when using the official suggestion in the documentation.
We've managed to reproduce the issue with some minimal code:
Code snippet
from concurrent.futures import ThreadPoolExecutor
from aws_xray_sdk.core import xray_recorder
@xray_recorder.capture("## lambda handler")
def lambda_handler(event, context):
with ThreadPoolExecutor() as pool:
@xray_recorder.capture("## f")
def f():
@xray_recorder.capture("## h")
def h():
pass
def g(trace_entity):
xray_recorder.set_trace_entity(trace_entity)
h()
xray_recorder.clear_trace_entities()
curr = xray_recorder.get_trace_entity()
pool.submit(g, curr)
This produces the following XRay traces:
XRay trace
XRay Event at (2023-04-05T16:32:52.012000) with id (1-642d8694-731f0a1a6d204264677086db) and duration (0.388s)
- 0.388s - lambda-function-url-HelloWorldFunction-sRQB00cHvXOP [HTTP: 200]
- 0.021s - lambda-function-url-HelloWorldFunction-sRQB00cHvXOP
- 0.223s - Initialization
- 0.020s - Invocation
- 0.019s - ## lambda handler
- 0.018s - ## f
- 0.000s - ## h
- 0.000s - Overhead
The expected output would be for the "h" trace to be nested under "f":
Expected output
XRay Event at (2023-04-05T16:32:52.012000) with id (1-642d8694-731f0a1a6d204264677086db) and duration (0.388s)
- 0.388s - lambda-function-url-HelloWorldFunction-sRQB00cHvXOP [HTTP: 200]
- 0.021s - lambda-function-url-HelloWorldFunction-sRQB00cHvXOP
- 0.223s - Initialization
- 0.020s - Invocation
- 0.019s - ## lambda handler
- 0.018s - ## f
- 0.000s - ## h
- 0.000s - Overhead
- Lenguaje dominante
- Python
- Estrellas
- 339
- Forks
- 148
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aws/aws-xray-sdk-python
-
psycopg connection context manager drops X-Ray tracing wrapper, so cursor execute calls are not tracedPosiblemente ocupada @reginaldalfret la tomó hace 18 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
aws/aws-xray-sdk-python#490 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 1/100
aws/aws-xray-sdk-python#460 ·
-
Next releaseAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
aws/aws-xray-sdk-python#457 · 1 reacción ·
-
mysql-connector 9.2.0 - TypeError: 'MySQLConnection' object is not iterablePosiblemente ocupada @reginaldalfret la tomó hace 18 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
aws/aws-xray-sdk-python#453 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
aws/aws-xray-sdk-python#452 · 1 reacción ·
Todos los issues de aws/aws-xray-sdk-python
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
task
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
danparshall/claude_researcher#87 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
datajoint/datajoint-python#1586 ·
Los mantenedores suelen responder en 1 día
-
1D intercept of length 1 is accepted as `fix_params` in population GLM with more than 1 unitPosiblemente ocupada @dhvani7014 la tomó hoy. Abiertobug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
flatironinstitute/nemos#642 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Broken links in the docsAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
uniswap-python/uniswap-python#487 ·