OpenCensus не показывает следы на Google App Engine в стеке драйвера

Я использую OpenCensus в соответствии с рекомендациями Google Cloud для запуска StackDriver Trace ( https://cloud.google.com/trace/docs/setup/java). Моя конфигурация работает на Google App Engine Standard Java 8. Я убедился, что API включен в проекте, использовал код инициализации и создал промежутки, которые я пытаюсь отследить.

Я просто создаю промежуток с

Span span = tracer.spanBuilder(spanName).startSpan();

а затем закончите с

span.end();

Это кажется прямым, но ни одна из моих пользовательских трассировок не была видна в консоли Google Cloud Trace, только вызовы RPC по умолчанию, отслеживаемые Google. Затем я попытался использовать Scopes вместо Span, инициализировав StackdriverTraceExporter с именем проекта и без него, но ничего не привело к созданию пользовательских трассировок.

Будем очень благодарны за любые рекомендации или предложения о том, где искать, так как я впервые использую OpenCensus.

1 ответ

Я обнаружил, что OpenCensus имеет 5-секундную задержку, прежде чем очищать кэш для записи в папку экспортера. Это означает, что следы должны появиться, вы должны поддерживать поток в течение как минимум 5 секунд. У меня возникла проблема в многопоточной среде, потоки умирали слишком быстро.

OpenCensus предлагает шанс, который позволит вам программно очистить кэш, что позволит разработчикам очистить кэш перед возвратом ответа, который должен обеспечить надежную запись данных диапазона.

Другие вопросы по тегам