Class LoggingFilter
java.lang.Object
org.apache.mina.core.filterchain.IoFilterAdapter
org.apache.mina.filter.logging.LoggingFilter
- All Implemented Interfaces:
IoFilter
Logs MINA protocol events. Each event can be tuned to use a different level based on
the user's specific requirements. Methods are in place that allow the user to use
either the get or set method for each event and pass in the
IoEventType and
the LogLevel.
By default, all events are logged to the LogLevel.INFO level except
IoFilterAdapter.exceptionCaught(IoFilter.NextFilter, IoSession, Throwable),
which is logged to LogLevel.WARN.-
Nested Class Summary
Nested classes/interfaces inherited from interface IoFilter
IoFilter.NextFilter -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate LogLevelThe log level for the exceptionCaught event.private final org.slf4j.LoggerThe loggerprivate LogLevelThe log level for the messageReceived event.private LogLevelThe log level for the messageSent event.private final StringThe logger nameprivate LogLevelThe log level for the sessionClosed event.private LogLevelThe log level for the sessionCreated event.private LogLevelThe log level for the sessionIdle event.private LogLevelThe log level for the sessionOpened event. -
Constructor Summary
ConstructorsConstructorDescriptionDefault Constructor.LoggingFilter(Class<?> clazz) Create a new NoopFilter using a class nameLoggingFilter(String name) Create a new NoopFilter using a name -
Method Summary
Modifier and TypeMethodDescriptionvoidexceptionCaught(IoFilter.NextFilter nextFilter, IoSession session, Throwable cause) FiltersIoHandler.exceptionCaught(IoSession,Throwable)event.Get the LogLevel for the ExceptionCaught event.Get the LogLevel for the MessageReceived event.Get the LogLevel for the MessageSent event.getName()Get the LogLevel for the SessionClosed event.Get the LogLevel for the SessionCreated event.Get the LogLevel for the SessionIdle event.Get the LogLevel for the SessionOpened event.private voidLog if the logger and the current event log level are compatible.private voidLog if the logger and the current event log level are compatible.private voidLog if the logger and the current event log level are compatible.voidmessageReceived(IoFilter.NextFilter nextFilter, IoSession session, Object message) FiltersIoHandler.messageReceived(IoSession,Object)event.voidmessageSent(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest) FiltersIoHandler.messageSent(IoSession,Object)event.voidsessionClosed(IoFilter.NextFilter nextFilter, IoSession session) FiltersIoHandler.sessionClosed(IoSession)event.voidsessionCreated(IoFilter.NextFilter nextFilter, IoSession session) FiltersIoHandler.sessionCreated(IoSession)event.voidsessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status) FiltersIoHandler.sessionIdle(IoSession,IdleStatus)event.voidsessionOpened(IoFilter.NextFilter nextFilter, IoSession session) FiltersIoHandler.sessionOpened(IoSession)event.voidSet the LogLevel for the ExceptionCaught event.voidSet the LogLevel for the MessageReceived event.voidsetMessageSentLogLevel(LogLevel level) Set the LogLevel for the MessageSent event.voidsetSessionClosedLogLevel(LogLevel level) Set the LogLevel for the SessionClosed event.voidSet the LogLevel for the SessionCreated event.voidsetSessionIdleLogLevel(LogLevel level) Set the LogLevel for the SessionIdle event.voidsetSessionOpenedLogLevel(LogLevel level) Set the LogLevel for the SessionOpened event.Methods inherited from class IoFilterAdapter
destroy, event, filterClose, filterWrite, init, inputClosed, onPostAdd, onPostRemove, onPreAdd, onPreRemove, toString
-
Field Details
-
name
The logger name -
logger
private final org.slf4j.Logger loggerThe logger -
exceptionCaughtLevel
The log level for the exceptionCaught event. Default to WARN. -
messageSentLevel
The log level for the messageSent event. Default to INFO. -
messageReceivedLevel
The log level for the messageReceived event. Default to INFO. -
sessionCreatedLevel
The log level for the sessionCreated event. Default to INFO. -
sessionOpenedLevel
The log level for the sessionOpened event. Default to INFO. -
sessionIdleLevel
The log level for the sessionIdle event. Default to INFO. -
sessionClosedLevel
The log level for the sessionClosed event. Default to INFO.
-
-
Constructor Details
-
LoggingFilter
public LoggingFilter()Default Constructor. -
LoggingFilter
Create a new NoopFilter using a class name- Parameters:
clazz- the cass which name will be used to create the logger
-
LoggingFilter
Create a new NoopFilter using a name- Parameters:
name- the name used to create the logger. If null, will default to "NoopFilter"
-
-
Method Details
-
getName
- Returns:
- The logger's name
-
log
Log if the logger and the current event log level are compatible. We log a message and an exception.- Parameters:
eventLevel- the event log level as requested by the usermessage- the message to logcause- the exception cause to log
-
log
Log if the logger and the current event log level are compatible. We log a formated message and its parameters.- Parameters:
eventLevel- the event log level as requested by the usermessage- the formated message to logparam- the parameter injected into the message
-
log
-
exceptionCaught
public void exceptionCaught(IoFilter.NextFilter nextFilter, IoSession session, Throwable cause) throws Exception FiltersIoHandler.exceptionCaught(IoSession,Throwable)event.- Specified by:
exceptionCaughtin interfaceIoFilter- Overrides:
exceptionCaughtin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventcause- The exception that cause this event to be received- Throws:
Exception- If an error occurred while processing the event
-
messageReceived
public void messageReceived(IoFilter.NextFilter nextFilter, IoSession session, Object message) throws Exception FiltersIoHandler.messageReceived(IoSession,Object)event.- Specified by:
messageReceivedin interfaceIoFilter- Overrides:
messageReceivedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventmessage- The received message- Throws:
Exception- If an error occurred while processing the event
-
messageSent
public void messageSent(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws Exception FiltersIoHandler.messageSent(IoSession,Object)event.- Specified by:
messageSentin interfaceIoFilter- Overrides:
messageSentin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventwriteRequest- TheWriteRequestthat contains the sent message- Throws:
Exception- If an error occurred while processing the event
-
sessionCreated
FiltersIoHandler.sessionCreated(IoSession)event.- Specified by:
sessionCreatedin interfaceIoFilter- Overrides:
sessionCreatedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event- Throws:
Exception- If an error occurred while processing the event
-
sessionOpened
FiltersIoHandler.sessionOpened(IoSession)event.- Specified by:
sessionOpenedin interfaceIoFilter- Overrides:
sessionOpenedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event- Throws:
Exception- If an error occurred while processing the event
-
sessionIdle
public void sessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status) throws Exception FiltersIoHandler.sessionIdle(IoSession,IdleStatus)event.- Specified by:
sessionIdlein interfaceIoFilter- Overrides:
sessionIdlein classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventstatus- TheIdleStatustype- Throws:
Exception- If an error occurred while processing the event
-
sessionClosed
FiltersIoHandler.sessionClosed(IoSession)event.- Specified by:
sessionClosedin interfaceIoFilter- Overrides:
sessionClosedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event- Throws:
Exception- If an error occurred while processing the event
-
setExceptionCaughtLogLevel
Set the LogLevel for the ExceptionCaught event.- Parameters:
level- The LogLevel to set
-
getExceptionCaughtLogLevel
Get the LogLevel for the ExceptionCaught event.- Returns:
- The LogLevel for the ExceptionCaught eventType
-
setMessageReceivedLogLevel
Set the LogLevel for the MessageReceived event.- Parameters:
level- The LogLevel to set
-
getMessageReceivedLogLevel
Get the LogLevel for the MessageReceived event.- Returns:
- The LogLevel for the MessageReceived eventType
-
setMessageSentLogLevel
Set the LogLevel for the MessageSent event.- Parameters:
level- The LogLevel to set
-
getMessageSentLogLevel
Get the LogLevel for the MessageSent event.- Returns:
- The LogLevel for the MessageSent eventType
-
setSessionCreatedLogLevel
Set the LogLevel for the SessionCreated event.- Parameters:
level- The LogLevel to set
-
getSessionCreatedLogLevel
Get the LogLevel for the SessionCreated event.- Returns:
- The LogLevel for the SessionCreated eventType
-
setSessionOpenedLogLevel
Set the LogLevel for the SessionOpened event.- Parameters:
level- The LogLevel to set
-
getSessionOpenedLogLevel
Get the LogLevel for the SessionOpened event.- Returns:
- The LogLevel for the SessionOpened eventType
-
setSessionIdleLogLevel
Set the LogLevel for the SessionIdle event.- Parameters:
level- The LogLevel to set
-
getSessionIdleLogLevel
Get the LogLevel for the SessionIdle event.- Returns:
- The LogLevel for the SessionIdle eventType
-
setSessionClosedLogLevel
Set the LogLevel for the SessionClosed event.- Parameters:
level- The LogLevel to set
-
getSessionClosedLogLevel
Get the LogLevel for the SessionClosed event.- Returns:
- The LogLevel for the SessionClosed eventType
-