This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch CAMEL-17792/doc-message-headers
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 66e7f994104b8dca24912bc55df575e6f4202a20
Author: Nicolas Filotto <[email protected]>
AuthorDate: Thu Mar 31 12:03:20 2022 +0200

    CAMEL-17792: Add doc about the message headers of camel-micrometer
---
 .../org/apache/camel/component/micrometer/micrometer.json         | 8 ++++++++
 .../camel-micrometer/src/main/docs/micrometer-component.adoc      | 4 +++-
 .../apache/camel/component/micrometer/MicrometerConstants.java    | 8 ++++++++
 .../org/apache/camel/component/micrometer/MicrometerEndpoint.java | 3 ++-
 4 files changed, 21 insertions(+), 2 deletions(-)

diff --git 
a/components/camel-micrometer/src/generated/resources/org/apache/camel/component/micrometer/micrometer.json
 
b/components/camel-micrometer/src/generated/resources/org/apache/camel/component/micrometer/micrometer.json
index 2919d24..d66ecb9 100644
--- 
a/components/camel-micrometer/src/generated/resources/org/apache/camel/component/micrometer/micrometer.json
+++ 
b/components/camel-micrometer/src/generated/resources/org/apache/camel/component/micrometer/micrometer.json
@@ -26,6 +26,14 @@
     "autowiredEnabled": { "kind": "property", "displayName": "Autowired 
Enabled", "group": "advanced", "label": "advanced", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether autowiring is 
enabled. This is used for automatic autowiring options (the option must be 
marked as autowired) by looking up in the registry to find if there is a single 
instance of matching type, which t [...]
     "metricsRegistry": { "kind": "property", "displayName": "Metrics 
Registry", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "io.micrometer.core.instrument.MeterRegistry", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom configured MetricRegistry." }
   },
+  "headers": {
+    "CamelMetricsTimerAction": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": 
"org.apache.camel.component.micrometer.MicrometerTimerAction", "enum": [ 
"start", "stop" ], "deprecated": false, "deprecationNote": "", "autowired": 
false, "secret": false, "description": "Override timer action in URI" },
+    "CamelMetricsHistogramValue": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "long", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "Override histogram value in URI" },
+    "CamelMetricsCounterDecrement": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "Double", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "Override decrement value in URI" },
+    "CamelMetricsCounterIncrement": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "Double", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "Override increment value in URI" },
+    "CamelMetricsName": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": "String", "deprecated": 
false, "deprecationNote": "", "autowired": false, "secret": false, 
"description": "Override name value in URI" },
+    "CamelMetricsTags": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": 
"java.lang.Iterable<Tag>", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "description": "To augment meter tags 
defined as URI parameters" }
+  },
   "properties": {
     "metricsType": { "kind": "path", "displayName": "Metrics Type", "group": 
"producer", "label": "", "required": true, "type": "object", "javaType": 
"io.micrometer.core.instrument.Meter.Type", "enum": [ "counter", 
"distribution_summary", "timer" ], "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "description": "Type of metrics" },
     "metricsName": { "kind": "path", "displayName": "Metrics Name", "group": 
"producer", "label": "", "required": true, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": 
false, "secret": false, "description": "Name of metrics" },
diff --git 
a/components/camel-micrometer/src/main/docs/micrometer-component.adoc 
b/components/camel-micrometer/src/main/docs/micrometer-component.adoc
index 2233513..1f94075 100644
--- a/components/camel-micrometer/src/main/docs/micrometer-component.adoc
+++ b/components/camel-micrometer/src/main/docs/micrometer-component.adoc
@@ -59,7 +59,9 @@ include::partial$component-endpoint-options.adoc[]
 // endpoint options: START
 
 // endpoint options: END
-
+// component headers: START
+include::partial$component-endpoint-headers.adoc[]
+// component headers: END
 
 [[MicrometerComponent-registry]]
 == Meter Registry
diff --git 
a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerConstants.java
 
b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerConstants.java
index 2494b14..175db43 100644
--- 
a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerConstants.java
+++ 
b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerConstants.java
@@ -19,15 +19,23 @@ package org.apache.camel.component.micrometer;
 import java.util.function.Predicate;
 
 import io.micrometer.core.instrument.Meter;
+import org.apache.camel.spi.Metadata;
 
 public final class MicrometerConstants {
 
     public static final String HEADER_PREFIX = "CamelMetrics";
+    @Metadata(description = "Override timer action in URI",
+              javaType = 
"org.apache.camel.component.micrometer.MicrometerTimerAction")
     public static final String HEADER_TIMER_ACTION = HEADER_PREFIX + 
"TimerAction";
+    @Metadata(description = "Override histogram value in URI", javaType = 
"long")
     public static final String HEADER_HISTOGRAM_VALUE = HEADER_PREFIX + 
"HistogramValue";
+    @Metadata(description = "Override decrement value in URI", javaType = 
"Double")
     public static final String HEADER_COUNTER_DECREMENT = HEADER_PREFIX + 
"CounterDecrement";
+    @Metadata(description = "Override increment value in URI", javaType = 
"Double")
     public static final String HEADER_COUNTER_INCREMENT = HEADER_PREFIX + 
"CounterIncrement";
+    @Metadata(description = "Override name value in URI", javaType = "String")
     public static final String HEADER_METRIC_NAME = HEADER_PREFIX + "Name";
+    @Metadata(description = "To augment meter tags defined as URI parameters", 
javaType = "java.lang.Iterable<Tag>")
     public static final String HEADER_METRIC_TAGS = HEADER_PREFIX + "Tags";
 
     public static final String DEFAULT_CAMEL_MESSAGE_HISTORY_METER_NAME = 
"CamelMessageHistory";
diff --git 
a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerEndpoint.java
 
b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerEndpoint.java
index 5bec25e..f459a2c 100644
--- 
a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerEndpoint.java
+++ 
b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/MicrometerEndpoint.java
@@ -35,7 +35,8 @@ import org.apache.camel.support.DefaultEndpoint;
  * Collect various metrics directly from Camel routes using the Micrometer 
library.
  */
 @UriEndpoint(firstVersion = "2.22.0", scheme = "micrometer", title = 
"Micrometer",
-             syntax = "micrometer:metricsType:metricsName", producerOnly = 
true, category = { Category.MONITORING })
+             syntax = "micrometer:metricsType:metricsName", producerOnly = 
true, category = { Category.MONITORING },
+             headersClass = MicrometerConstants.class)
 public class MicrometerEndpoint extends DefaultEndpoint {
 
     protected MeterRegistry registry;

Reply via email to