On Tue, May 11, 2010 at 1:50 PM, Martin Ritchie
<martin.a.ritc...@gmail.com> wrote:
> Sorry for late response I seem to be unable to access gmail at work just
> now.
>
> --
> Martin
>
> Sent from my iPhone
>
> On 11 May 2010, at 17:59, Rajith Attapattu <rajit...@gmail.com> wrote:
>
>> Since, there doesn't seem to be any objections, I will proceed with my
>> plan in the evening.
>>
>> Rajith
>>
>> On Mon, May 10, 2010 at 2:12 PM, Rajith Attapattu <rajit...@gmail.com>
>> wrote:
>>>
>>> On Mon, May 10, 2010 at 1:00 PM, Rajith Attapattu <rajit...@gmail.com>
>>> wrote:
>>>>
>>>> Sorry for allowing this thread to rot a bit.
>>>> Based on all the comments we had so far, let me try to summarize on
>>>> what we have seemed to reach some consensus.
>>>>
>>>> 1. We agreed that all though not shipping a slf4j binding is a
>>>> plausible option, it does pose some challengers w.r.t  running
>>>> examples out of the box.
>>>> 2. Most people disagreed about shipping our own plugging.
>>>> 3. Shipping the slf4j-jdk1.4 a.k.a Java Logging binding was brought up
>>>> as a possible solution.
>>>>
>>>> Based on the above, may I suggest the following.
>>>>
>>>> 1. Remove all log4j.xml and log4j.properties files from the code based
>>>> (except for the ones in broker/etc )
>
> Sounds good
>
>>>> 2. Remove the slf4j-log4j binding from java/lib
>>>>
>>>> 3. Put sl4j-log4j binding in the test-profiles/test-resources as our
>>>> test output is configured using log4j and set the path in ant test.
>>>> 4. Put sl4j-jdk1.4 binding in client/example/lib folder
>
> I don't see why you want to move the jar from our lib dir. Curretly java/lib
> is where all our 3rd party jars live. I think it would be beat to keep them
> all on the same place.

Ok fair enough, however then we need to make sure, we do not copy that
into our distributions.
Our distributions should just include the slf4j-api, which will (from
1.6.0 onwards) print a message and discard any subsequent logging if
no binding is detected.

