use of com.alipay.lookout.api.Id in project sofa-rpc by sofastack.
the class RpcLookoutTest method before.
/**
* invoke
*/
@Before
public void before() {
final Registry currentRegistry = Lookout.registry();
// clear all metrics now
Iterator<Metric> itar = currentRegistry.iterator();
while (itar.hasNext()) {
Metric metric = itar.next();
Id id = metric.id();
currentRegistry.removeMetric(id);
}
serverConfig = new ServerConfig().setPort(12201).setCoreThreads(30).setMaxThreads(500).setQueues(600).setProtocol(RpcConstants.PROTOCOL_TYPE_BOLT);
providerConfig = new ProviderConfig<LookoutService>().setInterfaceId(LookoutService.class.getName()).setRef(new LookoutServiceImpl()).setServer(serverConfig).setBootstrap("bolt").setRegister(false).setApplication(new ApplicationConfig().setAppName("TestLookOutServer"));
providerConfig.export();
MethodConfig methodConfigFuture = new MethodConfig().setName("sayFuture").setInvokeType("future");
onReturn = new CountSofaResponseCallback();
MethodConfig methodConfigCallback = new MethodConfig().setName("sayCallback").setInvokeType("callback").setOnReturn(onReturn);
MethodConfig methodConfigOneway = new MethodConfig().setName("sayOneway").setInvokeType("oneway");
List<MethodConfig> methodConfigs = new ArrayList<MethodConfig>();
methodConfigs.add(methodConfigFuture);
methodConfigs.add(methodConfigCallback);
methodConfigs.add(methodConfigOneway);
consumerConfig = new ConsumerConfig<LookoutService>().setInterfaceId(LookoutService.class.getName()).setProtocol("bolt").setBootstrap("bolt").setMethods(methodConfigs).setTimeout(3000).setRegister(false).setDirectUrl("bolt://127.0.0.1:12201?appName=TestLookOutServer").setApplication(new ApplicationConfig().setAppName("TestLookOutClient"));
lookoutService = consumerConfig.refer();
}
use of com.alipay.lookout.api.Id in project sofa-rpc by sofastack.
the class RestLookoutTest method afterMethod.
@After
public void afterMethod() {
// clear all metrics now
Registry currentRegistry = Lookout.registry();
Iterator<Metric> itar = currentRegistry.iterator();
while (itar.hasNext()) {
Metric metric = itar.next();
Id id = metric.id();
currentRegistry.removeMetric(id);
}
if (providerConfig != null) {
providerConfig.unExport();
}
if (consumerConfig != null) {
consumerConfig.unRefer();
}
if (serverConfig != null) {
serverConfig.destroy();
}
}
use of com.alipay.lookout.api.Id in project sofa-rpc by sofastack.
the class RpcLookoutTest method after.
@After
public void after() {
final Registry currentRegistry = Lookout.registry();
// clear all metrics now
Iterator<Metric> itar = currentRegistry.iterator();
while (itar.hasNext()) {
Metric metric = itar.next();
Id id = metric.id();
currentRegistry.removeMetric(id);
}
if (serverConfig != null) {
serverConfig.destroy();
}
if (providerConfig != null) {
providerConfig.unExport();
}
if (consumerConfig != null) {
consumerConfig.unRefer();
}
}
use of com.alipay.lookout.api.Id in project sofa-rpc by sofastack.
the class RpcLookoutTest method beforeClass.
@BeforeClass
public static void beforeClass() {
RpcRunningState.setUnitTestMode(false);
try {
Class clazz = RpcLookout.class;
Class[] innerClazzs = clazz.getDeclaredClasses();
for (Class cls : innerClazzs) {
if (cls.getName().contains("ThreadPoolConfig")) {
corePoolSize = cls.getDeclaredField("corePoolSize");
corePoolSize.setAccessible(true);
maxPoolSize = cls.getDeclaredField("maxPoolSize");
maxPoolSize.setAccessible(true);
queueSize = cls.getDeclaredField("queueSize");
queueSize.setAccessible(true);
}
}
} catch (Exception e) {
LOGGER.error("", e);
}
Registry registry = new DefaultRegistry();
final Registry currentRegistry = Lookout.registry();
if (currentRegistry == NoopRegistry.INSTANCE) {
Lookout.setRegistry(registry);
} else {
// clear all metrics now
Iterator<Metric> itar = currentRegistry.iterator();
while (itar.hasNext()) {
Metric metric = itar.next();
Id id = metric.id();
currentRegistry.removeMetric(id);
}
}
}
use of com.alipay.lookout.api.Id in project sofa-rpc by sofastack.
the class RpcLookout method collectClient.
/**
* Collect the RPC client information.
*
* @param rpcClientMetricsModel client information model
*/
public void collectClient(RpcClientLookoutModel rpcClientMetricsModel) {
try {
Id methodConsumerId = createMethodConsumerId(rpcClientMetricsModel);
MixinMetric methodConsumerMetric = Lookout.registry().mixinMetric(methodConsumerId);
recordCounterAndTimer(methodConsumerMetric, rpcClientMetricsModel);
recordSize(methodConsumerMetric, rpcClientMetricsModel);
} catch (Throwable t) {
LOGGER.error(LogCodes.getLog(LogCodes.ERROR_METRIC_REPORT_ERROR), t);
}
}
Aggregations