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:09 UTC

[camel] 09/18: CAMEL-17792: Add doc about the message headers of camel-microprofile-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 c35f70af5e5939efa3cbbcab55d366ac64b252c8
Author: Nicolas Filotto <nf...@talend.com>
AuthorDate: Thu Mar 31 12:22:50 2022 +0200

    CAMEL-17792: Add doc about the message headers of camel-microprofile-metrics
---
 .../microprofile/metrics/microprofile-metrics.json        | 15 +++++++++++++++
 .../src/main/docs/microprofile-metrics-component.adoc     |  3 +++
 .../metrics/MicroProfileMetricsConstants.java             | 15 +++++++++++++++
 .../microprofile/metrics/MicroProfileMetricsEndpoint.java |  3 ++-
 4 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/components/camel-microprofile/camel-microprofile-metrics/src/generated/resources/org/apache/camel/component/microprofile/metrics/microprofile-metrics.json b/components/camel-microprofile/camel-microprofile-metrics/src/generated/resources/org/apache/camel/component/microprofile/metrics/microprofile-metrics.json
index 282fc7c..97c0ce7 100644
--- a/components/camel-microprofile/camel-microprofile-metrics/src/generated/resources/org/apache/camel/component/microprofile/metrics/microprofile-metrics.json
+++ b/components/camel-microprofile/camel-microprofile-metrics/src/generated/resources/org/apache/camel/component/microprofile/metrics/microprofile-metrics.json
@@ -26,6 +26,21 @@
     "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": "org.eclipse.microprofile.metrics.MetricRegistry", "deprecated": false, "autowired": false, "secret": false, "description": "Use a custom MetricRegistry." }
   },
