This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch ra in repository https://gitbox.apache.org/repos/asf/camel.git
commit 46a98de2f9b949ae30bde668b5b5caf49a5397aa Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon May 27 13:00:08 2024 +0200 CAMEL-20798: Add RemoteAddress to endpoints so they can tell the url/hostname etc for the system it connects. This is needed for better monitoring, tracing and management. Add this information into camel-tracer as tags. --- .../org/apache/camel/catalog/dev-consoles.properties | 1 + .../org/apache/camel/catalog/dev-consoles/protocol.json | 15 +++++++++++++++ .../apache/camel/component/activemq/ActiveMQEndpoint.java | 4 ++-- .../camel/component/activemq6/ActiveMQEndpoint.java | 9 +++++++-- .../apache/camel/component/arangodb/ArangoDbEndpoint.java | 9 +++++++-- .../apache/camel/component/asterisk/AsteriskEndpoint.java | 9 +++++++-- .../org/apache/camel/http/common/HttpCommonEndpoint.java | 10 +++++++++- .../org/apache/camel/component/mail/MailEndpoint.java | 12 ++++++++++-- .../camel/component/sap/netweaver/NetWeaverEndpoint.java | 9 +++++++-- 9 files changed, 65 insertions(+), 13 deletions(-) diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles.properties index 407203014fc..bfb1dc6c17a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles.properties +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles.properties @@ -24,6 +24,7 @@ mllp netty platform-http properties +protocol quartz reload resilience4j diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles/protocol.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles/protocol.json new file mode 100644 index 00000000000..e7a34a208cc --- /dev/null +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dev-consoles/protocol.json @@ -0,0 +1,15 @@ +{ + "console": { + "kind": "console", + "group": "camel", + "name": "protocol", + "title": "Protocols", + "description": "Protocols used for network communication with clients", + "deprecated": false, + "javaType": "org.apache.camel.impl.console.ProtocolDevConsole", + "groupId": "org.apache.camel", + "artifactId": "camel-console", + "version": "4.7.0-SNAPSHOT" + } +} + diff --git a/components/camel-activemq/src/main/java/org/apache/camel/component/activemq/ActiveMQEndpoint.java b/components/camel-activemq/src/main/java/org/apache/camel/component/activemq/ActiveMQEndpoint.java index df6ff18bec8..be92147a9dc 100644 --- a/components/camel-activemq/src/main/java/org/apache/camel/component/activemq/ActiveMQEndpoint.java +++ b/components/camel-activemq/src/main/java/org/apache/camel/component/activemq/ActiveMQEndpoint.java @@ -61,7 +61,7 @@ public class ActiveMQEndpoint extends JmsEndpoint implements EndpointServiceLoca } @Override - public String getAddress() { + public String getServiceUrl() { String url = null; if (getConfiguration() instanceof ActiveMQConfiguration acc) { url = acc.getBrokerURL(); @@ -78,7 +78,7 @@ public class ActiveMQEndpoint extends JmsEndpoint implements EndpointServiceLoca } @Override - public Map<String, String> getAddressMetadata() { + public Map<String, String> getServiceMetadata() { String un = null; String cid = null; if (getConfiguration() instanceof ActiveMQConfiguration acc) { diff --git a/components/camel-activemq6/src/main/java/org/apache/camel/component/activemq6/ActiveMQEndpoint.java b/components/camel-activemq6/src/main/java/org/apache/camel/component/activemq6/ActiveMQEndpoint.java index 213ac637fa0..877e2fb8a4b 100644 --- a/components/camel-activemq6/src/main/java/org/apache/camel/component/activemq6/ActiveMQEndpoint.java +++ b/components/camel-activemq6/src/main/java/org/apache/camel/component/activemq6/ActiveMQEndpoint.java @@ -61,7 +61,7 @@ public class ActiveMQEndpoint extends JmsEndpoint implements EndpointServiceLoca } @Override - public String getAddress() { + public String getServiceUrl() { String url = null; if (getConfiguration() instanceof ActiveMQConfiguration acc) { url = acc.getBrokerURL(); @@ -73,7 +73,12 @@ public class ActiveMQEndpoint extends JmsEndpoint implements EndpointServiceLoca } @Override - public Map<String, String> getAddressMetadata() { + public String getServiceProtocol() { + return "jms"; + } + + @Override + public Map<String, String> getServiceMetadata() { String un = null; String cid = null; if (getConfiguration() instanceof ActiveMQConfiguration acc) { diff --git a/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbEndpoint.java b/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbEndpoint.java index be31887d278..7d4e1842d3b 100644 --- a/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbEndpoint.java +++ b/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbEndpoint.java @@ -55,12 +55,17 @@ public class ArangoDbEndpoint extends DefaultEndpoint implements EndpointService } @Override - public String getAddress() { + public String getServiceUrl() { return configuration.getHost() + ":" + configuration.getPort(); } @Override - public Map<String, String> getAddressMetadata() { + public String getServiceProtocol() { + return "http"; + } + + @Override + public Map<String, String> getServiceMetadata() { if (configuration.getUser() != null) { return Map.of("username", configuration.getUser()); } diff --git a/components/camel-asterisk/src/main/java/org/apache/camel/component/asterisk/AsteriskEndpoint.java b/components/camel-asterisk/src/main/java/org/apache/camel/component/asterisk/AsteriskEndpoint.java index 613a7791c43..e5eebc513b3 100644 --- a/components/camel-asterisk/src/main/java/org/apache/camel/component/asterisk/AsteriskEndpoint.java +++ b/components/camel-asterisk/src/main/java/org/apache/camel/component/asterisk/AsteriskEndpoint.java @@ -79,12 +79,17 @@ public class AsteriskEndpoint extends DefaultEndpoint implements EndpointService } @Override - public String getAddress() { + public String getServiceUrl() { return hostname; } @Override - public Map<String, String> getAddressMetadata() { + public String getServiceProtocol() { + return "voip"; + } + + @Override + public Map<String, String> getServiceMetadata() { if (username != null) { return Map.of("username", username); } diff --git a/components/camel-http-common/src/main/java/org/apache/camel/http/common/HttpCommonEndpoint.java b/components/camel-http-common/src/main/java/org/apache/camel/http/common/HttpCommonEndpoint.java index 88fe0c60fc4..f7f3d778dc0 100644 --- a/components/camel-http-common/src/main/java/org/apache/camel/http/common/HttpCommonEndpoint.java +++ b/components/camel-http-common/src/main/java/org/apache/camel/http/common/HttpCommonEndpoint.java @@ -195,13 +195,21 @@ public abstract class HttpCommonEndpoint extends DefaultEndpoint implements Head } @Override - public String getAddress() { + public String getServiceUrl() { if (httpUri != null) { return httpUri.toString(); } return null; } + @Override + public String getServiceProtocol() { + if (httpUri != null) { + return httpUri.getScheme(); + } + return null; + } + public void connect(HttpConsumer consumer) throws Exception { component.connect(consumer); } diff --git a/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java b/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java index 22f6762d414..a2a6c9fddc1 100644 --- a/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java +++ b/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java @@ -91,7 +91,7 @@ public class MailEndpoint extends ScheduledPollEndpoint implements HeaderFilterS } @Override - public String getAddress() { + public String getServiceUrl() { if (configuration != null) { return configuration.getProtocol() + ":" + configuration.getHost() + ":" + configuration.getPort(); } @@ -99,7 +99,15 @@ public class MailEndpoint extends ScheduledPollEndpoint implements HeaderFilterS } @Override - public Map<String, String> getAddressMetadata() { + public String getServiceProtocol() { + if (configuration != null) { + return configuration.getProtocol(); + } + return null; + } + + @Override + public Map<String, String> getServiceMetadata() { if (configuration != null && configuration.getUsername() != null) { return Map.of("username", configuration.getUsername()); } diff --git a/components/camel-sap-netweaver/src/main/java/org/apache/camel/component/sap/netweaver/NetWeaverEndpoint.java b/components/camel-sap-netweaver/src/main/java/org/apache/camel/component/sap/netweaver/NetWeaverEndpoint.java index 6670413464e..b02a5c3bc9a 100644 --- a/components/camel-sap-netweaver/src/main/java/org/apache/camel/component/sap/netweaver/NetWeaverEndpoint.java +++ b/components/camel-sap-netweaver/src/main/java/org/apache/camel/component/sap/netweaver/NetWeaverEndpoint.java @@ -59,12 +59,17 @@ public class NetWeaverEndpoint extends DefaultEndpoint implements EndpointServic } @Override - public String getAddress() { + public String getServiceUrl() { return url; } @Override - public Map<String, String> getAddressMetadata() { + public String getServiceProtocol() { + return "http"; + } + + @Override + public Map<String, String> getServiceMetadata() { if (username != null) { return Map.of("username", username); }