Interface LogEventListener

  • All Known Implementing Classes:
    XALogger

    public interface LogEventListener
    This interface is implemented by users of the Logger.

    If a LogEventListener is registered, the logger will call the LogEventListener when interesting Log Events occur. For example, the Logger will notify the LogEventListener when the current log file is 50% full to allow the application to copy old log entries forward.

    If the application does not register a LogEventListener it will not have visibility to Log events.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int DEBUG
      used to log low level events.
      static int ERROR
      used to log non-fatal error messages.
      static int FATAL
      used to log fatal error messages that should cause shutdown of the application using HOWL.
      static int INFO
      used to log information messages such as file open/close.
      static int TRACE
      used to trace method entry/exit and other low level events.
      static int WARN
      used to log warnings.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean isLoggable​(int level)
      determine if log messages for requested level will be written to the log.
      void log​(int level, java.lang.String message)
      write a log message to the event log.
      void log​(int level, java.lang.String message, java.lang.Throwable thrown)
      write a log message to the event log with exception information.
      void logOverflowNotification​(long logkey)
      Called by Logger to notify the LogEventListener that a log file overflow is approaching.
    • Field Detail

      • TRACE

        static final int TRACE
        used to trace method entry/exit and other low level events.
        See Also:
        Constant Field Values
      • INFO

        static final int INFO
        used to log information messages such as file open/close.
        See Also:
        Constant Field Values
      • FATAL

        static final int FATAL
        used to log fatal error messages that should cause shutdown of the application using HOWL.
        See Also:
        Constant Field Values
    • Method Detail

      • logOverflowNotification

        void logOverflowNotification​(long logkey)
        Called by Logger to notify the LogEventListener that a log file overflow is approaching.
        Parameters:
        logkey - lowest safe log key.

        LogEventListener should cause log records with keys less than logkey to be copied forward to prevent a LogOverflowException.

        Hopefully, the LogEventListener will be able to regenerate the records from memory without having to read the physical log file. For example, a Transaction Manager should maintain a table of transactions that are in the COMMITTING mode, with associated log key for each transaction. The logOverflowNotification method would call Logger.put() for each transaction that has a log key less than logKey .

        Before returning from logOverflowNotification the LogEventListener should call Logger.mark(newMark, force) with force set to true to assure that the new records have been committed to physical disk.

      • isLoggable

        boolean isLoggable​(int level)
        determine if log messages for requested level will be written to the log.
        Returns:
        true if the log level is being logged
        See Also:
        java.util.logging.Logger#isLoggable()
      • log

        void log​(int level,
                 java.lang.String message)
        write a log message to the event log.
        Parameters:
        level - log level
        message - text to be logged
      • log

        void log​(int level,
                 java.lang.String message,
                 java.lang.Throwable thrown)
        write a log message to the event log with exception information.
        Parameters:
        level - log level
        message - text to be logged
        thrown - Throwable related to the event being logged.