Closed diagutierrezro closed 2 months ago
Cuando crean los segmentos no hace una traza completa de las apis que utiliza, ya que solo deja la api que hace la petición el cliente, es un error:
{ "Id": "1-66cf0314-07359faac89588b21336420c", "Duration": 0.292, "LimitExceeded": false, "Segments": [ { "Id": "bcfb5470080126e5", "Document": { "id": "bcfb5470080126e5", "name": "localhost:8034", "start_time": 1724842772.9772391, "trace_id": "1-66cf0314-07359faac89588b21336420c", "end_time": 1724842773.2694173, "in_progress": false, "http": { "request": { "url": "http://pruebasapi.intranetoas.udistrital.edu.co:8094/v1/documento/154956", "method": "PUT" }, "response": { "status": 200 } }, "aws": { "xray": { "sampling_rule_name": "Filtro-V1", "sdk_version": "2.14.0", "sdk": "X-Ray for Python" } }, "service": { "runtime": "CPython", "runtime_version": "3.10.12" } } } ] }
Se ha encontrando que en el archivo llamado xray.py de configuración, la sentencia "patch_all()" hace que se creen los subsegmentos, pero si se quita y solo se usa "patch(['boto3'])" o "patch(['boto3', 'requests'])" hace que no deje la traza de las apis que se usaron en una petición http, además también se busco la forma de desahilitar al generación de los subsegmentos, pero no hay una función o método en el sdk de xray para python que haga dicha tarea de deshabilitación.
También se modifico el archivo llamado request_tools.py que tiene las funciones get_json, post_json y put_json, donde se busco no crear los subsegmentos de diferentes formas pero no dio resultado, otra cosa que se probo fue crear, controlar y cerrar los segmentos de la forma más manual posible con código pero aun así crea los subsegmentos.
Aun cuando se busco en chatgpt y gemini, no se encontro solución, entonces se sigue en la busqueda, prueba y error para encontrar una solución.
La revisión se continuará en otra issue.
Se requiere realizar la revisión de la lógica de la librería de Xray para corregir el mapeo de las peticiones, esta vez vamos a enforcarnos en el manejo de los segmentos para que estos no se creen como subsegmentos sino que en su lugar se creen segmentos nuevos y el parent_id se apunte hacia el segmento original.
Sub Tareas
Criterios de aceptación
Requerimientos
No aplica
Definition of Ready - DoR
Definition of Done - DoD - Desarrollo