use of org.apache.skywalking.apm.collector.server.grpc.GRPCServer in project incubator-skywalking by apache.
the class RemoteModuleGRPCProvider method start.
@Override
public void start(Properties config) throws ServiceNotProvidedException {
String host = config.getProperty(HOST);
Integer port = (Integer) config.get(PORT);
GRPCManagerService managerService = getManager().find(GRPCManagerModule.NAME).getService(GRPCManagerService.class);
GRPCServer gRPCServer = managerService.createIfAbsent(host, port);
gRPCServer.addHandler(new RemoteCommonServiceHandler(remoteDataRegisterService));
ModuleRegisterService moduleRegisterService = getManager().find(ClusterModule.NAME).getService(ModuleRegisterService.class);
moduleRegisterService.register(RemoteModule.NAME, this.name(), new RemoteModuleGRPCRegistration(host, port));
ModuleListenerService moduleListenerService = getManager().find(ClusterModule.NAME).getService(ModuleListenerService.class);
moduleListenerService.addListener(remoteSenderService);
}
use of org.apache.skywalking.apm.collector.server.grpc.GRPCServer in project incubator-skywalking by apache.
the class GRPCManagerServiceImpl method createOrChooseServer.
private GRPCServer createOrChooseServer(String host, int port, GRPCServer newServer) throws ServerCanNotBeCreatedException {
String id = host + String.valueOf(port);
GRPCServer existServer = servers.get(id);
if (existServer != null) {
if (existServer.isStatusEqual(newServer)) {
return existServer;
} else {
throw new ServerCanNotBeCreatedException("Can't create server with same port but different setting. SSL setting must equal too.");
}
} else {
try {
newServer.initialize();
} catch (ServerException e) {
logger.error(e.getMessage(), e);
}
servers.put(id, newServer);
return newServer;
}
}
use of org.apache.skywalking.apm.collector.server.grpc.GRPCServer in project incubator-skywalking by apache.
the class AgentModuleGRPCProvider method start.
@Override
public void start(Properties config) throws ServiceNotProvidedException {
String host = config.getProperty(HOST);
Integer port = (Integer) config.get(PORT);
String sslCertChainFilePath = config.getProperty(SSL_CERT_CHAIN_FILEPATH);
String sslPrivateKeyFilePath = config.getProperty(SSL_PRIVATE_KEY_FILE);
AuthenticationSimpleChecker.INSTANCE.setExpectedToken(config.getProperty(AUTHENTICATION, ""));
File sslCertChainFile = null;
File sslPrivateKeyFile = null;
if (StringUtil.isNotBlank(sslCertChainFilePath)) {
sslCertChainFile = new File(sslCertChainFilePath);
if (!(sslCertChainFile.exists() && sslCertChainFile.isFile())) {
sslCertChainFile = null;
}
}
if (StringUtil.isNotBlank(sslPrivateKeyFilePath)) {
sslPrivateKeyFile = new File(sslPrivateKeyFilePath);
if (!(sslPrivateKeyFile.exists() && sslPrivateKeyFile.isFile())) {
sslPrivateKeyFile = null;
}
}
ModuleRegisterService moduleRegisterService = getManager().find(ClusterModule.NAME).getService(ModuleRegisterService.class);
moduleRegisterService.register(AgentGRPCModule.NAME, this.name(), new AgentModuleGRPCRegistration(host, port));
AgentGRPCNamingListener namingListener = new AgentGRPCNamingListener();
ModuleListenerService moduleListenerService = getManager().find(ClusterModule.NAME).getService(ModuleListenerService.class);
moduleListenerService.addListener(namingListener);
NamingHandlerRegisterService namingHandlerRegisterService = getManager().find(NamingModule.NAME).getService(NamingHandlerRegisterService.class);
namingHandlerRegisterService.register(new AgentGRPCNamingHandler(namingListener));
GRPCManagerService managerService = getManager().find(GRPCManagerModule.NAME).getService(GRPCManagerService.class);
GRPCServer gRPCServer;
if (sslCertChainFile != null && sslPrivateKeyFile != null) {
gRPCServer = managerService.createIfAbsent(host, port, sslCertChainFile, sslPrivateKeyFile);
} else {
gRPCServer = managerService.createIfAbsent(host, port);
}
addHandlers(gRPCServer);
}
Aggregations