2

我正在使用 Google Cloud 推荐的 OpenCensus 来运行 StackDriver Trace ( https://cloud.google.com/trace/docs/setup/java )。我的配置在 Google App Engine Standard Java 8 上运行。我确保在项目中启用了 API,使用了初始化代码并创建了我试图跟踪的 span。

我只是用

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

然后用

span.end();

看起来很简单,但在 Google Cloud Trace 控制台中看不到我的自定义跟踪,只有 Google 跟踪的默认 RPC 调用。然后我尝试使用 Scopes 而不是 Span,使用和不使用项目名称来初始化 StackdriverTraceExporter,但没有任何结果导致创建自定义跟踪。

任何关于在哪里查看的指导或建议将不胜感激,因为这是我第一次使用 OpenCensus。

4

1 回答 1

3

我发现 OpenCensus 在刷新其缓存以写入导出器位置之前有 5 秒的延迟。这意味着要让跟踪显示出来,您必须使线程保持活动状态至少 5 秒。我遇到的问题是在多线程环境中,线程死得太快了。

OpenCensus 提出了一个允许您以编程方式刷新缓存的机会,这将允许开发人员在返回响应之前刷新缓存,这应确保可靠地写出跨度数据。

于 2018-09-01T02:57:06.510 回答