Устранение неполадок OTLP

Частые проблемы и решения.

Данные не появляются

1. Проверьте API-токен

curl -X POST https://otlp.statusradar.dev/v1/traces \
  -H "X-App-Token: your-token" \
  -H "Content-Type: application/json" \
  -d '{"resourceSpans":[]}'

# Should return: 200 OK
# Error 401: Invalid token

2. Проверьте эндпоинт

Корректные эндпоинты:

  • https://otlp.statusradar.dev/v1/traces
  • https://otlp.statusradar.dev/v1/logs
  • https://otlp.statusradar.dev/traces (отсутствует /v1)

3. Проверьте сеть

# Test connectivity
curl -I https://otlp.statusradar.dev/v1/traces

# Should return: 405 Method Not Allowed (POST required)

Большой объём данных

1. Сэмплирование

const sampler = new TraceIdRatioBasedSampler(0.1);  // Sample 10%

2. Фильтрация спанов

processor.onStart = (span) => {
  if (span.name === 'healthcheck') {
    return false;  // Don't export
  }
};

Квота превышена

Контролируйте использование: Dashboard → Observability → Apps → Usage

Решения:

  • Снизьте частоту сэмплирования
  • Отфильтруйте «шумные» спаны
  • Приобретите top-up кредиты

Спаны не связаны

Убедитесь в распространении контекста:

// Service A
const headers = {};
propagation.inject(context.active(), headers);

// Service B
const ctx = propagation.extract(context.active(), req.headers);
context.with(ctx, () => {
  // Spans will be linked
});

Получение помощи