📊आधिकारिक

OpenTelemetry इंटीग्रेशन

OTLP के माध्यम से अपने ऑब्ज़र्वेबिलिटी स्टैक में पुनर्प्राप्ति ट्रेस एक्सपोर्ट करें।

0160 सेकंड अवलोकन

Seizn प्रत्येक पुनर्प्राप्ति ऑपरेशन के लिए OpenTelemetry ट्रेस नेटिव रूप से एक्सपोर्ट करता है। एंड-टू-एंड ऑब्ज़र्वेबिलिटी के लिए किसी भी OTLP-संगत बैकएंड से कनेक्ट करें।

  • स्वचालित स्पैन निर्माण के साथ ज़ीरो-कॉन्फ़िग OTLP एक्सपोर्ट
  • लेटेंसी, टोकन काउंट और लागत सहित समृद्ध एट्रिब्यूट
  • डिस्ट्रिब्यूटेड ट्रेसिंग के लिए कॉन्टेक्स्ट प्रोपेगेशन

समर्थित बैकएंड

DatadogGrafana TempoJaegerHoneycombNew RelicZipkin

02सेटअप

एनवायरनमेंट वेरिएबल के माध्यम से OTLP एक्सपोर्ट कॉन्फ़िगर करें।

Environment Variablesbash
# Enable OTLP export in your Seizn client
# Set these environment variables

# Required: OTLP endpoint
export SEIZN_OTLP_ENDPOINT="https://your-collector:4318"

# Optional: Authentication
export SEIZN_OTLP_HEADERS="Authorization=Bearer your-token"

# Optional: Service name (default: seizn-client)
export SEIZN_SERVICE_NAME="my-rag-app"

03बैकएंड उदाहरण

DD

Datadog

Datadog Agent या सीधे API के माध्यम से Datadog APM में ट्रेस एक्सपोर्ट करें।

Datadog Configurationbash
# Option 1: Direct to Datadog (via Agent)
export SEIZN_OTLP_ENDPOINT="http://localhost:4318"
# Datadog Agent must have OTLP receiver enabled

# Option 2: Direct to Datadog API
export SEIZN_OTLP_ENDPOINT="https://trace.agent.datadoghq.com"
export SEIZN_OTLP_HEADERS="DD-API-KEY=your-datadog-api-key"

# Enable in Seizn
export SEIZN_TELEMETRY_ENABLED="true"
datadog-agent.yamlyaml
otlp_config:
  receiver:
    protocols:
      http:
        endpoint: 0.0.0.0:4318
G

Grafana Tempo

Grafana Tempo (क्लाउड या सेल्फ-होस्टेड) में ट्रेस भेजें।

Grafana Cloud Configurationbash
# Grafana Cloud
export SEIZN_OTLP_ENDPOINT="https://tempo-us-central1.grafana.net/tempo"
export SEIZN_OTLP_HEADERS="Authorization=Basic $(echo -n 'instance-id:api-token' | base64)"

# Self-hosted Tempo
export SEIZN_OTLP_ENDPOINT="http://tempo:4318"

# Enable in Seizn
export SEIZN_TELEMETRY_ENABLED="true"
J

Jaeger

नेटिव OTLP रिसीवर समर्थन के साथ Jaeger में एक्सपोर्ट करें।

Jaeger Configurationbash
# Jaeger with OTLP receiver (v1.35+)
export SEIZN_OTLP_ENDPOINT="http://jaeger:4318"
export SEIZN_TELEMETRY_ENABLED="true"
Docker Compose Examplebash
# Run Jaeger with OTLP support
docker run -d --name jaeger \
  -e COLLECTOR_OTLP_ENABLED=true \
  -p 16686:16686 \
  -p 4318:4318 \
  jaegertracing/all-in-one:latest

04प्रोडक्शन सुझाव

सैंपलिंग रणनीति

हेड-बेस्ड या टेल-बेस्ड सैंपलिंग के साथ ट्रेस वॉल्यूम नियंत्रित करें।

typescript
import { Seizn } from 'seizn';

const client = new Seizn({
  apiKey: process.env.SEIZN_API_KEY,
  telemetry: {
    enabled: true,
    samplingRate: 0.1, // Sample 10% of traces
    // Or use tail-based sampling
    sampleOnlyErrors: true,
    sampleSlowRequests: {
      enabled: true,
      thresholdMs: 1000,
    },
  },
});

कस्टम एट्रिब्यूट

बेहतर फ़िल्टरिंग के लिए रिसोर्स और स्पैन एट्रिब्यूट जोड़ें।

typescript
const client = new Seizn({
  apiKey: process.env.SEIZN_API_KEY,
  telemetry: {
    enabled: true,
    resourceAttributes: {
      'deployment.environment': 'production',
      'service.version': '1.2.3',
      'service.namespace': 'rag-apps',
    },
    spanAttributes: {
      'user.tier': 'enterprise',
      'feature.flag.rerank': 'enabled',
    },
  },
});

बैच कॉन्फ़िगरेशन

बैच सेटिंग्स के साथ एक्सपोर्ट प्रदर्शन ऑप्टिमाइज़ करें।

typescript
const client = new Seizn({
  apiKey: process.env.SEIZN_API_KEY,
  telemetry: {
    enabled: true,
    batchConfig: {
      maxQueueSize: 2048,
      scheduledDelayMs: 5000,
      maxExportBatchSize: 512,
    },
  },
});

05समस्या निवारण

समस्याकारणसमाधान
कोई ट्रेस दिखाई नहीं दे रहाटेलीमेट्री अक्षम या एंडपॉइंट गलतSEIZN_TELEMETRY_ENABLED=true सेट करें और एंडपॉइंट सत्यापित करें
कनेक्शन अस्वीकृतकलेक्टर चालू नहीं या गलत पोर्टकलेक्टर स्थिति और पोर्ट 4318 जांचें
ट्रेस में स्पैन गायबसैंपलिंग दर बहुत कमसैंपलिंग दर बढ़ाएं या सैंपलिंग अक्षम करें

डीबग मोड

टेलीमेट्री समस्याओं के निवारण के लिए डीबग लॉगिंग सक्षम करें।

bash
export SEIZN_TELEMETRY_DEBUG="true"
export OTEL_LOG_LEVEL="debug"