220.10. Metrics 类型计时器
metrics:timer:metricname[?options]
metrics:timer:metricname[?options]
220.10.1. 选项 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
| 名称 | default | 描述 |
|---|---|---|
| action | - | 启动或停止 |
如果没有提供 操作 或无效值,则会在没有任何计时器更新的情况下记录警告。如果在已在运行的计时器上调用 action start,则不会运行计时器,则不会更新任何内容并记录警告。
// measure time taken by route "calculate"
from("direct:in")
.to("metrics:timer:simple.timer?action=start")
.to("direct:calculate")
.to("metrics:timer:simple.timer?action=stop");
// measure time taken by route "calculate"
from("direct:in")
.to("metrics:timer:simple.timer?action=start")
.to("direct:calculate")
.to("metrics:timer:simple.timer?action=stop");
TimerContext 对象作为不同指标组件调用之间的 Exchange 属性保存。
220.10.2. Headers 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
消息标头可用于覆盖指标组件 URI 中指定的操作值。
| 名称 | 描述 | 预期类型 |
|---|---|---|
| CamelMetricsTimerAction | 覆盖 URI 中的计时器操作 |
|
// sets timer action using header
from("direct:in")
.setHeader(MetricsConstants.HEADER_TIMER_ACTION, TimerAction.start)
.to("metrics:timer:simple.timer")
.to("direct:out");
// sets timer action using header
from("direct:in")
.setHeader(MetricsConstants.HEADER_TIMER_ACTION, TimerAction.start)
.to("metrics:timer:simple.timer")
.to("direct:out");