org.apache.log4j.pattern
Class LogEvent

java.lang.Object
  extended by org.apache.log4j.pattern.LogEvent
All Implemented Interfaces:
Serializable

public class LogEvent
extends Object
implements Serializable

This class is a copy of o.a.l.spi.LoggingEvent from log4j 1.2.15 which has been renamed to keep the same overall class name length to allow a serialization written with a prior instance of o.a.l.spi.LoggingEvent to be deserialized with this class just by mangling the class name in the byte stream.

See Also:
Serialized Form

Field Summary
 String categoryName
          Deprecated. This field will be marked as private in future releases. Please do not access it directly. Use the getLoggerName() method instead.
 String fqnOfCategoryClass
          Fully qualified name of the calling category class.
 Priority level
          Deprecated. This field will be marked as private in future releases. Please do not access it directly. Use the getLevel() method instead.
 long timeStamp
          The number of milliseconds elapsed from 1/1/1970 until logging event was created.
 
Constructor Summary
LogEvent(String fqnOfCategoryClass, Category logger, long timeStamp, Priority level, Object message, Throwable throwable)
          Instantiate a LoggingEvent from the supplied parameters.
LogEvent(String fqnOfCategoryClass, Category logger, Priority level, Object message, Throwable throwable)
          Instantiate a LoggingEvent from the supplied parameters.
LogEvent(String fqnOfCategoryClass, Logger logger, long timeStamp, Level level, Object message, String threadName, ThrowableInformation throwable, String ndc, LocationInfo info, Map properties)
          Create new instance.
 
Method Summary
 String getFQNOfLoggerClass()
          Get the fully qualified name of the calling logger sub-class/wrapper.
 Level getLevel()
          Return the level of this event.
 LocationInfo getLocationInformation()
          Set the location information for this logging event.
 String getLoggerName()
          Return the name of the logger.
 Object getMDC(String key)
          Returns the the context corresponding to the key parameter.
 void getMDCCopy()
          Obtain a copy of this thread's MDC prior to serialization or asynchronous logging.
 Object getMessage()
          Return the message for this logging event.
 String getNDC()
          This method returns the NDC for this event.
 Map getProperties()
          Returns the set of properties for the event.
 String getProperty(String key)
          Return a property for this event.
 Set getPropertyKeySet()
          Returns the set of the key values in the properties for the event.
 String getRenderedMessage()
           
static long getStartTime()
          Returns the time when the application started, in milliseconds elapsed since 01.01.1970.
 String getThreadName()
           
 ThrowableInformation getThrowableInformation()
          Returns the throwable information contained within this event.
 String[] getThrowableStrRep()
          Return this event's throwable's string[] representaion.
 long getTimeStamp()
          Getter for the event's time stamp.
 boolean locationInformationExists()
          Check for the existence of location information without creating it (a byproduct of calling getLocationInformation).
 void setProperty(String propName, String propValue)
          Set value for MDC property.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fqnOfCategoryClass

public final transient String fqnOfCategoryClass
Fully qualified name of the calling category class.


categoryName

public final String categoryName
Deprecated. This field will be marked as private in future releases. Please do not access it directly. Use the getLoggerName() method instead.

The category (logger) name.


level

public transient Priority level
Deprecated. This field will be marked as private in future releases. Please do not access it directly. Use the getLevel() method instead.
Level of logging event. Level cannot be serializable because it is a flyweight. Due to its special seralization it cannot be declared final either.

This field should not be accessed directly. You shoud use the getLevel() method instead.


timeStamp

public final long timeStamp
The number of milliseconds elapsed from 1/1/1970 until logging event was created.

Constructor Detail

LogEvent

public LogEvent(String fqnOfCategoryClass,
                Category logger,
                Priority level,
                Object message,
                Throwable throwable)
Instantiate a LoggingEvent from the supplied parameters.

Except timeStamp all the other fields of LoggingEvent are filled when actually needed.

Parameters:
logger - The logger generating this event.
level - The level of this event.
message - The message of this event.
throwable - The throwable of this event.

LogEvent

public LogEvent(String fqnOfCategoryClass,
                Category logger,
                long timeStamp,
                Priority level,
                Object message,
                Throwable throwable)
Instantiate a LoggingEvent from the supplied parameters.

Except timeStamp all the other fields of LoggingEvent are filled when actually needed.

