You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by Heinrich Götzger <go...@gmx.de> on 2008/01/03 09:30:30 UTC

running chainsaw needs log4j-1.3alpha-7.jar

Hi

do I get this right,

running actual chainsaw from
http://logging.apache.org/log4j/docs/webstart/chainsaw/chainsaw-bundle.zip
needs log4j-1.3alpha-7.jar on application-side for getting all
LocationInfos via SocketAppender?

Thanks

Heinrich


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: running chainsaw needs log4j-1.3alpha-7.jar

Posted by Heinrich Götzger <go...@gmx.de>.
Curt,

thanks for your answer,
see my comments below.

Curt Arnold wrote:

> On Jan 3, 2008, at 4:58 AM, Heinrich Götzger wrote:
>> Maarten Bosteels wrote:
>>> On Jan 3, 2008 9:30 AM, Heinrich Götzger <go...@gmx.de> wrote:
>>>> Hi
>>>>
>>>> do I get this right,
>>>>
>>>> running actual chainsaw from
>>>> http://logging.apache.org/log4j/docs/webstart/chainsaw/chainsaw-bundle.zip
>>>>
>>>> needs log4j-1.3alpha-7.jar on application-side for getting all
>>>> LocationInfos via SocketAppender?
>>>
>>> Yes, that's also my experience: see
>>> http://thread.gmane.org/gmane.comp.jakarta.log4j.user/15607/focus=15611
>> Thanks, this is odd, since 1.3-alpha-x seems not being binary compatible
>> with release 1.2.15 in terms of configureAndWatch and PatterParser
>> enhancement. Is there a migration guide somewhere?
> 
> log4j 1.3 development has been abandoned for those and other reasons. 
> The project has provide several log4j "companions" that support projects
> migrating back from the log4j 1.3 particularly Chainsaw.  The SVN HEAD
> of Chainsaw uses the log4j 1.2.x, there just hasn't been a release.
Ok, this is my way to go.
So I take the SVN HEAD and check it out here:
svn checkout http://svn.apache.org/repos/asf/logging/chainsaw/trunk \
apache-chainsaw

Than I follow:
apache-chainsaw/HOWTOBUILD.txt

Right?

> If you are looking for a log4j 1.2 -> log4j 1.3 migration guide, we
> would recommend that you don't.  If there is something from log4j 1.3
> that you miss, let us know and we can either backport it to log4j 1.2 or
> at least add it to the feature set for the eventual log4j 2.0 development.
I'm only keen on running chainsaw using the SocketAppender and getting
all LocationInfo, nothing else.

But since you asked, in the actual log4j 1.3 release I would miss the
configureAndWatch method in the PropertyConfigurator.

Has it been replaced by some other methods?

And I would like to keep my own PatternParser which extends
org.apache.log4j.helpers.PatternParser. This is not possible in the
actual 1.3 release due to PatternParser being final. And it has moved
into another package (org.apache.log4j.pattern), which drops the binary
compatibility. The same is with PaternConverter and FormattingInfo.
Do you have any plans on providing the possibilities for own
PatternParser in new log4j releases?

> If you are looking for a log4j 1.3 -> log4j 1.2 migration guide, we
> haven't provided a formal one.  If you were using something that was
> labelled alpha, then expecting a formal migration guide is a bit much.
Your right. Actually I'm very fine with log4j 1.2.x except the
SocketAppender and Chainsaw.


