You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2020/07/16 12:55:07 UTC

[camel] 02/07: opentracing: adds baggage ops

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

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 813ddd581da4a2e8ac23b04e14fac604d24defad
Author: Jose Montoya <ja...@protonmail.com>
AuthorDate: Mon Jun 22 16:27:25 2020 -0500

    opentracing: adds baggage ops
---
 ...{TagProcessor.java => GetBaggageProcessor.java} | 37 +++++++++++-----------
 ...{TagProcessor.java => SetBaggageProcessor.java} | 25 +++++++--------
 .../org/apache/camel/opentracing/TagProcessor.java | 11 +++----
 3 files changed, 35 insertions(+), 38 deletions(-)

diff --git a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/GetBaggageProcessor.java
similarity index 62%
copy from components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
copy to components/camel-opentracing/src/main/java/org/apache/camel/opentracing/GetBaggageProcessor.java
index 4313671..51c292b 100644
--- a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
+++ b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/GetBaggageProcessor.java
@@ -13,22 +13,22 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * A processor which adds a tag on the active {@link io.opentracing.Span} with an {@link org.apache.camel.Expression}
+ * A processor which gets a baggage item from the active {@link Span} and sets it as a Header
  */
-public class TagProcessor extends AsyncProcessorSupport implements Traceable, IdAware, RouteIdAware {
+public class GetBaggageProcessor extends AsyncProcessorSupport implements Traceable, IdAware, RouteIdAware {
 
-    private static final Logger LOG = LoggerFactory.getLogger(TagProcessor.class);
+    private static final Logger LOG = LoggerFactory.getLogger(GetBaggageProcessor.class);
 
     private String id;
     private String routeId;
-    private final Expression tagName;
-    private final Expression expression;
-
-    public TagProcessor(Expression tagName, Expression expression) {
-        this.tagName = tagName;
-        this.expression = expression;
-        ObjectHelper.notNull(tagName, "headerName");
-        ObjectHelper.notNull(expression, "expression");
+    private final String headerName;
+    private final String baggageName;
+
+    public GetBaggageProcessor(String baggageName, String headerName) {
+        this.baggageName = baggageName;
+        this.headerName = headerName;
+        ObjectHelper.notNull(baggageName, "baggageName");
+        ObjectHelper.notNull(headerName, "headerName");
     }
 
     @Override
@@ -36,9 +36,8 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
         try {
             Span span = ActiveSpanManager.getSpan(exchange);
             if (span != null) {
-                String key = tagName.evaluate(exchange, String.class);
-                String tag = expression.evaluate(exchange, String.class);
-                span.setTag(key, tag);
+                String item = span.getBaggageItem(baggageName);
+                exchange.getMessage().setHeader(headerName, item);
             } else {
                 LOG.warn("OpenTracing: could not find managed span for exchange={}", exchange);
             }
@@ -59,7 +58,7 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
 
     @Override
     public String getTraceLabel() {
-        return "tag[" + tagName + ", " + expression + "]";
+        return "getBaggage[" + baggageName + ", " + headerName + "]";
     }
 
     @Override
@@ -82,12 +81,12 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
         this.routeId = routeId;
     }
 
-    public String getTagName() {
-        return tagName.toString();
+    public String getBaggageName() {
+        return baggageName;
     }
 
-    public Expression getExpression() {
-        return expression;
+    public String getHeaderName() {
+        return headerName;
     }
 
     @Override
diff --git a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/SetBaggageProcessor.java
similarity index 69%
copy from components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
copy to components/camel-opentracing/src/main/java/org/apache/camel/opentracing/SetBaggageProcessor.java
index 4313671..c613521 100644
--- a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
+++ b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/SetBaggageProcessor.java
@@ -13,21 +13,21 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * A processor which adds a tag on the active {@link io.opentracing.Span} with an {@link org.apache.camel.Expression}
+ * A processor which adds a baggage item on the active {@link Span} with an {@link Expression}
  */
-public class TagProcessor extends AsyncProcessorSupport implements Traceable, IdAware, RouteIdAware {
+public class SetBaggageProcessor extends AsyncProcessorSupport implements Traceable, IdAware, RouteIdAware {
 
-    private static final Logger LOG = LoggerFactory.getLogger(TagProcessor.class);
+    private static final Logger LOG = LoggerFactory.getLogger(SetBaggageProcessor.class);
 
     private String id;
     private String routeId;
-    private final Expression tagName;
+    private final String baggageName;
     private final Expression expression;
 
-    public TagProcessor(Expression tagName, Expression expression) {
-        this.tagName = tagName;
+    public SetBaggageProcessor(String baggageName, Expression expression) {
+        this.baggageName = baggageName;
         this.expression = expression;
-        ObjectHelper.notNull(tagName, "headerName");
+        ObjectHelper.notNull(baggageName, "baggageName");
         ObjectHelper.notNull(expression, "expression");
     }
 
@@ -36,9 +36,8 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
         try {
             Span span = ActiveSpanManager.getSpan(exchange);
             if (span != null) {
-                String key = tagName.evaluate(exchange, String.class);
-                String tag = expression.evaluate(exchange, String.class);
-                span.setTag(key, tag);
+                String item = expression.evaluate(exchange, String.class);
+                span.setBaggageItem(baggageName, item);
             } else {
                 LOG.warn("OpenTracing: could not find managed span for exchange={}", exchange);
             }
@@ -59,7 +58,7 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
 
     @Override
     public String getTraceLabel() {
-        return "tag[" + tagName + ", " + expression + "]";
+        return "setBaggage[" + baggageName + ", " + expression + "]";
     }
 
     @Override
@@ -82,8 +81,8 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
         this.routeId = routeId;
     }
 
-    public String getTagName() {
-        return tagName.toString();
+    public String getBaggageName() {
+        return baggageName.toString();
     }
 
     public Expression getExpression() {
diff --git a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
index 4313671..d5490d6 100644
--- a/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
+++ b/components/camel-opentracing/src/main/java/org/apache/camel/opentracing/TagProcessor.java
@@ -21,13 +21,13 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
 
     private String id;
     private String routeId;
-    private final Expression tagName;
+    private final String tagName;
     private final Expression expression;
 
-    public TagProcessor(Expression tagName, Expression expression) {
+    public TagProcessor(String tagName, Expression expression) {
         this.tagName = tagName;
         this.expression = expression;
-        ObjectHelper.notNull(tagName, "headerName");
+        ObjectHelper.notNull(tagName, "tagName");
         ObjectHelper.notNull(expression, "expression");
     }
 
@@ -36,9 +36,8 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
         try {
             Span span = ActiveSpanManager.getSpan(exchange);
             if (span != null) {
-                String key = tagName.evaluate(exchange, String.class);
                 String tag = expression.evaluate(exchange, String.class);
-                span.setTag(key, tag);
+                span.setTag(tagName, tag);
             } else {
                 LOG.warn("OpenTracing: could not find managed span for exchange={}", exchange);
             }
@@ -83,7 +82,7 @@ public class TagProcessor extends AsyncProcessorSupport implements Traceable, Id
     }
 
     public String getTagName() {
-        return tagName.toString();
+        return tagName;
     }
 
     public Expression getExpression() {