220.6. 制作者使用
每个计量都有类型和名称。支持的类型包括 计数器、分发概述 和 计时器。如果没有提供类型,则默认使用计数器。
计量名称是一个字符串,作为 简单
表达式评估。除了使用 CamelMetricsName
标头(请参阅以下)外,这还允许根据交换数据选择计量。
可选的 tags
URI 参数是一个用逗号分开的字符串,由 key=value
表达式组成。key
和 value
都是也会以 简单
表达式评估的字符串。例如,URI 参数 tags=X=${header.Y}
会将标题 Y
的当前值分配给键 X
。
220.6.1. Headers 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
通过填充名为 CamelMetricsName
的标头,可以覆盖 URI 中定义的计量名称。通过填充名为 CamelMetricsTags
的标头,可以增强定义为 URI 参数的计量标签。
例如:
from("direct:in") .setHeader(MicrometerConstants.HEADER_METRIC_NAME, constant("new.name")) .setHeader(MicrometerConstants.HEADER_METRIC_TAGS, constant(Tags.of("dynamic-key", "dynamic-value"))) .to("metrics:counter:name.not.used?tags=key=value") .to("direct:out");
from("direct:in")
.setHeader(MicrometerConstants.HEADER_METRIC_NAME, constant("new.name"))
.setHeader(MicrometerConstants.HEADER_METRIC_TAGS, constant(Tags.of("dynamic-key", "dynamic-value")))
.to("metrics:counter:name.not.used?tags=key=value")
.to("direct:out");
将更新一个带有名称 new.name
而不是 name.not. used
计数器,该标签 dynamic-
还带有 key
值 dynamic-
value
(值 为 )。
在 Micrometer 端点完成交换处理后,所有指标特定的标头都会从消息中删除。在处理 Micrometer 端点时,使用级别 warn
捕获所有例外和写入日志条目。