我正在尝试在我的应用程序中添加一些标记到所有跟踪中。我尝试扩展DefaultMessageSpanCustomizer,但没有成功,如以下文档所示
@Component
class SpanCustomizerConfig extends DefaultMessageSpanCustomizer {
@Value("${spring.application.name}")
private String appName;
@Override
public Span customizeHandle(
final Span spanCustomizer, final Message<?> message, final MessageChannel messageChannel) {
return super.customizeHandle(spanCustomizer, message, messageChannel)
.tag("app", this.appName)
.tag("container", this.appName)
.tag("component", "api")
.tag("channelName", this.channelName(messageChannel));
}
@Override
public Span.Builder customizeSend(
final Span.Builder builder, final Message<?> message, final MessageChannel messageChannel) {
return super.customizeSend(builder, message, messageChannel)
.tag("app", this.appName)
.tag("container", this.appName)
.tag("component", "api")
.tag("channelName", this.channelName(messageChannel));
}
}
但不幸的是,我不能让它工作。是否有人成功地尝试为每个应用程序跟踪添加一些标记?
非常感谢你的帮助。
乔纳森。
如果您使用的是Sleuth with Brave(默认选项),您可以通过以下方式注册自己的span处理程序,为每个span添加一个标记
@Bean
SpanHandler mySpanHandler() {
return new SpanHandler() {
@Override
public boolean end(TraceContext context, MutableSpan span, Cause cause) {
span.tag("add this tag", "for every span");
return super.end(context, span, cause);
}
};
}
如果您使用的是Spring Cloud Sleuth OTel,请注册一个类型为SpanExitter
的bean并更改跨度。您可以检查https://github.com/spring-projects-experimental/spring-cloud-sleuth-otel/blob/v1.1.0-M4/spring-cloud-sleuth-otel/src/main/java/org/springframework/cloud/sleuth/otel/bridge/ArrayListSpanProcessor.java以供参考。您需要覆盖您可以访问ReadWriteSpan
的onStart
方法。在那里,您可以在启动时修改所有跨度
或者 我还尝试在没有文件的情况下实现这一点,结果成功了。 如何添加带有文件的应用程序图标?
我一直在探索构建我的ColdFusion应用程序的不同方法,我正在寻找一些关于提供应用范围UDF的最佳方式的意见。 对于我的每一个应用程序,我通常都会使用一些不属于任何特定对象的额外功能。主要是数据操作。我希望这些功能在我的整个应用程序中都可用,既可以在CFM模板中使用,也可以在应用程序实例化的CFC中使用。 在我看来,有各种各样的方法来实现这一点,但它们都有自己的局限性: > 创建一个基本的Ut
我有一个java应用程序,需要部署在weblogic服务器中。我目前正在为该应用程序制作ear文件。我的ear文件中有一个ejb jar。我想将log4j2 jar添加到此应用程序中。所以我的文件夹结构是 目前,我已经将JAR放在APP-INF文件夹/lib和META-INF/application中。xml我把JAR放在了模块中。这是我的申请表。xml 但它不接受log4j罐子。有什么解决方案吗
我在写R代码,其中有一个向量“x”,它包含1到100的值,我想创建另一个向量“y”,它在每n个范围内子集一个值的范围。我确信我可以使用rep()和seq(),但我无法找到获得所需的代码。下面是输出应该是什么样子 所以如果我有一个向量x 有什么想法吗?
这与我的问题相反,在OpenDayLight中安装自定义功能或模块?。我希望使用Hello World应用程序并添加以下功能的: ODL-RestConf ODL-MDSal-APIDOCS ODL-openflowplugin-flow-services ODL-openflowplugin-app-table-miss-enforcer ODL-OpenFlowPlugin-NXM-Exten
问题内容: 有没有一种方法可以在外部设置标头? 登录用户后,我从服务器获取了Auth-Token,我需要将其作为HTTP标头添加到以下所有请求中。 问题答案: 似乎规范了键名。