elastic / elastic/apm-agent-python

The set_custom_context API attaches contexts only to transactions

Abierto
#1,124 1 comentario 0 reacciones 0 asignados Ver en GitHub
agent-python feature
Lenguaje dominante
Python
Estrellas
431
Forks
239
Merge medio
5 d 10 h
PR fusionados (30 d)
7

Descripción

**Describe the bug**:

When using `set_custom_context` API, as per [documentation](https://www.elastic.co/guide/en/apm/agent/python/master/api.html#api-set-custom-context), the expectation is to be able to attach custom data to a `Transaction` or to an `Error`.

From the [code](https://github.com/elastic/apm-agent-python/blob/4d125e6f554a85b84085ddcf1fb783bc7228922c/elasticapm/traces.py#L848), it seems we apply the custom context only to `Transactions` which are sampled.

**Expected behavior**

The custom context should be attached to the `Error` too so that it will not be affected by sampling.

In any case, the request is to have an API to enrich errors without it being affected by sampling.

**Potential workaround**

If the objective is to enrich exceptions/errors, it is possible to use the `custom` named argument of `capture_exception` to enrich it. This information is attached to the `Error` and it will not be sampled.

**Environment**
- Python version: Python 2.7
- Framework and version: Django 1.11
- Agent version: 5.10.1

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.