Parameters:
logger - The logger generating this event.
timeStamp - the timestamp of this logging event
level - The level of this event.
message - The message of this event.
throwable - The throwable of this event.

LogEvent

public LogEvent(String fqnOfCategoryClass,
                Logger logger,
                long timeStamp,
                Level level,
                Object message,
                String threadName,
                ThrowableInformation throwable,
                String ndc,
                LocationInfo info,
                Map properties)
Create new instance.

Parameters:
fqnOfCategoryClass - Fully qualified class name of Logger implementation.
logger - The logger generating this event.
timeStamp - the timestamp of this logging event
level - The level of this event.
message - The message of this event.
threadName - thread name
throwable - The throwable of this event.
ndc - Nested diagnostic context
info - Location info
properties - MDC properties
Since:
1.2.15
Method Detail

getLocationInformation

public LocationInfo getLocationInformation()
Set the location information for this logging event. The collected information is cached for future use.


getLevel

public Level getLevel()
Return the level of this event. Use this form instead of directly accessing the level field.


getLoggerName

public String getLoggerName()
Return the name of the logger. Use this form instead of directly accessing the categoryName field.


getMessage

public Object getMessage()
Return the message for this logging event.

Before serialization, the returned object is the message passed by the user to generate the logging event. After serialization, the returned value equals the String form of the message possibly after object rendering.

Since:
1.1

getNDC

public String getNDC()
This method returns the NDC for this event. It will return the correct content even if the event was generated in a different thread or even on a different machine. The NDC.get() method should never be called directly.


getMDC

public Object getMDC(String key)
Returns the the context corresponding to the key parameter. If there is a local MDC copy, possibly because we are in a logging server or running inside AsyncAppender, then we search for the key in MDC copy, if a value is found it is returned. Otherwise, if the search in MDC copy returns a null result, then the current thread's MDC is used.

Note that both the local MDC copy and the current thread's MDC are searched.


getMDCCopy

public void getMDCCopy()
Obtain a copy of this thread's MDC prior to serialization or asynchronous logging.


getRenderedMessage

public String getRenderedMessage()

getStartTime

public static long getStartTime()
Returns the time when the application started, in milliseconds elapsed since 01.01.1970.


getThreadName

public String getThreadName()

getThrowableInformation

public ThrowableInformation getThrowableInformation()
Returns the throwable information contained within this event. May be null if there is no such information.

Note that the Throwable object contained within a ThrowableInformation does not survive serialization.

Since:
1.1

getThrowableStrRep

public String[] getThrowableStrRep()
Return this event's throwable's string[] representaion.


setProperty

public final void setProperty(String propName,
                              String propValue)
Set value for MDC property. This adds the specified MDC property to the event. Access to the MDC is not synchronized, so this method should only be called when it is known that no other threads are accessing the MDC.

Parameters:
propName -
propValue -
Since:
1.2.15

getProperty

public final String getProperty(String key)
Return a property for this event. The return value can be null. Equivalent to getMDC(String) in log4j 1.2. Provided for compatibility with log4j 1.3.

Parameters:
key - property name
Returns:
property value or null if property not set
Since:
1.2.15

locationInformationExists

public final boolean locationInformationExists()
Check for the existence of location information without creating it (a byproduct of calling getLocationInformation).

Returns:
true if location information has been extracted.
Since:
1.2.15

getTimeStamp

public final long getTimeStamp()
Getter for the event's time stamp. The time stamp is calculated starting from 1970-01-01 GMT.

Returns:
timestamp
Since:
1.2.15

getPropertyKeySet

public Set getPropertyKeySet()
Returns the set of the key values in the properties for the event. The returned set is unmodifiable by the caller. Provided for compatibility with log4j 1.3

Returns:
Set an unmodifiable set of the property keys.
Since:
1.2.15

getProperties

public Map getProperties()
Returns the set of properties for the event. The returned set is unmodifiable by the caller. Provided for compatibility with log4j 1.3

Returns:
Set an unmodifiable map of the properties.
Since:
1.2.15

getFQNOfLoggerClass

public String getFQNOfLoggerClass()
Get the fully qualified name of the calling logger sub-class/wrapper. Provided for compatibility with log4j 1.3

Returns:
fully qualified class name, may be null.
Since:
1.2.15


Copyright © 1999-2012 Apache Software Foundation. All Rights Reserved.