> ## Documentation Index
> Fetch the complete documentation index at: https://docs.responsibleailabs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenTelemetry

> Exportieren Sie RAIL-Punkte als OpenTelemetry-Spans für vollständige Beobachtbarkeit.

## Installation

```bash theme={null}
pip install "rail-score-sdk[telemetry]"
```

## Einrichtung

```python theme={null}
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
from rail_score_sdk import RailScoreClient
from rail_score_sdk.telemetry import RAILTelemetry

# Konfigurieren Sie den OTEL-Exporter
provider = TracerProvider()
exporter = OTLPSpanExporter(endpoint="http://localhost:4317")
provider.add_span_processor(BatchSpanProcessor(exporter))
trace.set_tracer_provider(provider)

# Aktivieren Sie die RAIL-Telemetrie
rail = RailScoreClient(api_key="YOUR_RAIL_API_KEY")
RAILTelemetry.instrument(rail)

# Alle eval() Aufrufe erzeugen jetzt automatisch Spans
result = rail.eval(content="Ihr Text hier", mode="basic")
```

## Span-Attribute

Jeder `rail.eval()` Aufruf erzeugt einen Span mit diesen Attributen:

| Attribut                     | Typ      | Beschreibung                              |
| ---------------------------- | -------- | ----------------------------------------- |
| `rail.score`                 | `float`  | Gesamter RAIL-Punkt                       |
| `rail.confidence`            | `float`  | Punktesicherheit                          |
| `rail.mode`                  | `string` | `basic` oder `deep`                       |
| `rail.credits_consumed`      | `float`  | Verbrauchte Credits                       |
| `rail.from_cache`            | `bool`   | Ob das Ergebnis zwischengespeichert wurde |
| `rail.dim.{name}.score`      | `float`  | Punkt pro Dimension                       |
| `rail.dim.{name}.confidence` | `float`  | Sicherheit pro Dimension                  |

## Traces anzeigen

RAIL-Spans integrieren sich in jedes OTEL-kompatible Backend: Jaeger, Tempo, Honeycomb, Datadog, New Relic oder Langfuse.

```bash theme={null}
# Starten Sie eine lokale Jaeger-Instanz für die Entwicklung
docker run -p 16686:16686 -p 4317:4317 jaegertracing/all-in-one
```

Öffnen Sie `http://localhost:16686`, um Traces anzuzeigen.
