You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4cxx-user@logging.apache.org by Rainer Schuetze <sc...@geoinform.fh-mainz.de> on 2006/03/15 16:18:54 UTC

TimeBasedRollingPolicy, get it running

Hi,

I've tried to get the TimeBasedRollingPolicy running. So I was wondering 
why the DOMConfigurator couldn't create an Instance for the 
TimeBasedRollingPolicy.

I've debugged my App step by step and figured out, that the 
TimeBasedRollingPolicy was declared as an Abstract class. What is the 
reason for this?
However, I changed the the declaration:
           //DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
	  DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
and failed at the Date pattern. In the jDOC, the example is documented as:
<param name="fileNamePattern" value="./log/test1-{yyyy-MM}"/>
but I needed to mark the pattern as a date with [%d]:
<param name="fileNamePattern" value="./log/test1-%d{yyyy-MM}"/>
At the current state of Log4CXX, the Date format pattern is required.

Regards

Rainer

-- 
Rainer Schuetze

i3mainz - Fachhochschule Mainz
Holzstrasse 36
55116 Mainz
Germany

Tel: +49 (0)6131 2859 682
Fax: +49 (0)6131 2859 699
schuetze@geoinform.fh-mainz.de
http://www.i3mainz.fh-mainz.de


Re: TimeBasedRollingPolicy, get it running

Posted by Andreas Fester <af...@apache.org>.
Matthew Campbell wrote:
> UGH your right mine says, its been a while so I probaly just forgot
> that I changed it. It seems log4cxx is rough around the edges
> sometimes.
> 
>           DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> Double checked svn head, and your right it says
>    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)

I dont see any reason why TimeBasedRollingPolicy should be
declared as "abstract" class. See
http://issues.apache.org/jira/browse/LOGCXX-131
Fix is now in SVN head.

Regards,

	Andreas

> 
> On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> 
>>Hi,
>>
>>I changed the declaration of the TimeBasedRollingPolicy as
>>-    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>+    DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>and the logger works fine for me.
>>
>>Is the CVS not Up-to-Date or what is the reason to declare
>>TimeBasedRollingPolicy as abstract?
>>
[...]


Re: TimeBasedRollingPolicy, get it running

Posted by Andreas Fester <af...@apache.org>.
Matthew Campbell wrote:
> UGH your right mine says, its been a while so I probaly just forgot
> that I changed it. It seems log4cxx is rough around the edges
> sometimes.
> 
>           DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> Double checked svn head, and your right it says
>    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)

I dont see any reason why TimeBasedRollingPolicy should be
declared as "abstract" class. See
http://issues.apache.org/jira/browse/LOGCXX-131
Fix is now in SVN head.

Regards,

	Andreas

> 
> On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> 
>>Hi,
>>
>>I changed the declaration of the TimeBasedRollingPolicy as
>>-    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>+    DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>and the logger works fine for me.
>>
>>Is the CVS not Up-to-Date or what is the reason to declare
>>TimeBasedRollingPolicy as abstract?
>>
[...]


Re: TimeBasedRollingPolicy, get it running

Posted by Matthew Campbell <hy...@hyperworks.nu>.
UGH your right mine says, its been a while so I probaly just forgot
that I changed it. It seems log4cxx is rough around the edges
sometimes.

          DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
Double checked svn head, and your right it says
   DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)

