in rsc/src/main/java/org/apache/livy/rsc/rpc/Rpc.java [158:203]
private static Rpc createRpc(RSCConf config,
SaslHandler saslHandler,
SocketChannel client,
EventExecutorGroup egroup)
throws IOException {
LogLevel logLevel = LogLevel.TRACE;
String logLevelStr = config.get(RPC_CHANNEL_LOG_LEVEL);
if (logLevelStr != null) {
try {
logLevel = LogLevel.valueOf(logLevelStr);
} catch (Exception e) {
LOG.warn("Invalid log level {}, reverting to default.", logLevelStr);
}
}
boolean logEnabled = false;
switch (logLevel) {
case DEBUG:
logEnabled = LOG.isDebugEnabled();
break;
case ERROR:
logEnabled = LOG.isErrorEnabled();
break;
case INFO:
logEnabled = LOG.isInfoEnabled();
break;
case TRACE:
logEnabled = LOG.isTraceEnabled();
break;
case WARN:
logEnabled = LOG.isWarnEnabled();
break;
}
if (logEnabled) {
client.pipeline().addLast("logger", new LoggingHandler(Rpc.class, logLevel));
}
KryoMessageCodec kryo = new KryoMessageCodec(config.getInt(RPC_MAX_MESSAGE_SIZE),
MessageHeader.class, NullMessage.class, SaslMessage.class);
saslHandler.setKryoMessageCodec(kryo);
client.pipeline()
.addLast("codec", kryo)
.addLast("sasl", saslHandler);
return new Rpc(config, client, egroup);
}