Merge branch 'apache-3.2' into apache-3.3
# Conflicts: # dubbo-spring-boot/dubbo-spring-boot-starters/observability/autoconfigure/src/main/java/org/apache/dubbo/spring/boot/observability/autoconfigure/DubboObservationAutoConfiguration.java
This commit is contained in:
commit
976516cbc1
|
|
@ -95,7 +95,7 @@
|
|||
<javassist_version>3.29.2-GA</javassist_version>
|
||||
<bytebuddy.version>1.14.9</bytebuddy.version>
|
||||
<netty_version>3.2.10.Final</netty_version>
|
||||
<netty4_version>4.1.100.Final</netty4_version>
|
||||
<netty4_version>4.1.101.Final</netty4_version>
|
||||
<mina_version>2.2.1</mina_version>
|
||||
<grizzly_version>2.4.4</grizzly_version>
|
||||
<httpclient_version>4.5.14</httpclient_version>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
<profile>
|
||||
<id>dubbo-all</id>
|
||||
<activation>
|
||||
<jdk>[8,)</jdk>
|
||||
<jdk>[1.7,)</jdk>
|
||||
</activation>
|
||||
<modules>
|
||||
<module>dubbo-all</module>
|
||||
|
|
|
|||
|
|
@ -27,10 +27,13 @@ import org.apache.dubbo.spring.boot.actuate.endpoint.condition.CompatibleConditi
|
|||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
|
||||
import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.PropertySource;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* Dubbo {@link Endpoint @Endpoint} Auto-{@link Configuration} for Spring Boot Actuator 2.0
|
||||
*
|
||||
|
|
@ -38,6 +41,7 @@ import org.springframework.context.annotation.PropertySource;
|
|||
* @see Configuration
|
||||
* @since 2.7.0
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@Configuration
|
||||
@PropertySource(
|
||||
name = "Dubbo Endpoints Default Properties",
|
||||
|
|
|
|||
|
|
@ -23,10 +23,14 @@ import org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegi
|
|||
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnWebApplication
|
||||
@AutoConfigureAfter(CompositeMeterRegistryAutoConfiguration.class)
|
||||
|
|
|
|||
|
|
@ -25,15 +25,19 @@ import org.springframework.boot.actuate.endpoint.Endpoint;
|
|||
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* Dubbo {@link Endpoint} Auto Configuration is compatible with Spring Boot Actuator 1.x
|
||||
*
|
||||
* @since 2.7.0
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@Configuration
|
||||
@ConditionalOnClass(
|
||||
name = {"org.springframework.boot.actuate.endpoint.Endpoint" // Spring Boot 1.x
|
||||
|
|
|
|||
|
|
@ -20,12 +20,16 @@ import org.apache.dubbo.spring.boot.actuate.endpoint.metadata.AbstractDubboMetad
|
|||
|
||||
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* Dubbo Endpoints Metadata Auto-{@link Configuration}
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@ConditionalOnClass(
|
||||
name = {"org.springframework.boot.actuate.health.Health" // If spring-boot-actuator is present
|
||||
})
|
||||
|
|
|
|||
|
|
@ -35,7 +35,10 @@ import org.springframework.context.annotation.Configuration;
|
|||
*/
|
||||
@Configuration
|
||||
@ConditionalOnClass(name = {"org.springframework.boot.actuate.health.Health"})
|
||||
@ConditionalOnProperty(name = "management.health.dubbo.enabled", matchIfMissing = true, havingValue = "true")
|
||||
@ConditionalOnProperty(
|
||||
name = {"management.health.dubbo.enabled", "dubbo.enabled"},
|
||||
matchIfMissing = true,
|
||||
havingValue = "true")
|
||||
@EnableConfigurationProperties(DubboHealthIndicatorProperties.class)
|
||||
public class DubboHealthIndicatorAutoConfiguration {
|
||||
|
||||
|
|
|
|||
|
|
@ -25,41 +25,33 @@ import org.apache.dubbo.config.ProviderConfig;
|
|||
import org.apache.dubbo.config.RegistryConfig;
|
||||
import org.apache.dubbo.config.bootstrap.DubboBootstrap;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.test.context.TestPropertySource;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors;
|
||||
|
||||
/**
|
||||
* {@link DubboAutoConfiguration} Test On multiple Dubbo Configuration
|
||||
*
|
||||
* @since 2.7.0
|
||||
*/
|
||||
@Ignore
|
||||
@RunWith(SpringRunner.class)
|
||||
@TestPropertySource(
|
||||
properties = {
|
||||
"dubbo.applications.application1.NAME = dubbo-demo-application",
|
||||
"dubbo.modules.module1.name = dubbo-demo-module",
|
||||
"dubbo.registries.registry1.address = zookeeper://192.168.99.100:32770",
|
||||
"dubbo.applications.application1.name=dubbo-demo-multi-application",
|
||||
"dubbo.modules.module1.name=dubbo-demo-module",
|
||||
"dubbo.registries.registry1.address=test://192.168.99.100:32770",
|
||||
"dubbo.protocols.protocol1.name=dubbo",
|
||||
"dubbo.protocols.protocol1.pORt=20880",
|
||||
"dubbo.monitors.monitor1.Address=zookeeper://127.0.0.1:32770",
|
||||
"dubbo.protocols.protocol1.port=20880",
|
||||
"dubbo.monitors.monitor1.address=test://127.0.0.1:32770",
|
||||
"dubbo.providers.provider1.host=127.0.0.1",
|
||||
"dubbo.consumers.consumer1.client=netty",
|
||||
"dubbo.config.multiple=true",
|
||||
|
|
@ -67,62 +59,39 @@ import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncl
|
|||
})
|
||||
@SpringBootTest(classes = {DubboAutoConfigurationOnMultipleConfigTest.class})
|
||||
@EnableAutoConfiguration
|
||||
@ComponentScan
|
||||
public class DubboAutoConfigurationOnMultipleConfigTest {
|
||||
|
||||
@Autowired
|
||||
private Environment environment;
|
||||
|
||||
@Autowired
|
||||
private ApplicationContext applicationContext;
|
||||
|
||||
/**
|
||||
* {@link ApplicationConfig}
|
||||
* @see TestBeansConfiguration
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("application1")
|
||||
private ApplicationConfig application;
|
||||
ApplicationConfig application;
|
||||
|
||||
/**
|
||||
* {@link ModuleConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("module1")
|
||||
private ModuleConfig module;
|
||||
ModuleConfig module;
|
||||
|
||||
/**
|
||||
* {@link RegistryConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("registry1")
|
||||
private RegistryConfig registry;
|
||||
RegistryConfig registry;
|
||||
|
||||
/**
|
||||
* {@link ProtocolConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("protocol1")
|
||||
private ProtocolConfig protocol;
|
||||
|
||||
/**
|
||||
* {@link MonitorConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("monitor1")
|
||||
private MonitorConfig monitor;
|
||||
MonitorConfig monitor;
|
||||
|
||||
/**
|
||||
* {@link ProviderConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("provider1")
|
||||
private ProviderConfig provider;
|
||||
@Qualifier("protocol1")
|
||||
ProtocolConfig protocol;
|
||||
|
||||
/**
|
||||
* {@link ConsumerConfig}
|
||||
*/
|
||||
@Autowired
|
||||
@Qualifier("consumer1")
|
||||
private ConsumerConfig consumer;
|
||||
ConsumerConfig consumer;
|
||||
|
||||
@Autowired
|
||||
@Qualifier("provider1")
|
||||
ProviderConfig provider;
|
||||
|
||||
@Before
|
||||
public void init() {
|
||||
|
|
@ -134,134 +103,24 @@ public class DubboAutoConfigurationOnMultipleConfigTest {
|
|||
DubboBootstrap.reset();
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private Map<String, ApplicationConfig> applications = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, ModuleConfig> modules = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, RegistryConfig> registries = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, ProtocolConfig> protocols = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, MonitorConfig> monitors = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, ProviderConfig> providers = new LinkedHashMap<>();
|
||||
|
||||
@Autowired
|
||||
private Map<String, ConsumerConfig> consumers = new LinkedHashMap<>();
|
||||
|
||||
@Test
|
||||
public void testMultipleDubboConfigBindingProperties() {
|
||||
|
||||
Assert.assertEquals(1, applications.size());
|
||||
|
||||
Assert.assertEquals(1, modules.size());
|
||||
|
||||
Assert.assertEquals(1, registries.size());
|
||||
|
||||
Assert.assertEquals(1, protocols.size());
|
||||
|
||||
Assert.assertEquals(1, monitors.size());
|
||||
|
||||
Assert.assertEquals(1, providers.size());
|
||||
|
||||
Assert.assertEquals(1, consumers.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testApplicationContext() {
|
||||
|
||||
/**
|
||||
* Multiple {@link ApplicationConfig}
|
||||
*/
|
||||
Map<String, ApplicationConfig> applications =
|
||||
beansOfTypeIncludingAncestors(applicationContext, ApplicationConfig.class);
|
||||
|
||||
Assert.assertEquals(1, applications.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link ModuleConfig}
|
||||
*/
|
||||
Map<String, ModuleConfig> modules = beansOfTypeIncludingAncestors(applicationContext, ModuleConfig.class);
|
||||
|
||||
Assert.assertEquals(1, modules.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link RegistryConfig}
|
||||
*/
|
||||
Map<String, RegistryConfig> registries =
|
||||
beansOfTypeIncludingAncestors(applicationContext, RegistryConfig.class);
|
||||
|
||||
Assert.assertEquals(1, registries.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link ProtocolConfig}
|
||||
*/
|
||||
Map<String, ProtocolConfig> protocols = beansOfTypeIncludingAncestors(applicationContext, ProtocolConfig.class);
|
||||
|
||||
Assert.assertEquals(1, protocols.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link MonitorConfig}
|
||||
*/
|
||||
Map<String, MonitorConfig> monitors = beansOfTypeIncludingAncestors(applicationContext, MonitorConfig.class);
|
||||
|
||||
Assert.assertEquals(1, monitors.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link ProviderConfig}
|
||||
*/
|
||||
Map<String, ProviderConfig> providers = beansOfTypeIncludingAncestors(applicationContext, ProviderConfig.class);
|
||||
|
||||
Assert.assertEquals(1, providers.size());
|
||||
|
||||
/**
|
||||
* Multiple {@link ConsumerConfig}
|
||||
*/
|
||||
Map<String, ConsumerConfig> consumers = beansOfTypeIncludingAncestors(applicationContext, ConsumerConfig.class);
|
||||
|
||||
Assert.assertEquals(1, consumers.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testApplicationConfig() {
|
||||
|
||||
Assert.assertEquals("dubbo-demo-application", application.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testModuleConfig() {
|
||||
|
||||
public void testMultiConfig() {
|
||||
// application
|
||||
Assert.assertEquals("dubbo-demo-multi-application", application.getName());
|
||||
// module
|
||||
Assert.assertEquals("dubbo-demo-module", module.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegistryConfig() {
|
||||
|
||||
Assert.assertEquals("zookeeper://192.168.99.100:32770", registry.getAddress());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMonitorConfig() {
|
||||
|
||||
Assert.assertEquals("zookeeper://127.0.0.1:32770", monitor.getAddress());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProtocolConfig() {
|
||||
|
||||
// registry
|
||||
Assert.assertEquals("test://192.168.99.100:32770", registry.getAddress());
|
||||
Assert.assertEquals("test", registry.getProtocol());
|
||||
Assert.assertEquals(Integer.valueOf(32770), registry.getPort());
|
||||
// monitor
|
||||
Assert.assertEquals("test://127.0.0.1:32770", monitor.getAddress());
|
||||
// protocol
|
||||
Assert.assertEquals("dubbo", protocol.getName());
|
||||
Assert.assertEquals(Integer.valueOf(20880), protocol.getPort());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testConsumerConfig() {
|
||||
|
||||
// consumer
|
||||
Assert.assertEquals("netty", consumer.getClient());
|
||||
// provider
|
||||
Assert.assertEquals("127.0.0.1", provider.getHost());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,14 +28,12 @@ import org.apache.dubbo.config.bootstrap.DubboBootstrap;
|
|||
import org.junit.After;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.test.context.TestPropertySource;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
|
|
@ -44,21 +42,21 @@ import org.springframework.test.context.junit4.SpringRunner;
|
|||
*
|
||||
* @since 2.7.0
|
||||
*/
|
||||
@Ignore
|
||||
@RunWith(SpringRunner.class)
|
||||
@TestPropertySource(
|
||||
properties = {
|
||||
"dubbo.application.name = dubbo-demo-application",
|
||||
"dubbo.application.name = dubbo-demo-single-application",
|
||||
"dubbo.module.name = dubbo-demo-module",
|
||||
"dubbo.registry.address = zookeeper://192.168.99.100:32770",
|
||||
"dubbo.registry.address = test://192.168.99.100:32770",
|
||||
"dubbo.protocol.name=dubbo",
|
||||
"dubbo.protocol.port=20880",
|
||||
"dubbo.monitor.address=zookeeper://127.0.0.1:32770",
|
||||
"dubbo.monitor.address=test://127.0.0.1:32770",
|
||||
"dubbo.provider.host=127.0.0.1",
|
||||
"dubbo.consumer.client=netty"
|
||||
})
|
||||
@SpringBootTest(classes = {DubboAutoConfigurationOnSingleConfigTest.class})
|
||||
@EnableAutoConfiguration
|
||||
@ComponentScan
|
||||
public class DubboAutoConfigurationOnSingleConfigTest {
|
||||
|
||||
@Autowired
|
||||
|
|
@ -82,12 +80,6 @@ public class DubboAutoConfigurationOnSingleConfigTest {
|
|||
@Autowired
|
||||
private ProtocolConfig protocolConfig;
|
||||
|
||||
@Autowired
|
||||
private Environment environment;
|
||||
|
||||
@Autowired
|
||||
private ApplicationContext applicationContext;
|
||||
|
||||
@Before
|
||||
public void init() {
|
||||
DubboBootstrap.reset();
|
||||
|
|
@ -99,45 +91,21 @@ public class DubboAutoConfigurationOnSingleConfigTest {
|
|||
}
|
||||
|
||||
@Test
|
||||
public void testApplicationConfig() {
|
||||
|
||||
Assert.assertEquals("dubbo-demo-application", applicationConfig.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testModuleConfig() {
|
||||
|
||||
public void testSingleConfig() {
|
||||
// application
|
||||
Assert.assertEquals("dubbo-demo-single-application", applicationConfig.getName());
|
||||
// module
|
||||
Assert.assertEquals("dubbo-demo-module", moduleConfig.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegistryConfig() {
|
||||
|
||||
Assert.assertEquals("zookeeper://192.168.99.100:32770", registryConfig.getAddress());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMonitorConfig() {
|
||||
|
||||
Assert.assertEquals("zookeeper://127.0.0.1:32770", monitorConfig.getAddress());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProtocolConfig() {
|
||||
|
||||
// registry
|
||||
Assert.assertEquals("test://192.168.99.100:32770", registryConfig.getAddress());
|
||||
// monitor
|
||||
Assert.assertEquals("test://127.0.0.1:32770", monitorConfig.getAddress());
|
||||
// protocol
|
||||
Assert.assertEquals("dubbo", protocolConfig.getName());
|
||||
Assert.assertEquals(Integer.valueOf(20880), protocolConfig.getPort());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProviderConfig() {
|
||||
|
||||
// consumer
|
||||
Assert.assertEquals("netty", consumerConfig.getClient());
|
||||
// provider
|
||||
Assert.assertEquals("127.0.0.1", providerConfig.getHost());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testConsumerConfig() {
|
||||
|
||||
Assert.assertEquals("netty", consumerConfig.getClient());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,81 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.dubbo.spring.boot.autoconfigure;
|
||||
|
||||
import org.apache.dubbo.config.ApplicationConfig;
|
||||
import org.apache.dubbo.config.ConsumerConfig;
|
||||
import org.apache.dubbo.config.ModuleConfig;
|
||||
import org.apache.dubbo.config.MonitorConfig;
|
||||
import org.apache.dubbo.config.ProtocolConfig;
|
||||
import org.apache.dubbo.config.ProviderConfig;
|
||||
import org.apache.dubbo.config.RegistryConfig;
|
||||
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
@Configuration
|
||||
public class TestBeansConfiguration {
|
||||
|
||||
@Bean
|
||||
ApplicationConfig application1() {
|
||||
ApplicationConfig config = new ApplicationConfig();
|
||||
config.setId("application1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
ModuleConfig module1() {
|
||||
ModuleConfig config = new ModuleConfig();
|
||||
config.setId("module1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
RegistryConfig registry1() {
|
||||
RegistryConfig config = new RegistryConfig();
|
||||
config.setId("registry1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
MonitorConfig monitor1() {
|
||||
MonitorConfig config = new MonitorConfig();
|
||||
config.setId("monitor1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
ProtocolConfig protocol1() {
|
||||
ProtocolConfig config = new ProtocolConfig();
|
||||
config.setId("protocol1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
ConsumerConfig consumer1() {
|
||||
ConsumerConfig config = new ConsumerConfig();
|
||||
config.setId("consumer1");
|
||||
return config;
|
||||
}
|
||||
|
||||
@Bean
|
||||
ProviderConfig provider1() {
|
||||
ProviderConfig config = new ProviderConfig();
|
||||
config.setId("provider1");
|
||||
return config;
|
||||
}
|
||||
}
|
||||
|
|
@ -20,10 +20,12 @@ import org.apache.dubbo.config.bootstrap.DubboBootstrap;
|
|||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
|
||||
/**
|
||||
* {@link AwaitingNonWebApplicationListener} Test
|
||||
*/
|
||||
@Ignore
|
||||
public class AwaitingNonWebApplicationListenerTest {
|
||||
|
||||
@Before
|
||||
|
|
|
|||
|
|
@ -22,13 +22,17 @@ import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.core.annotation.Order;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* copy from {@link org.springframework.boot.actuate.autoconfigure.tracing.MicrometerTracingAutoConfiguration}
|
||||
* this class is available starting from Boot 3.0. It's not available if you're using Boot < 3.0
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@ConditionalOnDubboTracingEnable
|
||||
@ConditionalOnClass(
|
||||
name = {
|
||||
|
|
|
|||
|
|
@ -36,15 +36,19 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.Ordered;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* Register observationRegistry to ApplicationModel.
|
||||
* Create observationRegistry when you are using Boot <3.0 or you are not using spring-boot-starter-actuator
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@AutoConfiguration(
|
||||
after = DubboMicrometerTracingAutoConfiguration.class,
|
||||
afterName = "org.springframework.boot.actuate.autoconfigure.observation.ObservationAutoConfiguration")
|
||||
|
|
|
|||
|
|
@ -37,9 +37,12 @@ import org.springframework.context.annotation.Configuration;
|
|||
import org.springframework.core.Ordered;
|
||||
import org.springframework.core.annotation.Order;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* provider Brave when you are using Boot <3.0 or you are not using spring-boot-starter-actuator
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@AutoConfiguration(
|
||||
before = DubboMicrometerTracingAutoConfiguration.class,
|
||||
afterName = "org.springframework.boot.actuate.autoconfigure.tracing.BraveAutoConfiguration")
|
||||
|
|
|
|||
|
|
@ -35,10 +35,12 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
|
|||
import org.springframework.context.annotation.Bean;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.observability.autoconfigure.ObservabilityUtils.DUBBO_TRACING_OTLP_CONFIG_PREFIX;
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* @since 3.2.2
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@AutoConfiguration
|
||||
@ConditionalOnClass({OtelTracer.class, SdkTracerProvider.class, OpenTelemetry.class, OtlpGrpcSpanExporter.class})
|
||||
@ConditionalOnDubboTracingEnable
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ import zipkin2.codec.SpanBytesEncoder;
|
|||
import zipkin2.reporter.Sender;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.observability.autoconfigure.ObservabilityUtils.DUBBO_TRACING_ZIPKIN_CONFIG_PREFIX;
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* {@link EnableAutoConfiguration Auto-configuration} for Zipkin.
|
||||
|
|
@ -46,6 +47,7 @@ import static org.apache.dubbo.spring.boot.observability.autoconfigure.Observabi
|
|||
*
|
||||
* @since 3.2.1
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@AutoConfiguration(
|
||||
after = RestTemplateAutoConfiguration.class,
|
||||
afterName = "org.springframework.boot.actuate.autoconfigure.tracing.zipkin")
|
||||
|
|
|
|||
|
|
@ -36,9 +36,12 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
|
|||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import static org.apache.dubbo.spring.boot.util.DubboUtils.DUBBO_PREFIX;
|
||||
|
||||
/**
|
||||
* provider OpenTelemetry when you are using Boot <3.0 or you are not using spring-boot-starter-actuator
|
||||
*/
|
||||
@ConditionalOnProperty(prefix = DUBBO_PREFIX, name = "enabled", matchIfMissing = true)
|
||||
@AutoConfiguration(
|
||||
before = DubboMicrometerTracingAutoConfiguration.class,
|
||||
afterName = "org.springframework.boot.actuate.autoconfigure.tracing.OpenTelemetryAutoConfiguration")
|
||||
|
|
|
|||
Loading…
Reference in New Issue