问题标签 [zipkin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
810 浏览

netflix-feign - 启用 Sleuth 会减慢请求(很多)

我将 Spring Cloud Feign 和 Sleuth 与 Zipkin 服务器一起使用。我的问题是,当我启用 Sleuth 时,任何简单的请求至少需要 600 毫秒。请注意,出于测试目的,我将 Sleuth 的采样器百分比设置为 1。

我可以做些什么来改善吗?

这里有一些请求的日志,没有 Sleuth 需要 25 毫秒,使用 Sleuth 需要 700 毫秒。(用户调用 /teams 调用 /cities):

0 投票
2 回答
7785 浏览

spring-boot - Zipkin 不显示跟踪日志

嗨,希望有人可以帮助我尝试获得一个非常基本的 zipkin 实现,以掌握分布式跟踪。我正在使用弹簧靴来执行此操作,但似乎无法使其正常工作。当我尝试查找我的服务的跟踪时,zipkin UI 中没有任何内容。

我有2个部署如下:

我要记录的 Spring Boot 应用程序:

pom.xml

有了这些依赖项,由于rabbit mq 依赖项,我确实遇到了连接错误。我必须包括这个,因为我遇到了 META-INF/spring binder 错误。除了放入依赖项之外,真的不确定如何解决这个问题。

我的应用程序.class

当我运行这个应用程序并调用我的端点时,我可以通过日志看到它应该将它发送到 zipkin。

这是我的完整日志。我再次得到 rabbitmq 异常,但不知道为什么我真的需要这个。没有它zipkin不能工作吗

我的完整日志:

我部署的第二个应用程序是我的 zipkin 客户端 / UI

.xml

我的应用程序.class

应用程序属性

运行 zipkin 服务器,它启动正常,但跟踪日志中没有显示任何错误

当我去客户端时,我确实收到了这个错误

任何帮助在这里表示赞赏

提前致谢

0 投票
1 回答
674 浏览

zipkin - 如何设置侦探跨度以在 Zipkin 关闭时向其报告

我正在尝试创建一个示踪剂,然后是示踪剂的一个跨度。执行工作。然后关闭跨度。我希望关闭操作将调用 spanReporter.report,它应该将数据发布到可用的 Zipkin 服务器(默认本地主机)

然而,这并没有发生。代码如下。我注意到我正在使用 NeverSampler。将其更改为 AlwaysSampler(目前)。我还使用 NoOpSpanReporter 作为默认的 SpanReporter(什么都不做)。我想将其更改为 ZipkinSpanReporter。(或者是其他东西)。这就是我卡住的地方。

问题:

  1. 根据粘贴的代码,我应该使用什么类型的默认跨度报告?
  2. 哪个 jar 将具有正确的 Span Reporter。我在 spring-cloud-sleuth-zipkin 中看到了 ZipkingSpanReporter 类。那么,我应该删除 spring-cloud-sleuth-* 依赖项并将其替换为 zipkin 依赖项吗?

现在使用上面的代码片段:

注意:
这个特定项目在其任何服务中都没有任何 http 调用。它是一个数据处理项目。
@SpringBootApplication 尚未使用。(尽管所有 zipkin 示例都使用它)。有必要吗?

0 投票
2 回答
274 浏览

elasticsearch - 在 zipkin 中看不到跟踪详细信息

我们使用elasticsearch作为zipkin的存储,依赖如下:

现在,trace 日志存储在 elasticsearch 中,我们可以在 zipkin ui 中看到 trance spans,但无法查看 span 详细信息或通过 traceid 查找 trace,除了:

0 投票
1 回答
1730 浏览

spring-boot - Spring Boot Sleuth 没有向 Zipkin 发送跟踪信息

我正在尝试将侦探集成到 Spring Boot 应用程序中,以便它与 zipkin 服务器进行跟踪以进行跟踪,但我运气不佳。我已经学习了一些教程(指向教程的链接)并且让他们与 zipkin 交谈没有问题,但它不能很好地转化为我的应用程序,我不知道在哪里看。

本质上,在 build.gradle 文件的依赖项部分,我添加了:

在控制器中,我添加了这两个 bean:

并且,我将这些添加到 application.properties 文件中:

当我在演示中执行所有这些操作时,它们会在 localhost:4911 上将跟踪信息发送到我的 Zipkin 主机(目前,我只是在运行快速启动 jar 文件)。当我在我的应用程序中执行所有这些操作时,我看到我有带有以下字符串的侦探日志条目:

所以,我知道侦探正在工作。

当我在关闭 zipkin 服务器应用程序的情况下运行演示应用程序时,该应用程序看起来工作正常,但是,足够合理的是,日志文件显示了一个很大的旧 ConnectionRefused 堆栈跟踪。当我对我的应用程序尝试相同的实验时,我在应用程序日志中看不到堆栈跟踪,并且应用程序也运行得很好。

在我更大的应用程序之外,我无法重现我的问题,而且我不知道还有什么可以与您分享的。有人对从哪里开始有任何建议吗?

0 投票
1 回答
1609 浏览

java - 如何使用勇敢(java)获取rabbitmq应用程序的currentSpan?

我的应用程序是基于 spring-rabbitmq 的应用程序(既不是 spring-cloud 也不是 spring-boot),从一个队列接收请求并将响应发送到另一个队列。

我想通过在发送消息之前注入 Zipkin 标头并在收到消息后立即提取 Zipkin 标头来使用勇敢来跟踪系统。

问题是在以下场景的第3步中,我怎样才能在发送消息之前获得span1?

设想:

发送消息前的代码片段:

在上面的代码中Span currentSpan = tracer.currentSpan();currentSpan始终为null

收到消息后的代码片段:

勇敢的配置代码:

以下是我的参考资料:

  1. https://github.com/openzipkin/brave/tree/master/brave#one-way-tracing

  2. https://github.com/openzipkin/brave/blob/master/brave/src/test/java/brave/features/async/OneWaySpanTest.java

  3. https://gist.github.com/adriancole/76d94054b77e3be338bd75424ca8ba30

0 投票
0 回答
960 浏览

node.js - 自动检测,如 Node.js 中的 Spring Cloud Sleuth

虽然 Zipkin sdk 可用于 Node.js,但我正在寻找像 Node.js 应用程序中的 Spring Cloud Sleuth 这样的自动仪器。Node.js 中是否有它的模块或框架?

我上面所说的自动检测的意思是,在 Java 中,我不必编写代码来使用 Zipkin 检测 servlet/filters/rest 客户端。Sleuth 会自动执行此操作。虽然 Zipkin 检测在 Node.js 中似乎是手动的。

0 投票
1 回答
1039 浏览

spring-cloud - Spring Cloud sleuth with Webservicetemplate

Spring cloud sleuth 是否支持 WebserviceTemplate?我的意思是 - 我有一个服务调用 2 个服务 - 一个使用 RestTemplate,另一个使用 Webservicetemplate。Rest 调用显示在 Zipkin 中,而使用 Webservicetemplate 的 Soap 调用则没有。我必须将@NewSpan 添加到我所有的肥皂电话中吗?它不是像 Resttemplate 那样自动完成吗?

0 投票
0 回答
473 浏览

sql-server - 如何配置 Zipkin 以使用 MS SQLServer 数据库?

在官方 Zipkin 存储库README中,我看到了如何使用 Cassandra、MySql 或 Elastic Search 配置 Zipkin。但是在我目前的工作中,我们想使用 Zipkin,但我们仅限于 Microsoft SQL Server 作为唯一支持的数据库。

AFAIK Zipkin 通过标准 JDBC 驱动程序与 MySql 一起使用,因此我认为它也可以与 SqlServer 一起使用。我对吗?如果是这样,我该如何配置它来处理它?

0 投票
1 回答
277 浏览

java - JSR305 OSGi 出口勇敢

勇敢的核心模块添加了 javax.annotation;version="[3.0.0,4)" 的导出,这会导致在 JBoss Fuse 中使用勇敢部署 OSGi 应用程序时出现问题 - 因为系统包已经导出 javax.annotation;version=" 1.0”。

想知道为什么像 findbugs(JSR305) 包这样的 devtime 依赖项会作为运行时的一部分导出?

有什么解决方法吗?我们能否不起诉 servicemix 中的 JSR 305 捆绑包以使勇敢的 OSGi 捆绑包与 karaf 等常见容器兼容?