java - @TImed 带有 extraTags 和 @PathVariable

标签 java spring annotations micrometer spring-micrometer

我有一个带注释的方法,如下所示:

@Timed(value="timed", extraTags={"account", Account.getById(@PathVariable("id")}
public Info getInfo(@PathVariable("id") String id) {
    return Info.getById(id);
}

上面的方法当然行不通。希望您能看到我正在尝试做的事情。在给定路径上的 id 的情况下,将帐户标记设置为 Account.getById() 返回的值的正确语法是什么?

最佳答案

我不相信您能够使用 @Timed 注释来完成您正在做的事情,但您可以手动为该方法计时并执行您想要的操作。这是一个例子:

.
.
.
@Autowired MeterRegistry meterRegistry;
.
.
.
public Info getInfo(@PathVariable("id") String id) {
    final Sample sample = Timer.start(meterRegistry);

    final Info info = Info.getById(id);

    sample.stop(Timer.builder("timed")
                     .tag("account", Account.getById(id)
                     .register(meterRegistry));
    return info;
}

关于java - @TImed 带有 extraTags 和 @PathVariable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55932486/

相关文章:

java - 如何在父 fragment Activity 的 viewpager 中的两个列表 fragment 之间进行通信

java - Android应用强制关闭错误

java - Shiro JdbcRealm 授权的表架构?

java - mongodb 中 "between"的查询语法 - 我正在使用 java

Swift MapKit - 向注释添加(额外)属性?

java - 扩展一个注解接口(interface)是不是毫无意义而且令人气馁?

java - Spring @RestController 不会生成 application/xml

java - Netty Camel 示例

java - Spring AOP 注释不起作用

如果不满足条件则忽略方法调用的 Java 注释