Class LogRecord

    • Field Detail

      • _seqCount

        protected static long _seqCount
      • _message

        protected String _message
      • _sequenceNumber

        protected long _sequenceNumber
      • _millis

        protected long _millis
      • _category

        protected String _category
      • _thread

        protected String _thread
      • _thrownStackTrace

        protected String _thrownStackTrace
      • _location

        protected String _location
    • Constructor Detail

      • LogRecord

        public LogRecord()
    • Method Detail

      • setLevel

        public void setLevel​(LogLevel level)
        Set the level of this LogRecord.
        Parameters:
        level - The LogLevel for this record.
        See Also:
        getLevel(), LogLevel
      • isSevereLevel

        public abstract boolean isSevereLevel()
        Abstract method. Must be overridden to indicate what log level to show in red.
      • hasThrown

        public boolean hasThrown()
        Returns:
        true if getThrown().toString() is a non-empty string.
      • isFatal

        public boolean isFatal()
        Returns:
        true if isSevereLevel() or hasThrown() returns true.
      • getCategory

        public String getCategory()
        Get the category asscociated with this LogRecord. For a more detailed description of what a category is see setCategory().
        Returns:
        The category of this record.
        See Also:
        setCategory(String)
      • setCategory

        public void setCategory​(String category)
        Set the category associated with this LogRecord. A category represents a hierarchical dot (".") separated namespace for messages. The definition of a category is application specific, but a common convention is as follows:

        When logging messages for a particluar class you can use its class name: com.thoughtworks.framework.servlet.ServletServiceBroker.

        Futhermore, to log a message for a particular method in a class add the method name: com.thoughtworks.framework.servlet.ServletServiceBroker.init().

        Parameters:
        category - The category for this record.
        See Also:
        getCategory()
      • getMessage

        public String getMessage()
        Get the message asscociated with this LogRecord.
        Returns:
        The message of this record.
        See Also:
        setMessage(String)
      • setMessage

        public void setMessage​(String message)
        Set the message associated with this LogRecord.
        Parameters:
        message - The message for this record.
        See Also:
        getMessage()
      • getSequenceNumber

        public long getSequenceNumber()
        Get the sequence number associated with this LogRecord. Sequence numbers are generally assigned when a LogRecord is constructed. Sequence numbers start at 0 and increase with each newly constructed LogRocord.
        Returns:
        The sequence number of this record.
        See Also:
        setSequenceNumber(long)
      • setSequenceNumber

        public void setSequenceNumber​(long number)
        Set the sequence number assocsiated with this LogRecord. A sequence number will automatically be assigned to evey newly constructed LogRecord, however, this method can override the value.
        Parameters:
        number - The sequence number.
        See Also:
        getSequenceNumber()
      • getMillis

        public long getMillis()
        Get the event time of this record in milliseconds from 1970. When a LogRecord is constructed the event time is set but may be overridden by calling setMillis();
        Returns:
        The event time of this record in milliseconds from 1970.
        See Also:
        setMillis(long)
      • setMillis

        public void setMillis​(long millis)
        Set the event time of this record. When a LogRecord is constructed the event time is set but may be overridden by calling this method.
        Parameters:
        millis - The time in milliseconds from 1970.
        See Also:
        getMillis()
      • getThreadDescription

        public String getThreadDescription()
        Get the thread description asscociated with this LogRecord. When a LogRecord is constructed, the thread description is set by calling: Thread.currentThread().toString(). You may supply a thread description of your own by calling the setThreadDescription(String) method.
        Returns:
        The thread description of this record.
        See Also:
        setThreadDescription(String)
      • setThreadDescription

        public void setThreadDescription​(String threadDescription)
        Set the thread description associated with this LogRecord. When a LogRecord is constructed, the thread description is set by calling: Thread.currentThread().toString(). You may supply a thread description of your own by calling this method.
        Parameters:
        threadDescription - The description of the thread for this record.
        See Also:
        getThreadDescription()
      • getThrownStackTrace

        public String getThrownStackTrace()
        Get the stack trace in a String-based format for the associated Throwable of this LogRecord. The stack trace in a String-based format is set when the setThrown(Throwable) method is called.

        Why do we need this method considering that we have the getThrown() and setThrown() methods? A Throwable object may not be serializable, however, a String representation of it is. Users of LogRecords should generally call this method over getThrown() for the reasons of serialization.

        Returns:
        The Stack Trace for the asscoiated Throwable of this LogRecord.
        See Also:
        setThrown(Throwable), getThrown()
      • setThrownStackTrace

        public void setThrownStackTrace​(String trace)
        Set the ThrownStackTrace for the log record.
        Parameters:
        trace - A String to associate with this LogRecord
        See Also:
        getThrownStackTrace()
      • setThrown

        public void setThrown​(Throwable thrown)
        Set the Throwable associated with this LogRecord. When this method is called, the stack trace in a String-based format is made available via the getThrownStackTrace() method.
        Parameters:
        thrown - A Throwable to associate with this LogRecord.
        See Also:
        getThrown(), getThrownStackTrace()
      • toString

        public String toString()
        Return a String representation of this LogRecord.
        Overrides:
        toString in class Object
      • getNDC

        public String getNDC()
        Get the NDC (nested diagnostic context) for this record.
        Returns:
        The string representing the NDC.
      • setNDC

        public void setNDC​(String ndc)
        Set the NDC (nested diagnostic context) for this record.
        Parameters:
        ndc - A string representing the NDC.
      • getLocation

        public String getLocation()
        Get the location in code where this LogRecord originated.
        Returns:
        The string containing the location information.
      • setLocation

        public void setLocation​(String location)
        Set the location in code where this LogRecord originated.
        Parameters:
        location - A string containing location information.
      • resetSequenceNumber

        public static void resetSequenceNumber()
        Resets that sequence number to 0.
      • getNextId

        protected static long getNextId()