第 257 章 OpenTracing 组件


从 Camel 2.19 开始提供

重要

从 Camel 2.21 开始,需要使用与 OpenTracing Java API 版本 0.31 或更高版本兼容的 OpenTracing complaint tracer。

camel-opentracing 组件用于追踪和计时使用 OpenTracing 的传入和传出 Camel 消息。

为要发送到/来自 Camel 的传入和传出消息捕获事件(spans)。

如需支持的 tracer 列表,请参阅 OpenTracing 网站。

257.1. 配置

OpenTracing tracer 的配置属性有:

选项默认描述

excludePatterns

 

设置将针对与模式匹配的 Camel 消息禁用追踪的排除模式。内容是一个 Set<String>,其中键是一个模式。该模式使用来自 Intercept 的规则。

编码

false

设置标头密钥是否需要编码(特定于connector)。该值是一个布尔值。短划线需要针对 JMS 属性密钥编码实例。

可以通过三种方式配置 OpenTracing tracer 来为 Camel 应用程序提供分布式追踪:

257.1.1. explicit

在您的 POM 中包含 camel-opentracing 组件,以及与所选 OpenTracing 兼容 Tracer 关联的任何特定依赖项。

若要显式配置 OpenTracing 支持,请实例化 OpenTracingTracer 并初始化 camel 上下文。您可以选择指定 Tracer,也可以使用 RegistryServiceLoader 隐式发现。

OpenTracingTracer ottracer = new OpenTracingTracer();
// By default it uses a Noop Tracer, but you can override it with a specific OpenTracing implementation.
ottracer.setTracer(...);
// And then initialize the context
ottracer.init(camelContext);

要在 XML 中使用 OpenTracingTracer,您需要做的就是定义 OpenTracing tracer Bean。Camel 将自动发现并使用它们。

  <bean id="tracer" class="..."/>
  <bean id="ottracer" class="org.apache.camel.opentracing.OpenTracingTracer">
    <property name="tracer" ref="tracer"/>
  </bean>
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.