>>> "3. There is a serialization incompatibility between log4j 1.2x
>>> socketappender and the log4j 1.3
>>> socketreceiver..this is being fixed with our work to get Chainsaw and
>>> appenders into the 1.2 codebase
>>> (may be fixed in the next release)"
>>>
>>> Scott, any news on this ?
>>>
>>> Maarten
>>
>> And, it's even worse than that:
>>
>> The SocketAppender including LocationInfo is only running as expected,
>> if the log4j-1.3alpha-7.jar from the chainsaw-bundle is used on
>> application side.
>>
>> The file distributed here:
>> http://archive.apache.org/dist/logging/log4j/1.3alpha-7/logging-log4j-1.3alpha-7.tar.gz
>>
>> Leads to a
>>
>> java.lang.ClassNotFoundException:
>> org.apache.log4j.spi.location.LocationInfo
[...]
> 
> The LocationInfo class migrated from org.apache.log4j.spi to
> org.apache.log4j.spi.location during the log4j 1.3 development and then
> was reverted during the long attempt to minimizes incompatibilities
> between log4j 1.2 and log4j 1.3.  The next goal with Chainsaw is to get
> a formal release out based on log4j 1.2.x and the companions.  It would
> be more effective to spend effort getting that done instead that chasing
> this down.
This was just for documentation, I'm fine with any solution here.
The only thing making me wonder is that two jars with the same name but
from different locations have different content. This is confusing IMHO.

Cheers

Heinrich

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: running chainsaw needs log4j-1.3alpha-7.jar

Posted by Curt Arnold <ca...@apache.org>.
On Jan 3, 2008, at 4:58 AM, Heinrich Götzger wrote:

> Maarten Bosteels wrote:
>> On Jan 3, 2008 9:30 AM, Heinrich Götzger <go...@gmx.de> wrote:
>>> Hi
>>>
>>> do I get this right,
>>>
>>> running actual chainsaw from
>>> http://logging.apache.org/log4j/docs/webstart/chainsaw/chainsaw-bundle.zip
>>> needs log4j-1.3alpha-7.jar on application-side for getting all
>>> LocationInfos via SocketAppender?
>>
>> Yes, that's also my experience: see
>> http://thread.gmane.org/gmane.comp.jakarta.log4j.user/15607/focus=15611
> Thanks, this is odd, since 1.3-alpha-x seems not being binary  
> compatible
> with release 1.2.15 in terms of configureAndWatch and PatterParser
> enhancement. Is there a migration guide somewhere?

log4j 1.3 development has been abandoned for those and other reasons.   
The project has provide several log4j "companions" that support  
projects migrating back from the log4j 1.3 particularly Chainsaw.  The  
SVN HEAD of Chainsaw uses the log4j 1.2.x, there just hasn't been a  
release.

If you are looking for a log4j 1.2 -> log4j 1.3 migration guide, we  
would recommend that you don't.  If there is something from log4j 1.3  
that you miss, let us know and we can either backport it to log4j 1.2  
or at least add it to the feature set for the eventual log4j 2.0  
development.

If you are looking for a log4j 1.3 -> log4j 1.2 migration guide, we  
haven't provided a formal one.  If you were using something that was  
labelled alpha, then expecting a formal migration guide is a bit much.


>
>
>>
>> "3. There is a serialization incompatibility between log4j 1.2x
>> socketappender and the log4j 1.3
>> socketreceiver..this is being fixed with our work to get Chainsaw and
>> appenders into the 1.2 codebase
>> (may be fixed in the next release)"
>>
>> Scott, any news on this ?
>>
>> Maarten
>
> And, it's even worse than that:
>
> The SocketAppender including LocationInfo is only running as expected,
> if the log4j-1.3alpha-7.jar from the chainsaw-bundle is used on
> application side.
>
> The file distributed here:
> http://archive.apache.org/dist/logging/log4j/1.3alpha-7/logging-log4j-1.3alpha-7.tar.gz
> Leads to a
>
> java.lang.ClassNotFoundException:  
> org.apache.log4j.spi.location.LocationInfo
>        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java: 
> 276)
>        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java: 
> 319)
>        at java.lang.Class.forName0(Native Method)
>        at java.lang.Class.forName(Class.java:247)
>        at
> java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
>        at
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java: 
> 1575)
>        at
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
>        at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java: 
> 1732)
>        at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java: 
> 1945)
>        at
> java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java: 
> 480)
>        at
> org.apache.log4j.spi.LoggingEvent.readObject(LoggingEvent.java:784)
>        at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
>        at
> sun 
> .reflect 
> .DelegatingMethodAccessorImpl 
> .invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
>        at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846)
>        at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java: 
> 1753)
>        at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at  
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>        at org.apache.log4j.net.SocketNode.run(SocketNode.java:134)
>        at java.lang.Thread.run(Thread.java:619)
>
> on the chainsaw side.
>
> Is this correct?
> I mean, can other reproduce this?
>
> Thanks
>
> cheers
>
> Heinrich
>

