You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2024/06/22 13:17:17 UTC
(camel) 01/08: CAMEL-20879: camel-core: remote vs local endpoints counters
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch uc
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 5bb8cf190a0dd77f9e1c6ef6891ba5ff86808d64
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Jun 22 09:35:09 2024 +0200
CAMEL-20879: camel-core: remote vs local endpoints counters
---
.../main/java/org/apache/camel/impl/console/ConsumerDevConsole.java | 4 ++++
.../main/java/org/apache/camel/impl/console/EndpointDevConsole.java | 5 +++--
.../org/apache/camel/api/management/mbean/ManagedConsumerMBean.java | 3 +++
.../org/apache/camel/api/management/mbean/ManagedEndpointMBean.java | 2 +-
.../org/apache/camel/api/management/mbean/ManagedProducerMBean.java | 3 +++
.../main/java/org/apache/camel/management/mbean/ManagedConsumer.java | 5 +++++
.../main/java/org/apache/camel/management/mbean/ManagedProducer.java | 4 ++++
7 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java
index 858edf525a8..06d58c9a8fe 100644
--- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java
+++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java
@@ -63,6 +63,8 @@ public class ConsumerDevConsole extends AbstractDevConsole {
sb.append(String.format("\n Uri: %s", mc.getEndpointUri()));
sb.append(String.format("\n State: %s", mc.getState()));
sb.append(String.format("\n Class: %s", mc.getServiceType()));
+ sb.append(String.format("\n Remote: %b", mc.isRemoteEndpoint()));
+ sb.append(String.format("\n Hosted: %b", mc.isHostedService()));
sb.append(String.format("\n Inflight: %d", inflight));
if (mcc instanceof ManagedSchedulePollConsumerMBean mpc) {
sb.append(String.format("\n Polling: %s", mpc.isPolling()));
@@ -150,6 +152,8 @@ public class ConsumerDevConsole extends AbstractDevConsole {
jo.put("uri", mc.getEndpointUri());
jo.put("state", mc.getState());
jo.put("class", mc.getServiceType());
+ jo.put("remote", mc.isRemoteEndpoint());
+ jo.put("hosted", mc.isHostedService());
jo.put("inflight", inflight);
jo.put("scheduled", false);
if (mcc instanceof ManagedSchedulePollConsumerMBean mpc) {
diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java
index 9f5331f4cf6..e3605e58b55 100644
--- a/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java
+++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java
@@ -54,6 +54,7 @@ public class EndpointDevConsole extends AbstractDevConsole {
if (!col.isEmpty()) {
for (Endpoint e : col) {
boolean stub = e.getComponent().getClass().getSimpleName().equals("StubComponent");
+ boolean remote = e.isRemote();
String uri = e.toString();
if (!uri.startsWith("stub:") && stub) {
// shadow-stub
@@ -62,9 +63,9 @@ public class EndpointDevConsole extends AbstractDevConsole {
var stat = findStats(stats, e.getEndpointUri());
if (stat.isPresent()) {
var st = stat.get();
- sb.append(String.format("\n %s (direction: %s, usage: %s)", uri, st.getDirection(), st.getHits()));
+ sb.append(String.format("\n %s (remote: %s direction: %s, usage: %s)", uri, remote, st.getDirection(), st.getHits()));
} else {
- sb.append(String.format("\n %s", uri));
+ sb.append(String.format("\n %s (remote: %s)", uri, remote));
}
}
}
diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java
index 96404ade564..1cbb9fdace7 100644
--- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java
+++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java
@@ -29,4 +29,7 @@ public interface ManagedConsumerMBean extends ManagedServiceMBean {
@ManagedAttribute(description = "Whether this consumer hosts a service such as acting as a HTTP server (only available for some components)")
boolean isHostedService();
+ @ManagedAttribute(description = "Whether this consumer connects to remote or local systems")
+ boolean isRemoteEndpoint();
+
}
diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java
index dcf0a15337c..a71b4773bde 100644
--- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java
+++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java
@@ -37,7 +37,7 @@ public interface ManagedEndpointMBean {
@ManagedAttribute(description = "Singleton")
boolean isSingleton();
- @ManagedAttribute(description = "Remote")
+ @ManagedAttribute(description = "Whether this endpoint connects to remote or local systems")
boolean isRemote();
@ManagedAttribute(description = "Endpoint State")
diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java
index 4f40b4b00c0..11f34f096e4 100644
--- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java
+++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java
@@ -26,4 +26,7 @@ public interface ManagedProducerMBean extends ManagedServiceMBean {
@ManagedAttribute(description = "Singleton")
boolean isSingleton();
+ @ManagedAttribute(description = "Whether this producer connects to remote or local systems")
+ boolean isRemoteEndpoint();
+
}
diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java
index 5766b4c4e25..f4ea8da0545 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java
@@ -56,4 +56,9 @@ public class ManagedConsumer extends ManagedService implements ManagedConsumerMB
}
return false;
}
+
+ @Override
+ public boolean isRemoteEndpoint() {
+ return consumer.getEndpoint().isRemote();
+ }
}
diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java
index 1d08d966ff7..94ce8c0d929 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java
@@ -44,4 +44,8 @@ public class ManagedProducer extends ManagedService implements ManagedProducerMB
return producer.isSingleton();
}
+ @Override
+ public boolean isRemoteEndpoint() {
+ return producer.getEndpoint().isRemote();
+ }
}