On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> Hi,
>
> I changed the declaration of the TimeBasedRollingPolicy as
> -    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> +    DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> and the logger works fine for me.
>
> Is the CVS not Up-to-Date or what is the reason to declare
> TimeBasedRollingPolicy as abstract?
>
> Regards
> Rainer
>
>
>
> Rainer Schuetze schrieb:
> > Hi Matthew,
> >
> > I'm also using the CVS head from
> > http://svn.apache.org/repos/asf/logging/log4cxx/trunk
> > My current Version is: Revision 386095.
> > I'm running Log4CXX on XP with the msvc compiler 6.0.
> >
> > I've checked out the current Version and tried it again with your
> > configuration, but failed. The new instance couldn't be created by the
> > classLoader, the TimeBasedRollingPolicy is declared abstract.
> > I have no idea why the TimeBasedRollingPolicy works fine on your computer.
> > I've found a mailing from Iwan Tomlow at:
> > http://blog.gmane.org/gmane.comp.apache.logging.log4cxx.user/day=20050803?set_blog_all=yes#
> >
> > which had the same problem.
> >
> > Regards
> > Rainer
> >
> > Matthew Campbell schrieb:
> >
> >> I'm using the timebased rolling policy fine with CVS head from like
> >> January(tarball on the website won't work) here is what I used. Yeah
> >> and only the XML based configuration can use the timebasedrolling
> >> policy took me a while to figure that out :(
> >>
> >>   <appender name="main" class="org.apache.log4j.RollingFileAppender"
> >> append="false">
> >>      <rollingPolicy class="org.apache.log4j.TimeBasedRollingPolicy">
> >>       <param name="FileNamePattern" value="lobbyserver.%d.log"/>
> >>     </rollingPolicy>
> >>
> >>     <layout class="org.apache.log4j.PatternLayout">
> >>       <param name="ConversionPattern" value="%d{%y.%m.%d %H:%M:%S}
> >> [%5t] %5p %c - %n%m%n%n"/>
> >>     </layout>
> >>   </appender>
> >>
> >>
> >> On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> >>
> >>> Hi,
> >>>
> >>> I've tried to get the TimeBasedRollingPolicy running. So I was wondering
> >>> why the DOMConfigurator couldn't create an Instance for the
> >>> TimeBasedRollingPolicy.
> >>>
> >>> I've debugged my App step by step and figured out, that the
> >>> TimeBasedRollingPolicy was declared as an Abstract class. What is the
> >>> reason for this?
> >>> However, I changed the the declaration:
> >>>           //DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> >>>          DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> >>> and failed at the Date pattern. In the jDOC, the example is
> >>> documented as:
> >>> <param name="fileNamePattern" value="./log/test1-{yyyy-MM}"/>
> >>> but I needed to mark the pattern as a date with [%d]:
> >>> <param name="fileNamePattern" value="./log/test1-%d{yyyy-MM}"/>
> >>> At the current state of Log4CXX, the Date format pattern is required.
> >>>
> >>> Regards
> >>>
> >>> Rainer
> >>>
> >>> --
> >>> Rainer Schuetze
> >>>
> >>> i3mainz - Fachhochschule Mainz
> >>> Holzstrasse 36
> >>> 55116 Mainz
> >>> Germany
> >>>
> >>> Tel: +49 (0)6131 2859 682
> >>> Fax: +49 (0)6131 2859 699
> >>> schuetze@geoinform.fh-mainz.de
> >>> http://www.i3mainz.fh-mainz.de
> >>>
> >>>
> >>
> >>
> >>
> >>
> >> --
> >> If video games influenced youth, all the kids who played Pac-Man would
> >> spend all their time walking around in dark rooms listening to
> >> electronic music and munching on magic pills.
> >>
> >>
> >
>
> --
> Rainer Schuetze
>
> i3mainz - Fachhochschule Mainz
> Holzstrasse 36
> 55116 Mainz
> Germany
>
> Tel: +49 (0)6131 2859 682
> Fax: +49 (0)6131 2859 699
> schuetze@geoinform.fh-mainz.de
> http://www.i3mainz.fh-mainz.de
>
>


--
If video games influenced youth, all the kids who played Pac-Man would
spend all their time walking around in dark rooms listening to
electronic music and munching on magic pills.

Re: TimeBasedRollingPolicy, get it running

Posted by Rainer Schuetze <sc...@geoinform.fh-mainz.de>.
Hi,

I changed the declaration of the TimeBasedRollingPolicy as
-    DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
+    DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
and the logger works fine for me.

Is the CVS not Up-to-Date or what is the reason to declare 
TimeBasedRollingPolicy as abstract?

Regards
Rainer



Rainer Schuetze schrieb:
> Hi Matthew,
> 
> I'm also using the CVS head from 
> http://svn.apache.org/repos/asf/logging/log4cxx/trunk
> My current Version is: Revision 386095.
> I'm running Log4CXX on XP with the msvc compiler 6.0.
> 
> I've checked out the current Version and tried it again with your 
> configuration, but failed. The new instance couldn't be created by the 
> classLoader, the TimeBasedRollingPolicy is declared abstract.
> I have no idea why the TimeBasedRollingPolicy works fine on your computer.
> I've found a mailing from Iwan Tomlow at:
> http://blog.gmane.org/gmane.comp.apache.logging.log4cxx.user/day=20050803?set_blog_all=yes# 
> 
> which had the same problem.
> 
> Regards
> Rainer
> 
> Matthew Campbell schrieb:
> 
>> I'm using the timebased rolling policy fine with CVS head from like
>> January(tarball on the website won't work) here is what I used. Yeah
>> and only the XML based configuration can use the timebasedrolling
>> policy took me a while to figure that out :(
>>
>>   <appender name="main" class="org.apache.log4j.RollingFileAppender"
>> append="false">
>>      <rollingPolicy class="org.apache.log4j.TimeBasedRollingPolicy">
>>       <param name="FileNamePattern" value="lobbyserver.%d.log"/>
>>     </rollingPolicy>
>>
>>     <layout class="org.apache.log4j.PatternLayout">
>>       <param name="ConversionPattern" value="%d{%y.%m.%d %H:%M:%S}
>> [%5t] %5p %c - %n%m%n%n"/>
>>     </layout>
>>   </appender>
>>
>>
>> On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
>>
>>> Hi,
>>>
>>> I've tried to get the TimeBasedRollingPolicy running. So I was wondering
>>> why the DOMConfigurator couldn't create an Instance for the
>>> TimeBasedRollingPolicy.
>>>
>>> I've debugged my App step by step and figured out, that the
>>> TimeBasedRollingPolicy was declared as an Abstract class. What is the
>>> reason for this?
>>> However, I changed the the declaration:
>>>           //DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>>          DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>> and failed at the Date pattern. In the jDOC, the example is 
>>> documented as:
>>> <param name="fileNamePattern" value="./log/test1-{yyyy-MM}"/>
>>> but I needed to mark the pattern as a date with [%d]:
>>> <param name="fileNamePattern" value="./log/test1-%d{yyyy-MM}"/>
>>> At the current state of Log4CXX, the Date format pattern is required.
>>>
>>> Regards
>>>
>>> Rainer
>>>
>>> -- 
>>> Rainer Schuetze
>>>
>>> i3mainz - Fachhochschule Mainz
>>> Holzstrasse 36
>>> 55116 Mainz
>>> Germany
>>>
>>> Tel: +49 (0)6131 2859 682
>>> Fax: +49 (0)6131 2859 699
>>> schuetze@geoinform.fh-mainz.de
>>> http://www.i3mainz.fh-mainz.de
>>>
>>>
>>
>>
>>
>>
>> -- 
>> If video games influenced youth, all the kids who played Pac-Man would
>> spend all their time walking around in dark rooms listening to
>> electronic music and munching on magic pills.
>>
>>
> 

-- 
Rainer Schuetze

i3mainz - Fachhochschule Mainz
Holzstrasse 36
55116 Mainz
Germany

Tel: +49 (0)6131 2859 682
Fax: +49 (0)6131 2859 699
schuetze@geoinform.fh-mainz.de
http://www.i3mainz.fh-mainz.de


Re: TimeBasedRollingPolicy, get it running

Posted by Rainer Schuetze <sc...@geoinform.fh-mainz.de>.
Hi Matthew,

I'm also using the CVS head from 
http://svn.apache.org/repos/asf/logging/log4cxx/trunk
My current Version is: Revision 386095.
I'm running Log4CXX on XP with the msvc compiler 6.0.

I've checked out the current Version and tried it again with your 
configuration, but failed. The new instance couldn't be created by the 
classLoader, the TimeBasedRollingPolicy is declared abstract.
I have no idea why the TimeBasedRollingPolicy works fine on your computer.
I've found a mailing from Iwan Tomlow at:
http://blog.gmane.org/gmane.comp.apache.logging.log4cxx.user/day=20050803?set_blog_all=yes#
which had the same problem.

Regards
Rainer

Matthew Campbell schrieb:
> I'm using the timebased rolling policy fine with CVS head from like
> January(tarball on the website won't work) here is what I used. Yeah
> and only the XML based configuration can use the timebasedrolling
> policy took me a while to figure that out :(
> 
>   <appender name="main" class="org.apache.log4j.RollingFileAppender"
> append="false">
>      <rollingPolicy class="org.apache.log4j.TimeBasedRollingPolicy">
>       <param name="FileNamePattern" value="lobbyserver.%d.log"/>
>     </rollingPolicy>
> 
>     <layout class="org.apache.log4j.PatternLayout">
>       <param name="ConversionPattern" value="%d{%y.%m.%d %H:%M:%S}
> [%5t] %5p %c - %n%m%n%n"/>
>     </layout>
>   </appender>
> 
> 
> On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> 
>>Hi,
>>
>>I've tried to get the TimeBasedRollingPolicy running. So I was wondering
>>why the DOMConfigurator couldn't create an Instance for the
>>TimeBasedRollingPolicy.
>>
>>I've debugged my App step by step and figured out, that the
>>TimeBasedRollingPolicy was declared as an Abstract class. What is the
>>reason for this?
>>However, I changed the the declaration:
>>           //DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>          DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>>and failed at the Date pattern. In the jDOC, the example is documented as:
>><param name="fileNamePattern" value="./log/test1-{yyyy-MM}"/>
>>but I needed to mark the pattern as a date with [%d]:
>><param name="fileNamePattern" value="./log/test1-%d{yyyy-MM}"/>
>>At the current state of Log4CXX, the Date format pattern is required.
>>
>>Regards
>>
>>Rainer
>>
>>--
>>Rainer Schuetze
>>
>>i3mainz - Fachhochschule Mainz
>>Holzstrasse 36
>>55116 Mainz
>>Germany
>>
>>Tel: +49 (0)6131 2859 682
>>Fax: +49 (0)6131 2859 699
>>schuetze@geoinform.fh-mainz.de
>>http://www.i3mainz.fh-mainz.de
>>
>>
> 
> 
> 
> 
> --
> If video games influenced youth, all the kids who played Pac-Man would
> spend all their time walking around in dark rooms listening to
> electronic music and munching on magic pills.
> 
> 

-- 
Rainer Schuetze

i3mainz - Fachhochschule Mainz
Holzstrasse 36
55116 Mainz
Germany

Tel: +49 (0)6131 2859 682
Fax: +49 (0)6131 2859 699
schuetze@geoinform.fh-mainz.de
http://www.i3mainz.fh-mainz.de


Re: TimeBasedRollingPolicy, get it running

Posted by Matthew Campbell <hy...@hyperworks.nu>.
I'm using the timebased rolling policy fine with CVS head from like
January(tarball on the website won't work) here is what I used. Yeah
and only the XML based configuration can use the timebasedrolling
policy took me a while to figure that out :(

  <appender name="main" class="org.apache.log4j.RollingFileAppender"
append="false">
     <rollingPolicy class="org.apache.log4j.TimeBasedRollingPolicy">
      <param name="FileNamePattern" value="lobbyserver.%d.log"/>
    </rollingPolicy>

    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{%y.%m.%d %H:%M:%S}
[%5t] %5p %c - %n%m%n%n"/>
    </layout>
  </appender>


On 3/15/06, Rainer Schuetze <sc...@geoinform.fh-mainz.de> wrote:
> Hi,
>
> I've tried to get the TimeBasedRollingPolicy running. So I was wondering
> why the DOMConfigurator couldn't create an Instance for the
> TimeBasedRollingPolicy.
>
> I've debugged my App step by step and figured out, that the
> TimeBasedRollingPolicy was declared as an Abstract class. What is the
> reason for this?
> However, I changed the the declaration:
>            //DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
>           DECLARE_LOG4CXX_OBJECT(TimeBasedRollingPolicy)
> and failed at the Date pattern. In the jDOC, the example is documented as:
> <param name="fileNamePattern" value="./log/test1-{yyyy-MM}"/>
> but I needed to mark the pattern as a date with [%d]:
> <param name="fileNamePattern" value="./log/test1-%d{yyyy-MM}"/>
> At the current state of Log4CXX, the Date format pattern is required.
>
> Regards
>
> Rainer
>
> --
> Rainer Schuetze
>
> i3mainz - Fachhochschule Mainz
> Holzstrasse 36
> 55116 Mainz
> Germany
>
> Tel: +49 (0)6131 2859 682
> Fax: +49 (0)6131 2859 699
> schuetze@geoinform.fh-mainz.de
> http://www.i3mainz.fh-mainz.de
>
>



--
If video games influenced youth, all the kids who played Pac-Man would
spend all their time walking around in dark rooms listening to
electronic music and munching on magic pills.