The LocationInfo class migrated from org.apache.log4j.spi to  
org.apache.log4j.spi.location during the log4j 1.3 development and  
then was reverted during the long attempt to minimizes  
incompatibilities between log4j 1.2 and log4j 1.3.  The next goal with  
Chainsaw is to get a formal release out based on log4j 1.2.x and the  
companions.  It would be more effective to spend effort getting that  
done instead that chasing this down.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: running chainsaw needs log4j-1.3alpha-7.jar

Posted by Heinrich Götzger <go...@gmx.de>.
Maarten Bosteels wrote:
> On Jan 3, 2008 9:30 AM, Heinrich Götzger <go...@gmx.de> wrote:
>> Hi
>>
>> do I get this right,
>>
>> running actual chainsaw from
>> http://logging.apache.org/log4j/docs/webstart/chainsaw/chainsaw-bundle.zip
>> needs log4j-1.3alpha-7.jar on application-side for getting all
>> LocationInfos via SocketAppender?
> 
> Yes, that's also my experience: see
> http://thread.gmane.org/gmane.comp.jakarta.log4j.user/15607/focus=15611
Thanks, this is odd, since 1.3-alpha-x seems not being binary compatible
with release 1.2.15 in terms of configureAndWatch and PatterParser
enhancement. Is there a migration guide somewhere?

> 
> "3. There is a serialization incompatibility between log4j 1.2x
> socketappender and the log4j 1.3
> socketreceiver..this is being fixed with our work to get Chainsaw and
> appenders into the 1.2 codebase
> (may be fixed in the next release)"
> 
> Scott, any news on this ?
> 
> Maarten

And, it's even worse than that:

The SocketAppender including LocationInfo is only running as expected,
if the log4j-1.3alpha-7.jar from the chainsaw-bundle is used on
application side.

The file distributed here:
http://archive.apache.org/dist/logging/log4j/1.3alpha-7/logging-log4j-1.3alpha-7.tar.gz
Leads to a

java.lang.ClassNotFoundException: org.apache.log4j.spi.location.LocationInfo
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at
java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
        at
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
        at
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
        at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
        at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
        at
java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:480)
        at
org.apache.log4j.spi.LoggingEvent.readObject(LoggingEvent.java:784)
        at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
        at
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846)
        at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at org.apache.log4j.net.SocketNode.run(SocketNode.java:134)
        at java.lang.Thread.run(Thread.java:619)

on the chainsaw side.

Is this correct?
I mean, can other reproduce this?

Thanks

cheers

Heinrich


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: running chainsaw needs log4j-1.3alpha-7.jar

Posted by Maarten Bosteels <mb...@gmail.com>.
On Jan 3, 2008 9:30 AM, Heinrich Götzger <go...@gmx.de> wrote:
> Hi
>
> do I get this right,
>
> running actual chainsaw from
> http://logging.apache.org/log4j/docs/webstart/chainsaw/chainsaw-bundle.zip
> needs log4j-1.3alpha-7.jar on application-side for getting all
> LocationInfos via SocketAppender?

Yes, that's also my experience: see
http://thread.gmane.org/gmane.comp.jakarta.log4j.user/15607/focus=15611

"3. There is a serialization incompatibility between log4j 1.2x
socketappender and the log4j 1.3
socketreceiver..this is being fixed with our work to get Chainsaw and
appenders into the 1.2 codebase
(may be fixed in the next release)"

Scott, any news on this ?

Maarten