Package com.linkedin.venice.listener
Class ServerConnectionStatsHandler
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
com.linkedin.venice.listener.ServerConnectionStatsHandler
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler
@Sharable
public class ServerConnectionStatsHandler
extends io.netty.channel.ChannelInboundHandlerAdapter
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionServerConnectionStatsHandler(IdentityParser identityParser, ServerConnectionStats serverConnectionStats, String routerPrincipalName, LogContext logContext) -
Method Summary
Modifier and TypeMethodDescriptionvoidchannelActive(io.netty.channel.ChannelHandlerContext ctx) voidchannelInactive(io.netty.channel.ChannelHandlerContext ctx) protected io.netty.handler.ssl.SslHandlerextractSslHandler(io.netty.channel.ChannelHandlerContext ctx) voiduserEventTriggered(io.netty.channel.ChannelHandlerContext ctx, Object evt) On SSL handshake completion, compute the setup latency and store it in a channel attribute.Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelRead, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaughtMethods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.netty.channel.ChannelHandler
handlerAdded, handlerRemoved
-
Field Details
-
CHANNEL_ACTIVATED
-
CHANNEL_INIT_START_TS
-
-
Constructor Details
-
ServerConnectionStatsHandler
public ServerConnectionStatsHandler(IdentityParser identityParser, ServerConnectionStats serverConnectionStats, String routerPrincipalName, LogContext logContext)
-
-
Method Details
-
channelActive
- Specified by:
channelActivein interfaceio.netty.channel.ChannelInboundHandler- Overrides:
channelActivein classio.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
userEventTriggered
public void userEventTriggered(io.netty.channel.ChannelHandlerContext ctx, Object evt) throws Exception On SSL handshake completion, compute the setup latency and store it in a channel attribute. The latency is recorded (both Tehuti and OTel) from theconnectionScannerafter the connection source is identified — same place as connection count metrics. This avoids blocking the Netty event loop with certificate parsing while providing per-source latency breakdowns.- Specified by:
userEventTriggeredin interfaceio.netty.channel.ChannelInboundHandler- Overrides:
userEventTriggeredin classio.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
channelInactive
- Specified by:
channelInactivein interfaceio.netty.channel.ChannelInboundHandler- Overrides:
channelInactivein classio.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
extractSslHandler
protected io.netty.handler.ssl.SslHandler extractSslHandler(io.netty.channel.ChannelHandlerContext ctx)
-