+  "headers": {
+    "CamelMicroProfileMetricsCounterIncrement": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override increment value in URI" },
+    "CamelMicroProfileMetricsGaugeIncrement": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override gaugeIncrement value from the URI" },
+    "CamelMicroProfileMetricsGaugeDecrement": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override gaugeDecrement value from the URI" },
+    "CamelMicroProfileMetricsGaugeValue": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Number", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override gaugeValue value from the URI" },
+    "CamelMicroProfileMetricsHistogramValue": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override histogram value from the URI" },
+    "CamelMicroProfileMetricsMeterMark": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override meter mark value from the URI" },
+    "CamelMicroProfileMetricsDescription": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The description within the metric metadata" },
+    "CamelMicroProfileMetricsDisplayName": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The display name within the metric metadata" },
+    "CamelMicroProfileMetricsName": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The name of the metric" },
+    "CamelMicroProfileMetricsTags": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The tags of the metric" },
+    "CamelMicroProfileMetricsType": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.eclipse.microprofile.metrics.MetricType", "enum": [ "concurrent gauge", "counter", "gauge", "meter", "histogram", "timer", "simple timer", "invalid" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The type of the metric" },
+    "CamelMicroProfileMetricsUnits": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metric unit within the metric metadata" },
+    "CamelMicroProfileMetricsTimerAction": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.apache.camel.component.microprofile.metrics.TimerAction", "enum": [ "START", "STOP" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Override time action from the URI" }
+  },
   "properties": {
     "metricType": { "kind": "path", "displayName": "Metric Type", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.eclipse.microprofile.metrics.MetricType", "enum": [ "concurrent gauge", "counter", "gauge", "meter", "histogram", "timer", "simple timer", "invalid" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Metric type" },
     "metricName": { "kind": "path", "displayName": "Metric Name", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Metric name" },
diff --git a/components/camel-microprofile/camel-microprofile-metrics/src/main/docs/microprofile-metrics-component.adoc b/components/camel-microprofile/camel-microprofile-metrics/src/main/docs/microprofile-metrics-component.adoc
index 1d0da27..864a17b 100644
--- a/components/camel-microprofile/camel-microprofile-metrics/src/main/docs/microprofile-metrics-component.adoc
+++ b/components/camel-microprofile/camel-microprofile-metrics/src/main/docs/microprofile-metrics-component.adoc
@@ -47,6 +47,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
 
 == MetricRegistry Configuration
 
diff --git a/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsConstants.java b/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsConstants.java
index 5262a67..09ecaf4 100644
--- a/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsConstants.java
+++ b/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsConstants.java
@@ -17,23 +17,38 @@
 package org.apache.camel.component.microprofile.metrics;
 
 import org.apache.camel.ServiceStatus;
+import org.apache.camel.spi.Metadata;
 
 public final class MicroProfileMetricsConstants {
 
     public static final String HEADER_PREFIX = "CamelMicroProfileMetrics";
 
+    @Metadata(description = "Override increment value in URI", javaType = "long")
     public static final String HEADER_COUNTER_INCREMENT = HEADER_PREFIX + "CounterIncrement";
+    @Metadata(description = "Override gaugeIncrement value from the URI", javaType = "Boolean")
     public static final String HEADER_GAUGE_INCREMENT = HEADER_PREFIX + "GaugeIncrement";
+    @Metadata(description = "Override gaugeDecrement value from the URI", javaType = "Boolean")
     public static final String HEADER_GAUGE_DECREMENT = HEADER_PREFIX + "GaugeDecrement";
+    @Metadata(description = "Override gaugeValue value from the URI", javaType = "Number")
     public static final String HEADER_GAUGE_VALUE = HEADER_PREFIX + "GaugeValue";
+    @Metadata(description = "Override histogram value from the URI", javaType = "Long")
     public static final String HEADER_HISTOGRAM_VALUE = HEADER_PREFIX + "HistogramValue";
+    @Metadata(description = "Override meter mark value from the URI", javaType = "Long")
     public static final String HEADER_METER_MARK = HEADER_PREFIX + "MeterMark";
+    @Metadata(description = "The description within the metric metadata", javaType = "String")
     public static final String HEADER_METRIC_DESCRIPTION = HEADER_PREFIX + "Description";
+    @Metadata(description = "The display name within the metric metadata", javaType = "String")
     public static final String HEADER_METRIC_DISPLAY_NAME = HEADER_PREFIX + "DisplayName";
+    @Metadata(description = "The name of the metric", javaType = "String")
     public static final String HEADER_METRIC_NAME = HEADER_PREFIX + "Name";
+    @Metadata(description = "The tags of the metric", javaType = "String")
     public static final String HEADER_METRIC_TAGS = HEADER_PREFIX + "Tags";
+    @Metadata(description = "The type of the metric", javaType = "org.eclipse.microprofile.metrics.MetricType")
     public static final String HEADER_METRIC_TYPE = HEADER_PREFIX + "Type";
+    @Metadata(description = "The metric unit within the metric metadata", javaType = "String")
     public static final String HEADER_METRIC_UNIT = HEADER_PREFIX + "Units";
+    @Metadata(description = "Override time action from the URI",
+              javaType = "org.apache.camel.component.microprofile.metrics.TimerAction")
     public static final String HEADER_TIMER_ACTION = HEADER_PREFIX + "TimerAction";
 
     public static final String CAMEL_METRIC_PREFIX = "camel";
diff --git a/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsEndpoint.java b/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsEndpoint.java
index b233145..2025abc 100644
--- a/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsEndpoint.java
+++ b/components/camel-microprofile/camel-microprofile-metrics/src/main/java/org/apache/camel/component/microprofile/metrics/MicroProfileMetricsEndpoint.java
@@ -33,7 +33,8 @@ import org.eclipse.microprofile.metrics.MetricType;
  * Expose metrics from Camel routes.
  */
 @UriEndpoint(firstVersion = "3.0.0", scheme = "microprofile-metrics", title = "MicroProfile Metrics",
-             syntax = "microprofile-metrics:metricType:metricName", producerOnly = true, category = { Category.MONITORING })
+             syntax = "microprofile-metrics:metricType:metricName", producerOnly = true, category = { Category.MONITORING },
+             headersClass = MicroProfileMetricsConstants.class)
 public class MicroProfileMetricsEndpoint extends DefaultEndpoint {
 
     protected final MetricRegistry metricRegistry;