Class FileSdkLogger

    • Method Detail

      • getLevel

        public static ch.qos.logback.classic.Level getLevel​(String level)
      • isDebugEnabled

        public boolean isDebugEnabled​(SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to debug, otherwise return false.
        Specified by:
        isDebugEnabled in interface SdkLogger
        Parameters:
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to debug, otherwise false
      • isErrorEnabled

        public boolean isErrorEnabled​(SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to error, otherwise return false.
        Specified by:
        isErrorEnabled in interface SdkLogger
        Parameters:
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to error, otherwise false
      • isInfoEnabled

        public boolean isInfoEnabled​(SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to info, otherwise return false.
        Specified by:
        isInfoEnabled in interface SdkLogger
        Parameters:
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to info, otherwise false
      • isLevelEnabled

        public boolean isLevelEnabled​(ch.qos.logback.classic.Level level,
                                      SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to given level, otherwise false.
        Specified by:
        isLevelEnabled in interface SdkLogger
        Parameters:
        level - specified level
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to level, otherwise false
      • isTraceEnabled

        public boolean isTraceEnabled​(SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to trace, otherwise return false.
        Specified by:
        isTraceEnabled in interface SdkLogger
        Parameters:
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to trace, otherwise false
      • isWarnEnabled

        public boolean isWarnEnabled​(SdkLogAppenderType appenderType)
        Return true when logger with given appender type have current log level equal to warn, otherwise return false.
        Specified by:
        isWarnEnabled in interface SdkLogger
        Parameters:
        appenderType - specified appender type
        Returns:
        true when logger with appender type have current level equal to warn, otherwise false
      • logAlert

        public void logAlert​(ch.qos.logback.classic.Level level,
                             String message)
        SDK will generate and signal alerts in case of any special events. This could happen when network connection is dropped, rate-limiting thresholds are exceeded, when going over queue low/high watermarks, when feed error recovery is in progress, if persistent state store gets out-of-sync, when event dispatching is put on pause, when SDK library is reloaded, current status of login sequence, etc. Alerts will be dumped into dedicated alert logs. Special alerts (configurable) could be logged to other log appenders, like SMTP appender, NT Event Log appender or JmxLogger appender.
        Specified by:
        logAlert in interface SdkLogger
        Parameters:
        level - Log level
        message - Alert message
      • logAlert

        public void logAlert​(ch.qos.logback.classic.Level level,
                             String message,
                             Exception exception)
        SDK will generate and signal alerts in case of any special events. This could happen when network connection is dropped, rate-limiting thresholds are exceeded, when going over queue low/high watermarks, when feed error recovery is in progress, if persistent state store gets out-of-sync, when event dispatching is put on pause, when SDK library is reloaded, current status of login sequence, etc. Alerts will be dumped into dedicated alert logs. Special alerts (configurable) could be logged to other log appenders, like SMTP appender, NT Event Log appender or JmxLogger appender.
        Specified by:
        logAlert in interface SdkLogger
        Parameters:
        level - - Log level
        message - Alert message
        exception - Optional exception
      • logClientInteraction

        public void logClientInteraction​(ch.qos.logback.classic.Level level,
                                         String message)
        All interaction with the client software on the SDK interface level will be logged in a separate client communication log. This includes all method invocations on the SDK interface including parameter values, request parameter validation errors and other errors returned by the SDK, unhandled client exceptions, errors reported by the client handlers, timings of each call, etc.
        Specified by:
        logClientInteraction in interface SdkLogger
        Parameters:
        level - Log level
        message - String message
      • logClientInteraction

        public void logClientInteraction​(ch.qos.logback.classic.Level level,
                                         String message,
                                         Exception exception)
        Description copied from interface: SdkLogger
        All interaction with the client software on the SDK interface level will be logged in a separate client communication log. This includes all method invocations on the SDK interface including parameter values, request parameter validation errors and other errors returned by the SDK, unhandled client exceptions, errors reported by the client handlers, timings of each call, etc.
        Specified by:
        logClientInteraction in interface SdkLogger
        Parameters:
        level - Log level
        message - String message
        exception - Optional exception
      • logClientInteraction

        public void logClientInteraction​(ch.qos.logback.classic.Level level,
                                         String message,
                                         org.joda.time.Duration interval,
                                         Exception exception)
        Description copied from interface: SdkLogger
        All interaction with the client software on the SDK interface level will be logged in a separate client communication log. This includes all method invocations on the SDK interface including parameter values, request parameter validation errors and other errors returned by the SDK, unhandled client exceptions, errors reported by the client handlers, timings of each call, etc.
        Specified by:
        logClientInteraction in interface SdkLogger
        Parameters:
        level - Log level
        message - String message
        interval - Elapsed time while processing client request or client handler invocation (optional)
        exception - Optional exception
      • logInvalidMessage

        public void logInvalidMessage​(ch.qos.logback.classic.Level level,
                                      String message)
        Corrupt input feed data will be dumped into log files dedicated to corrupt input data (could be garbage and not even text, exceeding max buffer size). Invalid input messages will be dumped into log files dedicated to invalid input messages (text, but not necessarily XML).
        Specified by:
        logInvalidMessage in interface SdkLogger
        Parameters:
        level - Log level
        message - Invalid message
      • logTraffic

        public void logTraffic​(boolean outgoing,
                               String message)
        Depending on configuration SDK will be able to dump all feed XML traffic into dedicated traffic logs. This data is already logged at the feed server level but here the client will have possibility to configure traffic log filters based on the type of message, level of detail, match id, etc.
        Specified by:
        logTraffic in interface SdkLogger
        Parameters:
        outgoing - when true it specifies a message the SDK has sent; false means that a message SDK received
        message - Message that was either read or written to the communication channel
      • logTraffic

        public void logTraffic​(String message)
        Dump given message to traffic log.
        Specified by:
        logTraffic in interface SdkLogger
        Parameters:
        message - Message that was either read or written to the channel
      • log

        protected void log​(ch.qos.logback.classic.Logger logger,
                           ch.qos.logback.classic.Level level,
                           String message)
        Specified by:
        log in class BaseSdkLogger