From a0e3e11875c05302e4905d12e7278baa597f5822 Mon Sep 17 00:00:00 2001 From: Pasquale Congiusti Date: Mon, 25 May 2026 16:42:55 +0200 Subject: [PATCH] chore(starters): support telemetry include processors field Ref https://github.com/apache/camel/pull/23500 --- .../src/main/docs/micrometer-observability.json | 6 ++++++ .../MicrometerObservabilityAutoConfiguration.java | 3 +++ ...rometerObservabilityConfigurationProperties.java | 13 +++++++++++++ .../src/main/docs/opentelemetry2.json | 6 ++++++ .../starter/OpenTelemetry2AutoConfiguration.java | 3 +++ .../OpenTelemetry2ConfigurationProperties.java | 13 +++++++++++++ .../src/main/docs/telemetry-dev.json | 6 ++++++ .../starter/TelemetryDevAutoConfiguration.java | 3 +++ .../TelemetryDevConfigurationProperties.java | 13 +++++++++++++ 9 files changed, 66 insertions(+) diff --git a/components-starter/camel-micrometer-observability-starter/src/main/docs/micrometer-observability.json b/components-starter/camel-micrometer-observability-starter/src/main/docs/micrometer-observability.json index 4e88678a4f3..d37bbe0e529 100644 --- a/components-starter/camel-micrometer-observability-starter/src/main/docs/micrometer-observability.json +++ b/components-starter/camel-micrometer-observability-starter/src/main/docs/micrometer-observability.json @@ -20,6 +20,12 @@ "description": "Sets exclude pattern(s) that will disable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma.", "sourceType": "org.apache.camel.micrometer.observability.starter.MicrometerObservabilityConfigurationProperties" }, + { + "name": "camel.micrometer.observability.include-patterns", + "type": "java.lang.String", + "description": "Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma. All processors included by default if nothing is specified.", + "sourceType": "org.apache.camel.micrometer.observability.starter.MicrometerObservabilityConfigurationProperties" + }, { "name": "camel.micrometer.observability.trace-processors", "type": "java.lang.Boolean", diff --git a/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityAutoConfiguration.java b/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityAutoConfiguration.java index 47bbe15b6e6..45f86e764a7 100644 --- a/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityAutoConfiguration.java +++ b/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityAutoConfiguration.java @@ -56,6 +56,9 @@ MicrometerObservabilityTracer micrometerObservationTracer( if (config.getExcludePatterns() != null) { micrometerObservationTracer.setExcludePatterns(config.getExcludePatterns()); } + if (config.getIncludePatterns() != null) { + micrometerObservationTracer.setIncludePatterns(config.getIncludePatterns()); + } if (config.isTraceProcessors()) { micrometerObservationTracer.setTraceProcessors(config.isTraceProcessors());; } diff --git a/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityConfigurationProperties.java b/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityConfigurationProperties.java index 1c01d14db5a..eecb92ca76d 100644 --- a/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityConfigurationProperties.java +++ b/components-starter/camel-micrometer-observability-starter/src/main/java/org/apache/camel/micrometer/observability/starter/MicrometerObservabilityConfigurationProperties.java @@ -26,6 +26,11 @@ public class MicrometerObservabilityConfigurationProperties { * can be separated by comma. */ private String excludePatterns; + /** + * Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. + * Multiple patterns can be separated by comma. All processors included by default if nothing is specified. + */ + private String includePatterns; /** * Setting this to true will create new telemetry spans for each Camel custom Processors. Use the excludePattern * property to filter out Processors. @@ -44,6 +49,14 @@ public void setExcludePatterns(String excludePatterns) { this.excludePatterns = excludePatterns; } + public String getIncludePatterns() { + return includePatterns; + } + + public void setIncludePatterns(String includePatterns) { + this.includePatterns = includePatterns; + } + public boolean isTraceProcessors() { return traceProcessors; } diff --git a/components-starter/camel-opentelemetry2-starter/src/main/docs/opentelemetry2.json b/components-starter/camel-opentelemetry2-starter/src/main/docs/opentelemetry2.json index 2626b5999ad..d2b49b0bd35 100644 --- a/components-starter/camel-opentelemetry2-starter/src/main/docs/opentelemetry2.json +++ b/components-starter/camel-opentelemetry2-starter/src/main/docs/opentelemetry2.json @@ -20,6 +20,12 @@ "description": "Sets exclude pattern(s) that will disable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma.", "sourceType": "org.apache.camel.opentelemetry2.starter.OpenTelemetry2ConfigurationProperties" }, + { + "name": "camel.opentelemetry2.include-patterns", + "type": "java.lang.String", + "description": "Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma. All processors included by default if nothing is specified.", + "sourceType": "org.apache.camel.opentelemetry2.starter.OpenTelemetry2ConfigurationProperties" + }, { "name": "camel.opentelemetry2.trace-processors", "type": "java.lang.Boolean", diff --git a/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2AutoConfiguration.java b/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2AutoConfiguration.java index 7bb51dd3f5a..28f02f99436 100644 --- a/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2AutoConfiguration.java +++ b/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2AutoConfiguration.java @@ -38,6 +38,9 @@ OpenTelemetryTracer openTelemetryEventNotifier(CamelContext camelContext, if (config.getExcludePatterns() != null) { ottracer.setExcludePatterns(config.getExcludePatterns()); } + if (config.getIncludePatterns() != null) { + ottracer.setIncludePatterns(config.getIncludePatterns()); + } if (config.getTraceProcessors() != null ) { ottracer.setTraceProcessors(config.getTraceProcessors()); } diff --git a/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2ConfigurationProperties.java b/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2ConfigurationProperties.java index c367ca57d14..6f50fd6848b 100644 --- a/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2ConfigurationProperties.java +++ b/components-starter/camel-opentelemetry2-starter/src/main/java/org/apache/camel/opentelemetry2/starter/OpenTelemetry2ConfigurationProperties.java @@ -26,6 +26,11 @@ public class OpenTelemetry2ConfigurationProperties { * can be separated by comma. */ private String excludePatterns; + /** + * Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. + * Multiple patterns can be separated by comma. All processors included by default if nothing is specified. + */ + private String includePatterns; /** * Setting this to true will create new telemetry spans for each Camel custom Processors. Use the excludePattern * property to filter out Processors. @@ -59,4 +64,12 @@ public String getExcludePatterns() { public void setExcludePatterns(String excludePatterns) { this.excludePatterns = excludePatterns; } + + public String getIncludePatterns() { + return includePatterns; + } + + public void setIncludePatterns(String includePatterns) { + this.includePatterns = includePatterns; + } } diff --git a/components-starter/camel-telemetry-dev-starter/src/main/docs/telemetry-dev.json b/components-starter/camel-telemetry-dev-starter/src/main/docs/telemetry-dev.json index a60cfbe5e0d..70b62bbc4b3 100644 --- a/components-starter/camel-telemetry-dev-starter/src/main/docs/telemetry-dev.json +++ b/components-starter/camel-telemetry-dev-starter/src/main/docs/telemetry-dev.json @@ -27,6 +27,12 @@ "description": "Sets exclude pattern(s) that will disable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma.", "sourceType": "org.apache.camel.telemetrydev.starter.TelemetryDevConfigurationProperties" }, + { + "name": "camel.telemetrydev.include-patterns", + "type": "java.lang.String", + "description": "Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. Multiple patterns can be separated by comma. All processors included by default if nothing is specified.", + "sourceType": "org.apache.camel.telemetrydev.starter.TelemetryDevConfigurationProperties" + }, { "name": "camel.telemetrydev.trace-format", "type": "java.lang.String", diff --git a/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevAutoConfiguration.java b/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevAutoConfiguration.java index 10230d3f1e0..84ffe0353ca 100644 --- a/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevAutoConfiguration.java +++ b/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevAutoConfiguration.java @@ -39,6 +39,9 @@ TelemetryDevTracer openTelemetryEventNotifier(CamelContext camelContext, if (config.getExcludePatterns() != null) { devTracer.setExcludePatterns(config.getExcludePatterns()); } + if (config.getIncludePatterns() != null) { + devTracer.setIncludePatterns(config.getIncludePatterns()); + } if (config.getTraceProcessors() != null && config.getTraceProcessors()) { devTracer.setTraceProcessors(config.getTraceProcessors()); } diff --git a/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevConfigurationProperties.java b/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevConfigurationProperties.java index a62f9f254e7..1d043671e7d 100644 --- a/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevConfigurationProperties.java +++ b/components-starter/camel-telemetry-dev-starter/src/main/java/org/apache/camel/telemetrydev/starter/TelemetryDevConfigurationProperties.java @@ -30,6 +30,11 @@ public class TelemetryDevConfigurationProperties { * can be separated by comma. */ private String excludePatterns; + /** + * Sets include pattern(s) that will explicitly enable tracing for Camel processors that matches the pattern. + * Multiple patterns can be separated by comma. All processors included by default if nothing is specified. + */ + private String includePatterns; /** * Setting this to true will create new telemetry spans for each Camel custom Processors. Use the excludePattern * property to filter out Processors. @@ -76,6 +81,14 @@ public void setExcludePatterns(String excludePatterns) { this.excludePatterns = excludePatterns; } + public String getIncludePatterns() { + return includePatterns; + } + + public void setIncludePatterns(String includePatterns) { + this.includePatterns = includePatterns; + } + public String getTraceFormat() { return traceFormat; }