383.7. Zipkin 组件
可从 Camel 2.18 开始
camel-zipkin 组件用于使用 zipkin 来跟踪和计时的 Camel 消息。
事件(span)捕获用于传入和发送到 Camel 中的/传出消息。
在 Camel 2.22.0 中,计划重构 Camel-zipkin,使其不使用 zipkin-scribe,但使用默认的 http 传输。此操作可能会导致向后兼容。
这意味着您需要配置哪个 Camel 端点映射到 zipkin 服务名称。
映射可通过以下方式进行配置:
- 路由 id - Camel 路由 id
- endpoint url - Camel 端点 url
对于这两种类型,您可以使用通配符和正则表达式来匹配,使用来自 Intercept 的规则。
要匹配您可以模式中使用 * 的所有 Camel 消息,并将其配置为相同的服务名称。
如果没有配置映射,Camel 将回退,并使用端点 uri 作为服务名称。
但是,建议您配置服务映射,以便您可以在名称中使用人类可读的名称而不是 Camel 端点 uri。
Camel 将自动配置一个 span 报告程序,但没有明确配置,如果到 zipkin 收集程序的主机名和端口都被配置为环境变量
- ZIPKIN_COLLECTOR_HTTP_SERVICE_HOST - http 主机名
- ZIPKIN_COLLECTOR_HTTP_SERVICE_PORT - 端口号
或者
- ZIPKIN_COLLECTOR_THRIFT_SERVICE_HOST - Scribe (Thrift RPC) hostname
- ZIPKIN_COLLECTOR_THRIFT_SERVICE_PORT - 端口号
这使得在平台可以在 linux 容器中运行应用程序的容器平台中很容易使用 camel-zipkin,其中服务配置作为环境变量提供。