219.6. メトリクスタイプカウンター
metrics:counter:metricname[?options]
219.6.1. オプション
名前 | デフォルト | 説明 |
---|---|---|
increment | - | カウンターに追加する long 値 |
decrement | - | カウンターから減算する long 値 |
increment
も decrement
も定義されていない場合、カウンター値は 1 ずつ増加します。increment
と decrement
の両方が定義されている場合、インクリメント操作のみが呼び出されます。
// update counter simple.counter by 7 from("direct:in") .to("metric:counter:simple.counter?increment=7") .to("direct:out");
// increment counter simple.counter by 1 from("direct:in") .to("metric:counter:simple.counter") .to("direct:out");
// decrement counter simple.counter by 3 from("direct:in") .to("metric:counter:simple.counter?decrement=3") .to("direct:out");
219.6.2. ヘッダー
メッセージヘッダーを使用して、メトリクスコンポーネント URI で指定された increment
と decrement
値をオーバーライドできます。
名前 | 説明 | 想定されるタイプ |
---|---|---|
CamelMetricsCounterIncrement | URI のインクリメント値をオーバーライドする | Long |
CamelMetricsCounterDecrement | URI のデクリメント値をオーバーライドする | Long |
// update counter simple.counter by 417 from("direct:in") .setHeader(MetricsConstants.HEADER_COUNTER_INCREMENT, constant(417L)) .to("metric:counter:simple.counter?increment=7") .to("direct:out");
// updates counter using simple language to evaluate body.length from("direct:in") .setHeader(MetricsConstants.HEADER_COUNTER_INCREMENT, simple("${body.length}")) .to("metrics:counter:body.length") .to("mock:out");