[logback-dev] [JIRA] Resolved: (LBCORE-75) TimeBasedRollingPolicy doesn't seem to like file names with '(' in them

Ceki Gulcu (JIRA) noreply-jira at qos.ch
Fri Nov 21 18:22:14 CET 2008


     [ http://jira.qos.ch/browse/LBCORE-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ceki Gulcu resolved LBCORE-75.
------------------------------

    Resolution: Won't Fix

In logback's PatternLayout parentheses are special. See http://logback.qos.ch/manual/layouts.html
and search for "Parentheses are special".

HTH,

> TimeBasedRollingPolicy doesn't seem to like file names with '(' in them
> -----------------------------------------------------------------------
>
>                 Key: LBCORE-75
>                 URL: http://jira.qos.ch/browse/LBCORE-75
>             Project: logback-core
>          Issue Type: Improvement
>          Components: Appender
>    Affects Versions: 0.9.11
>         Environment: Windows XP (x64).  Java 6 (32 bit), Tomcat6 (in case you care)
>            Reporter: Rod Widdowson
>            Assignee: Logback dev list
>
> Apologies if this is PEBKAC
> I configured up my appender like this:
>     <appender name="DS_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
>         <File>/discoveryService.log</File>
>         <ImmediateFlush>true</ImmediateFlush>
>         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
>             <FileNamePattern>C:\Program Files (x86)\DS/logs/discovery-%d{yyyy-MM-dd}.log</FileNamePattern>
>         </rollingPolicy>
>         <layout class="ch.qos.logback.classic.PatternLayout">
>             <Pattern>%date{HH:mm:ss.SSS} %level [%logger] %msg%n%ex{full}%n</Pattern>
>         </layout>
>     </appender>
> The slightly odd "C:\Program Files (x86)\" is where Windows64 puts 32 bit executable (and it things that Tomcat it).  This failed.  Due to my own programs limitations it took me a while to get there, but this was because of this statement:
>    DateTokenConverter dtc = fileNamePattern.getDateTokenConverter();
>     if (dtc == null) {
>       throw new IllegalStateException("FileNamePattern ["
>           + fileNamePattern.getPattern()
>           + "] does not contain a valid DateToken");
>     }
> when I poked into fileNamePattern.getDateTokenConverter(); I see this:
> this	FileNamePattern  (id=159)	
> 	context	LoggerContext  (id=80)	
> 	headTokenConverter	LiteralConverter<E>  (id=160)	
> 		literal	"C:\Program Files (x86"	
> 		next	null	
> 	noContextWarning	0 [0x0]	
> 	pattern	"C:\Program Files (x86)\DS/logs/discovery-%d{yyyy-MM-dd}.log"	
> Note that headTokenConverter is malformed, and so we end up with a null dtc.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the logback-dev mailing list