elastic / elastic/elastic-evals-sdk-python
[kbn-evals] Tracing not initialised: all trace IDs null
- Vorherrschende Sprache
- Python
- Sterne
- 2
- Forks
- 0
- Ø Merge
- 1 T. 13 Std.
- Gemergte PRs (30 T.)
- 18
Beschreibung
### Summary
`init_tracing()` is never called by the SDK. Without it, every ingested score has `trace_id=null`, and every Kibana evaluator short-circuits to `label="unavailable"`. Running an experiment with default settings produces no usable evaluation results.
### Problem
- `init_tracing()` is only called in example scripts, never from `run_experiment()`
- `evaluators/kibana.py:226-231` returns `"unavailable"` when `trace_id` is None
- Nothing in the docs warns users about this
### Fix
Call `init_tracing(config.tracing)` automatically in `ElasticEvalsClient.__init__`. `TracingConfig.enabled` already exists as the opt-out: setting `ELASTIC_EVALS_TRACING_ENABLED=false` in the environment disables tracing before the client is constructed. No new API parameter is needed.
### Done when
- [ ] Running `run_experiment()` without calling `init_tracing()` first does not produce `trace_id=null` scores
- [ ] The opt-out (`ELASTIC_EVALS_TRACING_ENABLED=false`) is documented
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginnen Sie bei ElasticEvalsClient.__init__ und vergleichen Sie dessen Tracing-Einrichtung mit den init_tracing()-Aufrufen in den Beispielskripten; untersuchen Sie evaluators/kibana.py:226-231 und run_experiment(), um das aktuelle Verhalten bei null Traces zu verstehen. Die Änderung ist abgeschlossen, wenn ein Standardlauf nicht-null Trace-IDs erzeugt und der Opt-out ELASTIC_EVALS_TRACING_ENABLED=false dokumentiert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- backend, observability-sre
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 74/100