This is an automated email from the ASF dual-hosted git repository.
dinglei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-spring.git
The following commit(s) were added to refs/heads/master by this push:
new f584c74 Optimize log output (#712)
f584c74 is described below
commit f584c745fd40c7d190b97e9a16347f21abd0c376
Author: rongtong <[email protected]>
AuthorDate: Thu Mar 13 15:52:01 2025 +0800
Optimize log output (#712)
* Optimize log output
---
.../ExtConsumerResetConfiguration.java | 82 +++++++++++++++++-----
.../ExtTemplateResetConfiguration.java | 3 +-
2 files changed, 68 insertions(+), 17 deletions(-)
diff --git
a/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtConsumerResetConfiguration.java
b/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtConsumerResetConfiguration.java
index 6e854a0..35837c6 100644
---
a/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtConsumerResetConfiguration.java
+++
b/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtConsumerResetConfiguration.java
@@ -47,7 +47,6 @@ import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
-
@Configuration
public class ExtConsumerResetConfiguration implements ApplicationContextAware,
SmartInitializingSingleton {
private static final Logger log =
LoggerFactory.getLogger(ExtConsumerResetConfiguration.class);
@@ -61,7 +60,7 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
private RocketMQMessageConverter rocketMQMessageConverter;
public ExtConsumerResetConfiguration(RocketMQMessageConverter
rocketMQMessageConverter,
- ConfigurableEnvironment environment,
RocketMQProperties rocketMQProperties) {
+ ConfigurableEnvironment environment, RocketMQProperties
rocketMQProperties) {
this.rocketMQMessageConverter = rocketMQMessageConverter;
this.environment = environment;
this.rocketMQProperties = rocketMQProperties;
@@ -75,9 +74,9 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
@Override
public void afterSingletonsInstantiated() {
Map<String, Object> beans = this.applicationContext
-
.getBeansWithAnnotation(org.apache.rocketmq.client.annotation.ExtConsumerResetConfiguration.class)
- .entrySet().stream().filter(entry ->
!ScopedProxyUtils.isScopedTarget(entry.getKey()))
- .collect(Collectors.toMap(Map.Entry::getKey,
Map.Entry::getValue));
+
.getBeansWithAnnotation(org.apache.rocketmq.client.annotation.ExtConsumerResetConfiguration.class)
+ .entrySet().stream().filter(entry ->
!ScopedProxyUtils.isScopedTarget(entry.getKey()))
+ .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
beans.forEach(this::registerTemplate);
}
@@ -93,9 +92,12 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
SimpleConsumerBuilder consumerBuilder = null;
SimpleConsumer simpleConsumer = null;
+ SimpleConsumerInfo simpleConsumerInfo = null;
+
try {
- consumerBuilder = createConsumer(annotation);
- simpleConsumer = consumerBuilder.build();
+ final ClientServiceProvider provider =
ClientServiceProvider.loadService();
+ SimpleConsumerBuilder simpleConsumerBuilder =
provider.newSimpleConsumerBuilder();
+ simpleConsumerInfo = createConsumer(annotation,
simpleConsumerBuilder);
} catch (Exception e) {
log.error("Failed to startup SimpleConsumer for RocketMQTemplate
{}", beanName, e);
}
@@ -103,10 +105,12 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
rocketMQTemplate.setSimpleConsumerBuilder(consumerBuilder);
rocketMQTemplate.setSimpleConsumer(simpleConsumer);
rocketMQTemplate.setMessageConverter(rocketMQMessageConverter.getMessageConverter());
- log.info("Set real simpleConsumer to :{} {}", beanName,
annotation.value());
+ log.info("Set real simpleConsumer {} to {}", simpleConsumerInfo,
beanName);
}
- private SimpleConsumerBuilder
createConsumer(org.apache.rocketmq.client.annotation.ExtConsumerResetConfiguration
annotation) {
+ private SimpleConsumerInfo createConsumer(
+ org.apache.rocketmq.client.annotation.ExtConsumerResetConfiguration
annotation,
+ SimpleConsumerBuilder simpleConsumerBuilder) {
RocketMQProperties.SimpleConsumer simpleConsumer =
rocketMQProperties.getSimpleConsumer();
String consumerGroupName =
resolvePlaceholders(annotation.consumerGroup(),
simpleConsumer.getConsumerGroup());
String topicName = resolvePlaceholders(annotation.topic(),
simpleConsumer.getTopic());
@@ -121,10 +125,8 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
Boolean sslEnabled = simpleConsumer.isSslEnabled();
Assert.hasText(topicName, "[topic] must not be null");
ClientConfiguration clientConfiguration =
RocketMQUtil.createClientConfiguration(accessKey, secretKey, endPoints,
requestTimeout, sslEnabled, namespace);
- final ClientServiceProvider provider =
ClientServiceProvider.loadService();
FilterExpression filterExpression =
RocketMQUtil.createFilterExpression(tag, filterExpressionType);
Duration duration = Duration.ofSeconds(awaitDuration);
- SimpleConsumerBuilder simpleConsumerBuilder =
provider.newSimpleConsumerBuilder();
simpleConsumerBuilder.setClientConfiguration(clientConfiguration);
if (StringUtils.hasLength(consumerGroupName)) {
simpleConsumerBuilder.setConsumerGroup(consumerGroupName);
@@ -133,7 +135,8 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
if (Objects.nonNull(filterExpression)) {
simpleConsumerBuilder.setSubscriptionExpressions(Collections.singletonMap(topicName,
filterExpression));
}
- return simpleConsumerBuilder;
+
+ return new SimpleConsumerInfo(consumerGroupName, topicName, endPoints,
namespace, tag, filterExpressionType, requestTimeout, awaitDuration,
sslEnabled);
}
private String resolvePlaceholders(String text, String defaultValue) {
@@ -142,12 +145,59 @@ public class ExtConsumerResetConfiguration implements
ApplicationContextAware, S
}
private void
validate(org.apache.rocketmq.client.annotation.ExtConsumerResetConfiguration
annotation,
- GenericApplicationContext genericApplicationContext)
{
+ GenericApplicationContext genericApplicationContext) {
if (genericApplicationContext.isBeanNameInUse(annotation.value())) {
throw new BeanDefinitionValidationException(
- String.format("Bean {} has been used in Spring Application
Context, " +
- "please check the
@ExtRocketMQConsumerConfiguration",
- annotation.value()));
+ String.format("Bean {} has been used in Spring Application
Context, " +
+ "please check the @ExtRocketMQConsumerConfiguration",
+ annotation.value()));
+ }
+ }
+
+ static class SimpleConsumerInfo {
+ String consumerGroup;
+
+ String topicName;
+
+ String endPoints;
+
+ String namespace;
+
+ String tag;
+
+ String filterExpressionType;
+
+ Duration requestTimeout;
+
+ int awaitDuration;
+
+ Boolean sslEnabled;
+
+ public SimpleConsumerInfo(String consumerGroupName, String topicName,
String endPoints, String namespace,
+ String tag, String filterExpressionType, Duration requestTimeout,
int awaitDuration, Boolean sslEnabled) {
+ this.consumerGroup = consumerGroupName;
+ this.topicName = topicName;
+ this.endPoints = endPoints;
+ this.namespace = namespace;
+ this.tag = tag;
+ this.filterExpressionType = filterExpressionType;
+ this.requestTimeout = requestTimeout;
+ this.awaitDuration = awaitDuration;
+ this.sslEnabled = sslEnabled;
+ }
+
+ @Override public String toString() {
+ return "SimpleConsumerInfo{" +
+ "consumerGroup='" + consumerGroup + '\'' +
+ ", topicName='" + topicName + '\'' +
+ ", endPoints='" + endPoints + '\'' +
+ ", namespace='" + namespace + '\'' +
+ ", tag='" + tag + '\'' +
+ ", filterExpressionType='" + filterExpressionType + '\'' +
+ ", requestTimeout(seconds)=" + requestTimeout.getSeconds() +
+ ", awaitDuration=" + awaitDuration +
+ ", sslEnabled=" + sslEnabled +
+ '}';
}
}
}
diff --git
a/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtTemplateResetConfiguration.java
b/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtTemplateResetConfiguration.java
index 1973752..ec6cbe6 100644
---
a/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtTemplateResetConfiguration.java
+++
b/rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtTemplateResetConfiguration.java
@@ -94,7 +94,8 @@ public class ExtTemplateResetConfiguration implements
ApplicationContextAware, S
RocketMQClientTemplate rocketMQTemplate = (RocketMQClientTemplate)
bean;
rocketMQTemplate.setProducerBuilder(producerBuilder);
rocketMQTemplate.setMessageConverter(rocketMQMessageConverter.getMessageConverter());
- log.info("Set real producerBuilder to :{} {}", beanName,
annotation.value());
+ String topic = environment.resolvePlaceholders(annotation.topic());
+ log.info("Set real producer to {} using topic {}", beanName, topic);
}
private ProducerBuilder createProducer(ExtProducerResetConfiguration
annotation) {