221.6. 使用制作者
每个计量具有类型和名称。支持的类型有 计数器、分发摘要和 计时器。如果没有提供类型,则默认使用计数器。
计量名称是一个字符串,被评估为 Simple 表达式。除了使用 CamelMetricsName 标头(请参阅以下),这还允许根据交换数据选择量表。
可选的 tags URI 参数是一个用逗号分开的字符串,由 key=value 表达式组成。 都是同时被评估为 键和值 简单表达式的字符串。例如,URI 参数 tags=X=${header.Y} 会将标头 Y 的当前值分配给键 X。
221.6.1. Headers 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
URI 中定义的计量名称可以通过填充名为 CamelMetricsName 的标头来覆盖。定义为 URI 参数的计量标签可以通过填充名为 CamelMetricsTags 的标头来增强。
例如:
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 端点完成处理交换后,所有特定于 Metrics 的标头都会从消息中删除。在处理交换 Micrometer 端点时,会用级别 warn 捕获所有异常和写入日志条目。