gpt4 book ai didi

java - Springboot - 使用 Camel 跟踪器创建自己的 Opentracing 范围

转载 作者:行者123 更新时间:2023-12-02 09:42:42 25 4
gpt4 key购买 nike

我已将以下注释添加到我的 Spring Boot 项目中:

@CamelOpenTracing

这为我的消息经过的每条路线创建了一个跨度,并且效果完美。

但是,如何创建自己的跨度?我想在消息转到 onException 时添加一个跨度(添加使错误标记为 true)。

我尝试从 camelContext 获取跟踪器并创建一个跨度,但没有成功。

最佳答案

您可以在 Camel 进程中添加跨度,如下所示:

 from("queue:" + properties.getJmsEndpoint())
.routeId("Jms-To-Ftp-" + properties.getFlowName())

.setHeader(MessageHeaders.SENDER_ID, simple(properties.getApplication()))
.process(exchange -> {
//save original body for DLQ route
String originalBody = exchange.getIn().getBody(String.class);
exchange.setProperty(MessageProperties.BACKUP_MESSAGE, originalBody);


Span span = tracer.buildSpan("JmsMessage route").start();
span.setTag("sender", properties.getApplication());
span.setTag(MessageHeaders.DOCUMENT_ID, exchange.getIn().getHeader(MessageHeaders.DOCUMENT_ID).toString());
span.setTag(MessageHeaders.PROCESS_TYPE_NAME, exchange.getIn().getHeader(MessageHeaders.PROCESS_TYPE_NAME).toString());

span.log(ImmutableMap.of("file", originalBody));
span.finish();

})
.to("queue:" + properties.getReceiver())

关于java - Springboot - 使用 Camel 跟踪器创建自己的 Opentracing 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56935347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com