Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
2.0-beta9
-
None
-
None
-
Windows 7, JDK 1.7, Eclipse 4.2
Description
I am using ${hostName} to include the hostname in the log file. When I use it it resolves to "${hostName}" the first time it is referred to in the log and then the proper hostname after that.
Example configuration (comment out the "Properties" section to duplicate):
<?xml version="1.0" encoding="UTF-8"?> <Configuration monitorInterval="60" name="SMSLog4JConfiguration"> <!-- add this to spit out debug about configuration: 'status="debug"' --> <!-- This seems to be a bug, but the $hostName seems to need to be referenced once before it can be used. Maybe it gets correct in a future log4j2 release --> <Properties> <Property name="theHostName">${hostName}</Property> </Properties> <Appenders> <RollingFile name="RollingFileAppender" fileName="/applicationlogs/CTMSApplicationService-${hostName}.log" filePattern="/applicationlogs/${hostName}-%d{MM-dd-yyyy}-%i.log"> <Policies> <OnStartupTriggeringPolicy /> <TimeBasedTriggeringPolicy interval="24" modulate="true" /> </Policies> <PatternLayout pattern="[%d{ISO8601}] [%t] %-5level %logger{6} - %msg%n" /> </RollingFile> </Appenders> <Loggers> <!-- default for "includeLocation" is false, but I want to be clear --> <Root level="debug" includeLocation="false"> <AppenderRef ref="RollingFileAppender" /> </Root> </Loggers> </Configuration>