>>>> 5. Document clearly the logging mechanism in the
>>>> "Programming-In-Apache-Qpid' guide.
>>>>  This should include how one could change to a different slf4j binding
>>>>
>>>> 6. Upstream packages could use a binding of their choice.
>>>>
>>>> 7.  Eventually when when we ship bundles in Qpid that works out-of-box
>>>> we could use the sl4j-jdk1.4 to ensure the logging works.
>
> We can ship bundles now, we just nee to choose to. I'll make some builds up
> tonight so we can talk about concrete artifacts.
>
>
>>> Ceki Gülcü has kindly brought to my attention, that from SLF4J version
>>> 1.6.0, if no binding is found, it will print the following message and
>>> continue to discard the rest.
>>> (Earlier it threw and exception).
>>>
>>> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
>>> SLF4J: Defaulting to no-operation (NOP) logger implementation
>>> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for
>>> further details.
>>>
>>> So we could probably ship our bundle (item 7) without any binding.
>>> If the end user needs to do any sort of further debugging, then they
>>> could download a binding of their choice and configure it the way they
>>> like.
>>> In our documentation we should provide information on how our logger
>>> objects are configured, so they would know what to enable etc..
>>>
>>> Rajith
>>>
>>>> Does this sound like a plan? If you see anything wrong or disagree,
>>>> please shout.
>>>>
>>>> Regards,
>>>>
>>>> Rajith.
>>>>
>>>> On Wed, Mar 24, 2010 at 6:47 PM, Robbie Gemmell
>>>> <robbie.gemm...@gmail.com> wrote:
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Gordon Sim [mailto:g...@redhat.com]
>>>>>> Sent: 24 March 2010 18:59
>>>>>> To: dev@qpid.apache.org
>>>>>> Subject: Re: Java Client Logging (yet again !)
>>>>>>
>>>>>> On 03/23/2010 09:20 PM, Robbie Gemmell wrote:
>>>>>>>
>>>>>>> Alternatively, shipping the JDK bindings by default could be a viable
>>>>>>> option, working out the box but requiring that users actually
>>>>>>> configure java.util.logging to required behaviour.
>>>>>>
>>>>>> I like this approach.
>>>>>>
>>>>>> It doesn't have to be in the same location as the core jars if that is
>>>>>> felt to cause confusion. Perhaps e.g. bundled with examples or
>>>>>> similar[1].
>>>>>>
>>>>>>> I would think that anyone who doesn't care enough to configure the
>>>>>>> logging at all might reasonably expect not to be too surprised to
>>>>>>> find there are none, if they ever even looked at the logs.
>>>>>>
>>>>>> I think it can be frustrating for people trying to get familiar with
>>>>>> the
>>>>>> project to debug simple problems with packaged examples or tools if
>>>>>> there is no logging available.
>>>>>>
>>>>>> Not everyone who ends up trying to get something working with the JMS
>>>>>> client has experience with sl4j. Having to dig around on information
>>>>>> on
>>>>>> what to download, where to install it and then what format of file
>>>>>> needs
>>>>>> to be created is significantly harder than e.g. the python or c++
>>>>>> clients. Making that easier is in my view quite reasonable. Having at
>>>>>> least warning level messages be visible is also a help.
>>>>>>
>>>>>> --Gordon
>>>>>>
>>>>>> [1]  I always feel like there something missing on the java side when
>>>>>> testing releases - no test app or examples to run.
>>>>>>
>>>>>
>>>>>
>>>>> We do actually have examples, but we don't currently ship them in the
>>>>> standalone client bundle and they just get lost in the noise of the
>>>>> full
>>>>> bundle, since the lib dir has such a vast number and mix of jars and it
>>>>> also
>>>>> isn't that clear how to run/use them.  I like Martin's suggestion for
>>>>> shipping them as a side dir in the client bundle, and from there we
>>>>> could
>>>>> make it clear how to leverage one or two of them as a specific test or
>>>>> first
>>>>> time user example.
>>>>>
>>>>> I agree that having logging available easily is a good thing and is
>>>>> obviously very useful for new people to the project to debug things. I
>>>>> just
>>>>> don't think we should provide something that self configures the
>>>>> logging by
>>>>> default, and don't think it is unreasonable to expect a user who wants
>>>>> logging to do something as simple as pick which jar they wish to use
>>>>> for
>>>>> bindings and specify a configuration. We should definitely make that
>>>>> simpler
>>>>> than we do now though, I'm not saying they need to work these things
>>>>> out for
>>>>> themselves from scratch, we can certainly provide example bindings and
>>>>> configuration files to make it a trivial operation.
>>>>>
>>>>> Although not my first choice (which would be to supply no bindings in
>>>>> the
>>>>> core client lib dir, but provide some alongside the libs with sample
>>>>> config
>>>>> and clear 1 line instructions in the Readme on how to choose/configure
>>>>> one),
>>>>> I could live with shipping the JDK logging bindings with the libs so
>>>>> that
>>>>> you could use the bundle out of the box without doing _anything_ else,
>>>>> albeit not actually getting any logging unless you specify a [provided
>>>>> sample] property file to configure java.util.logging appropriately when
>>>>> starting your client app's JVM.
>>>>>
>>>>> Robbie
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> Apache Qpid - AMQP Messaging Implementation
>>>>> Project:      http://qpid.apache.org
>>>>> Use/Interact: mailto:dev-subscr...@qpid.apache.org
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Regards,
>>>>
>>>> Rajith Attapattu
>>>> Red Hat
>>>> http://rajith.2rlabs.com/
>>>>
>>>
>>>
>>>
>>> --
>>> Regards,
>>>
>>> Rajith Attapattu
>>> Red Hat
>>> http://rajith.2rlabs.com/
>>>
>>
>>
>>
>> --
>> Regards,
>>
>> Rajith Attapattu
>> Red Hat
>> http://rajith.2rlabs.com/
>>
>> ---------------------------------------------------------------------
>> Apache Qpid - AMQP Messaging Implementation
>> Project:      http://qpid.apache.org
>> Use/Interact: mailto:dev-subscr...@qpid.apache.org
>>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:dev-subscr...@qpid.apache.org
>
>



-- 
Regards,

Rajith Attapattu
Red Hat
http://rajith.2rlabs.com/

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to