[logback-user] NPE when extending RollingFileAppender

Ceki Gulcu ceki at qos.ch
Thu Feb 13 08:13:39 CET 2014


Enabling internal status messages is usually helpful.

See
http://logback.qos.ch/manual/configuration.html#automaticStatusPrinting

On 11.02.2014 15:49, Johny Johnson wrote:
> Yeah, the NPE occurs because rollingPolicy is null in the getFile call
> (triggeringPolicy is also null at this point) but can't seem to figure
> out why rollingPolicy isn't getting set. If I'm extending the
> RollingFileAppender do I need to and programmatically set everything it
> checks for in start() manually (vs. getting it from logback.xml)?
>
>
> Johny
>
>
> ------------------------------------------------------------------------
> *From:* Logback-user <logback-user-bounces at qos.ch> on behalf of David
> Roussel <nabble at diroussel.xsmail.com>
> *Sent:* Tuesday, February 11, 2014 3:18 AM
> *To:* logback users list
> *Subject:* Re: [logback-user] NPE when extending RollingFileAppender
>
> Did you try stepping through with a debugger to see what was going on?
>
> David
>
> On 10 Feb 2014, at 20:07, Johny Johnson <johny.johnson at apx-labs.com
> <mailto:johny.johnson at apx-labs.com>> wrote:
>
>> Hi,
>>
>> I'm having some trouble getting my custom appender which extends
>> RollingFileAppender working. I've got my logback config being read and
>> can extend FileAppender w/o issues but when I switch over to
>> RollingFileAppender, I get the following:
>> java.lang.NullPointerException: null
>> at
>> ch.qos.logback.core.rolling.RollingFileAppender.getFile(RollingFileAppender.java:122)
>> ~[org.apache.sling.commons.log:4.0.0]
>>
>>
>> Here is my config:
>> <appender name="CUSTOM" class="com.mypackage.logging.CustomLogAppender">
>> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
>> <fileNamePattern>log.%d{yyyy-MM-dd}.log</fileNamePattern>
>> </rollingPolicy>
>> <prudent>true</prudent>
>> <encoder>
>> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger{36} -
>> %msg%n</pattern>
>> </encoder>
>> </appender>
>>
>> The only method that I override is writeout() as I needed to handle
>> some particular events. Did I missing something obvious in terms of
>> configuration? Any help is appreciated.
>>
>> Thanks!
>>
>> Johny
>> _______________________________________________
>> Logback-user mailing list
>> Logback-user at qos.ch <mailto:Logback-user at qos.ch>
>> http://mailman.qos.ch/mailman/listinfo/logback-user
>
>
> _______________________________________________
> Logback-user mailing list
> Logback-user at qos.ch
> http://mailman.qos.ch/mailman/listinfo/logback-user



More information about the Logback-user mailing list