Here are some things I have observed when trying to use the context map and the 
header attribute for a pattern.  Are these bugs or are they suppose to work 
this way?

  1.   When I try to use the context map values in the header attribute of a 
patternLayout of a RollingRandomAccessFile appender the values are not 
available the first time the log file is created but they do become available 
when the log is created as part of a rollover event.  It seems that a rollover 
must occur before the context values are available to the header attribute.  
Also, if I make the logger and/or appender async then the values also don’t 
seem to be available even though I have the location attribute set to true on 
the async logger and the async ref appender.
  2.  If I add items to the context map from within a specific class those 
values will not be available to the Root logger.  I have to define at least 1 
logger that is defined with a portion of the path to the class where the items 
were added.  For example if I have a class called com.sample.MyClass then any 
items I add to the context map will be available to a logger defined as at 
least com, but the Root Logger and any appender used by the Root logger will 
not see them.
  3.  It appears that the header attribute value can’t use any of the 
formatting or substitution features, i.e. it has to be an exact string.  This 
means that to enter the date, time, or just a  newline I have to add it to the 
end of the string that is entered in the context map in the application rather 
than just adding it in the configuration file.
  4.  When the appender is stdout it won’t display the header attribute value.

Blaine

Sent from my iPhone

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to