`JSON` attributes do not show up as valid json in event attributes
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Comienza con el método emit del handler y la construcción de HTTPLogItem mostrada en el informe; después, sigue cómo se serializa log_ctx a través de LogsApi.submit_log. Reproduce el ejemplo de logger.debug con x_request_body y verifica que los atributos del evento enviado conserven valores de objeto JSON válidos en lugar de mostrarse como cadenas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
A clear and concise description of what the bug is.
When a valid json is passed as value of a custom event atrribute, In logs it is show as a string and not a json object
To Reproduce
# in the handler
def emit(self, record):
env = os.getenv("APP_ENV", "local")
log_ctx: LogCtxDict = record.__dict__.get("log_ctx", {})
tags_dict = log_ctx.pop('tags', {})
tags = [f"{k}:{v}" for k, v in tags_dict.items()]
tags.append("env:{}".format(env))
tags_merged = ",".join(tags)
body = HTTPLog(
[
HTTPLogItem(
ddsource="python",
ddtags=tags_merged,
hostname="vv-anyscale-ray-aps1",
message=self.format(record),
service="vv-ap-thumbnails-v1-{}-service".format(env),
timestamp=str(datetime.fromtimestamp(record.created).astimezone().timestamp()),
level=record.levelname.lower(),
**record.__dict__.get("log_ctx", {})
)
]
)
try:
with ApiClient(self.dd_configuration) as api_client:
resp = LogsApi(api_client).submit_log(content_encoding=ContentEncoding.GZIP, body=body)
if "errors" in resp:
self.handleError(record)
except (Exception, ):
self.handleError(record)
logger.debug(
"Test debug log",
log_ctx={
"x_request_body": json.dumps({"clip_id": "66abc57369bbe0000782ef42"}),
}
)
Expected behavior
A clear and concise description of what you expected to happen.
The object should be consumed and shown as json,
Screenshots
If applicable, add screenshots to help explain your problem.
Environment and Versions (please complete the following information):
A clear and precise description of your setup:
$ poetry show datadog-api-client
name : datadog-api-client
version : 2.27.0
description : Collection of all Datadog Public endpoints
dependencies
- certifi *
- python-dateutil *
- typing-extensions >=4.0.0
- urllib3 >=1.15
for logs parsing default python pipleline is used
- Lenguaje dominante
- Python
- Estrellas
- 166
- Forks
- 55
- Merge medio
- 2 d 17 h
- PR fusionados (30 d)
- 73
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 DataDog/datadog-api-client-python
-
stale
Dificultad 1/5 1-3 horas Aptitud para principiantes 72/100
DataDog/datadog-api-client-python#3535 · 1 comentario ·
-
kind/bug stale
Dificultad 3/5 1-2 días Aptitud para principiantes 66/100
DataDog/datadog-api-client-python#3717 · 3 comentarios ·
-
kind/bug stale
Dificultad 3/5 1-2 días Aptitud para principiantes 75/100
DataDog/datadog-api-client-python#3656 · 1 comentario ·
-
kind/bug stale
Dificultad 3/5 1-2 días Aptitud para principiantes 38/100
DataDog/datadog-api-client-python#3120 · 1 comentario ·
-
stale
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
DataDog/datadog-api-client-python#2986 · 1 comentario ·
Todos los issues de DataDog/datadog-api-client-python
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
anthropics/skills#1811 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
speaches-ai/speaches#678 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
datalayer/mcp-compose#42 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
conda-forge/spacy-feedstock#177 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
UKGovernmentBEIS/inspect_evals#2523 ·