[logback-user] What would cause "java.lang.NoClassDefFoundError: ch/qos/logback/classic/spi/ThrowableProxy" in long running daemon

Paul Krause pkrause at investsoftech.com
Mon Aug 31 17:47:25 CEST 2015


Seems like overkill. All you need to do is preload the classes you need to log your failures while NFS is still working normally, right?   For example, you could log a test exception as part of your initialization sequence. Once the classes have been loaded into the JVM they won't be evicted. 

Thanks,
Paul

> On Aug 31, 2015, at 11:16, David Roussel <nabble at diroussel.xsmail.com> wrote:
> 
> Hopefully /tmp is local disk?
> 
> Write a bootstrapped that reads the jars off the network, writes them to /tmp, construct a class path then create a classloader and boot your main class. 
> 
> Or you could use the capsule open source project which pretty much does that for you. 
> 
> David
> 
>> On 31 Aug 2015, at 16:03, Fred Toth <ftoth at synernet.com> wrote:
>> 
>> Hi David,
>> 
>> For better or worse, these particular apps are on one of these modern disk systems where EVERYTHING is an NFS mount. Supposed to "just work", you know.
>> 
>> Thanks,
>> Fred
>> 
>>> On 8/31/15 6:55 AM, David Roussel wrote:
>>> Are you storing your jar files on the NFS mounts?
>>> 
>>> Seem like a bad idea if you are.  If a network error causes an exception, and the exception handler calls a class that has not been loaded yet, the class loader will try to load it.
>>> 
>>> The network is unreliable, you must be able to handle network failures.
>>> 
>>> If you are using NFS for ease of deployment, say for batch jobs, there is another way.
>>> 
>>> David
>>> 
>>>> On 30 Aug 2015, at 01:58, Fred Toth <ftoth at synernet.com> wrote:
>>>> 
>>>> Hi,
>>>> 
>>>> We have multiple production processes that run 24 hours a day, 7 days a week. All use slf4j/logback and recently we had several of these (seemingly coincidentally) spew:
>>>> 
>>>> java.lang.NoClassDefFoundError: ch/qos/logback/classic/spi/ThrowableProxy
>>>> 
>>>> These are long running processes where nothing has changed recently. Obviously the logback jars are available, in the right place, etc.
>>>> 
>>>> I'm stumped. There are some hints of some possible system related problem (like missing NFS mount, possibly).
>>>> 
>>>> Does logback dynamically load the above class? Again, this error is out of the blue, from a process that may have been running for days or weeks.
>>>> 
>>>> Any ideas?
>>>> 
>>>> We're using version logback 1.0.13.
>>>> 
>>>> If I google the above, there are some references to "Spring Boot" which we are not using. However, we are using Spring Integration, in case that matters.
>>>> 
>>>> Any ideas?
>>>> 
>>>> Thanks,
>>>> Fred
>>>> 
>>>> _______________________________________________
>>>> Logback-user mailing list
>>>> 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
>> 
>> _______________________________________________
>> Logback-user mailing list
>> 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