This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 706ea8d28fa CAMEL-20824: camel-core - Backlog tracer should include
internal exchange properties
706ea8d28fa is described below
commit 706ea8d28faea3ffe9ef81faa658a6ac7a56219d
Author: Claus Ibsen <[email protected]>
AuthorDate: Sat Jun 1 10:21:02 2024 +0200
CAMEL-20824: camel-core - Backlog tracer should include internal exchange
properties
---
.../camel/management/BacklogTracerFilterTest.java | 9 ++++++++
.../management/BacklogTracerIdOnAllNodesTest.java | 6 ++++++
.../camel/management/BacklogTracerPatternTest.java | 6 ++++++
.../management/BacklogTracerStreamCachingTest.java | 3 +++
.../apache/camel/management/BacklogTracerTest.java | 24 ++++++++++++++++++++++
.../org/apache/camel/support/MessageHelper.java | 4 ++--
6 files changed, 50 insertions(+), 2 deletions(-)
diff --git
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerFilterTest.java
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerFilterTest.java
index dab4fee68ff..3a89d53ff63 100644
---
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerFilterTest.java
+++
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerFilterTest.java
@@ -77,6 +77,9 @@ public class BacklogTracerFilterTest extends
ManagementTestSupport {
assertNull(event.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <headers>\n"
+ " <header key=\"foo\"
type=\"java.lang.Integer\">123</header>\n"
+ " </headers>\n"
@@ -88,6 +91,9 @@ public class BacklogTracerFilterTest extends
ManagementTestSupport {
assertEquals("foo", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <headers>\n"
+ " <header key=\"foo\"
type=\"java.lang.Integer\">123</header>\n"
+ " </headers>\n"
@@ -99,6 +105,9 @@ public class BacklogTracerFilterTest extends
ManagementTestSupport {
assertEquals("bar", event2.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">mock://foo</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <headers>\n"
+ " <header key=\"foo\"
type=\"java.lang.Integer\">123</header>\n"
+ " </headers>\n"
diff --git
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerIdOnAllNodesTest.java
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerIdOnAllNodesTest.java
index 95d265b036c..409508088cc 100644
---
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerIdOnAllNodesTest.java
+++
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerIdOnAllNodesTest.java
@@ -114,6 +114,9 @@ public class BacklogTracerIdOnAllNodesTest extends
ManagementTestSupport {
assertEquals(to2.getId(), event1.getToNode());
assertEquals(" <message exchangeId=\"" +
fooExchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event1.getMessageAsXml());
@@ -128,6 +131,9 @@ public class BacklogTracerIdOnAllNodesTest extends
ManagementTestSupport {
assertEquals("camel", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
camelExchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
Camel</body>\n"
+ " </message>",
event1.getMessageAsXml());
diff --git
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerPatternTest.java
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerPatternTest.java
index 77bbe114bc9..43c1761de25 100644
---
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerPatternTest.java
+++
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerPatternTest.java
@@ -76,6 +76,9 @@ public class BacklogTracerPatternTest extends
ManagementTestSupport {
assertEquals("foo", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event1.getMessageAsXml());
@@ -84,6 +87,9 @@ public class BacklogTracerPatternTest extends
ManagementTestSupport {
assertEquals("foo", event2.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Bye
World</body>\n"
+ " </message>",
event2.getMessageAsXml());
diff --git
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerStreamCachingTest.java
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerStreamCachingTest.java
index ef02a48cc41..e1e7de5f020 100644
---
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerStreamCachingTest.java
+++
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerStreamCachingTest.java
@@ -79,6 +79,9 @@ public class BacklogTracerStreamCachingTest extends
ManagementTestSupport {
assertEquals("bar", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body
type=\"org.apache.camel.converter.stream.ByteArrayInputStreamCache\"
position=\"0\">Bye World</body>\n"
+ " </message>",
event1.getMessageAsXml());
diff --git
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerTest.java
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerTest.java
index 7082b8b2c16..aeff7ddc493 100644
---
a/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerTest.java
+++
b/core/camel-management/src/test/java/org/apache/camel/management/BacklogTracerTest.java
@@ -78,6 +78,9 @@ public class BacklogTracerTest extends ManagementTestSupport {
assertEquals("foo", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event1.getMessageAsXml());
@@ -86,6 +89,9 @@ public class BacklogTracerTest extends ManagementTestSupport {
assertEquals("foo", event2.getToNode());
assertEquals(" <message exchangeId=\"" +
exchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Bye
World</body>\n"
+ " </message>",
event2.getMessageAsXml());
@@ -165,6 +171,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertNull(event0.getToNode());
assertEquals(" <message exchangeId=\"" +
fooExchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event0.getMessageAsXml());
@@ -174,6 +183,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertEquals("foo", event1.getToNode());
assertEquals(" <message exchangeId=\"" +
fooExchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event1.getMessageAsXml());
@@ -183,6 +195,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertEquals("bar", event2.getToNode());
assertEquals(" <message exchangeId=\"" +
barExchanges.get(0).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">mock://foo</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Hello
World</body>\n"
+ " </message>",
event2.getMessageAsXml());
@@ -192,6 +207,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertNull(event3.getToNode());
assertEquals(" <message exchangeId=\"" +
fooExchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Bye
World</body>\n"
+ " </message>",
event3.getMessageAsXml());
@@ -201,6 +219,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertEquals("foo", event4.getToNode());
assertEquals(" <message exchangeId=\"" +
fooExchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Bye
World</body>\n"
+ " </message>",
event3.getMessageAsXml());
@@ -210,6 +231,9 @@ public class BacklogTracerTest extends
ManagementTestSupport {
assertEquals("bar", event5.getToNode());
assertEquals(" <message exchangeId=\"" +
barExchanges.get(1).getExchangeId()
+ "\" exchangePattern=\"InOnly\"
exchangeType=\"org.apache.camel.support.DefaultExchange\"
messageType=\"org.apache.camel.support.DefaultMessage\">\n"
+ + " <exchangeProperties>\n"
+ + " <exchangeProperty key=\"CamelToEndpoint\"
type=\"java.lang.String\">direct://start</exchangeProperty>\n"
+ + " </exchangeProperties>\n"
+ " <body type=\"java.lang.String\">Bye
World</body>\n"
+ " </message>",
event4.getMessageAsXml());
diff --git
a/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
b/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
index 5e07ab79a6c..876f4f970fa 100644
---
a/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
+++
b/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
@@ -542,7 +542,7 @@ public final class MessageHelper {
sb.append(" </exchangeVariables>\n");
}
// exchange properties
- if (includeExchangeProperties &&
message.getExchange().hasProperties()) {
+ if (includeExchangeProperties) {
sb.append(prefix);
sb.append(" <exchangeProperties>\n");
// sort the exchange properties so they are listed A..Z
@@ -992,7 +992,7 @@ public final class MessageHelper {
}
}
// exchange properties
- if (includeExchangeProperties &&
message.getExchange().hasProperties()) {
+ if (includeExchangeProperties) {
JsonArray arr = new JsonArray();
// sort the exchange properties so they are listed A..Z
Map<String, Object> properties = new
TreeMap<>(message.getExchange().getAllProperties());