You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2022/04/01 09:14:07 UTC

[camel] 07/18: CAMEL-17792: Add doc about the message headers of camel-metrics

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 effbfde3d0639877f7bba1198dc78afb8433b614
Author: Nicolas Filotto <nf...@talend.com>
AuthorDate: Thu Mar 31 11:51:23 2022 +0200

    CAMEL-17792: Add doc about the message headers of camel-metrics
---
 .../resources/org/apache/camel/component/metrics/metrics.json    | 9 +++++++++
 components/camel-metrics/src/main/docs/metrics-component.adoc    | 6 ++++--
 .../org/apache/camel/component/metrics/MetricsConstants.java     | 9 +++++++++
 .../java/org/apache/camel/component/metrics/MetricsEndpoint.java | 2 +-
 4 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/components/camel-metrics/src/generated/resources/org/apache/camel/component/metrics/metrics.json b/components/camel-metrics/src/generated/resources/org/apache/camel/component/metrics/metrics.json
index 90fbb89..273b25f 100644
--- a/components/camel-metrics/src/generated/resources/org/apache/camel/component/metrics/metrics.json
+++ b/components/camel-metrics/src/generated/resources/org/apache/camel/component/metrics/metrics.json
@@ -26,6 +26,15 @@
     "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 [...]
     "metricRegistry": { "kind": "property", "displayName": "Metric Registry", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "com.codahale.metrics.MetricRegistry", "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.metrics.MetricsTimerAction", "enum": [ "start", "stop" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override timer action in URI" },
+    "CamelMetricsMeterMark": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override mark value 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": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override decrement value in URI" },
+    "CamelMetricsCounterIncrement": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override increment value in URI" },
+    "CamelMetricsGaugeSubject": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Object", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override subject 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" }
+  },
   "properties": {
     "metricsType": { "kind": "path", "displayName": "Metrics Type", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.apache.camel.component.metrics.MetricsType", "enum": [ "gauge", "counter", "histogram", "meter", "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-metrics/src/main/docs/metrics-component.adoc b/components/camel-metrics/src/main/docs/metrics-component.adoc
index 48f3b2a..b817449 100644
--- a/components/camel-metrics/src/main/docs/metrics-component.adoc
+++ b/components/camel-metrics/src/main/docs/metrics-component.adoc
@@ -54,7 +54,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
 
 [[MetricsComponent-registry]]
 == Metric Registry
@@ -235,7 +237,7 @@ metrics:histogram:metricname[?options]
 |value |- |Value to use in histogram
 |===================================
 
-If `value` is not set nothing is added to histogram and warning is
+If `value` is not set, nothing is added to histogram and warning is
 logged.
 
 [source,java]
diff --git a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsConstants.java b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsConstants.java
index 6e33898..ff86314 100644
--- a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsConstants.java
+++ b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsConstants.java
@@ -16,15 +16,24 @@
  */
 package org.apache.camel.component.metrics;
 
+import org.apache.camel.spi.Metadata;
+
 public final class MetricsConstants {
 
     public static final String HEADER_PREFIX = "CamelMetrics";
+    @Metadata(description = "Override timer action in URI", javaType = "org.apache.camel.component.metrics.MetricsTimerAction")
     public static final String HEADER_TIMER_ACTION = HEADER_PREFIX + "TimerAction";
+    @Metadata(description = "Override mark value in URI", javaType = "long")
     public static final String HEADER_METER_MARK = HEADER_PREFIX + "MeterMark";
+    @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 = "long")
     public static final String HEADER_COUNTER_DECREMENT = HEADER_PREFIX + "CounterDecrement";
+    @Metadata(description = "Override increment value in URI", javaType = "long")
     public static final String HEADER_COUNTER_INCREMENT = HEADER_PREFIX + "CounterIncrement";
+    @Metadata(description = "Override subject value in URI", javaType = "Object")
     public static final String HEADER_GAUGE_SUBJECT = HEADER_PREFIX + "GaugeSubject";
+    @Metadata(description = "Override name value in URI", javaType = "String")
     public static final String HEADER_METRIC_NAME = HEADER_PREFIX + "Name";
 
     private MetricsConstants() {
diff --git a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsEndpoint.java b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsEndpoint.java
index 0f5c5cf..9e69143 100644
--- a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsEndpoint.java
+++ b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/MetricsEndpoint.java
@@ -33,7 +33,7 @@ import org.apache.camel.support.DefaultEndpoint;
  * Collect various metrics directly from Camel routes using the DropWizard metrics library.
  */
 @UriEndpoint(firstVersion = "2.14.0", scheme = "metrics", title = "Metrics", syntax = "metrics:metricsType:metricsName",
-             producerOnly = true, category = { Category.MONITORING })
+             producerOnly = true, category = { Category.MONITORING }, headersClass = MetricsConstants.class)
 public class MetricsEndpoint extends DefaultEndpoint {
 
     protected final MetricRegistry registry;