logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ralph Goers <ralph.go...@dslextreme.com>
Subject Re: Merge log4j-async into log4j-core
Date Fri, 12 Apr 2013 19:16:52 GMT
Core has optional dependencies on Jackson (for JSON configuration), Jansi (Windows color support),
javax.mail (SMTP appender) and geronimo-jms (JMS appender). These should be called out on
the core page.  All the others are test dependencies. 

What is different? Maybe nothing. IMO, all the "critical" things a user expects should be
available without any dependencies.  For example, I would hate to have either the FileAppender
or RollingFileAppender dependent on anything (I'm not sure the Fast versions are).  

I'd be a lot happier if Maven had a way to say "this component is optional but if you are
using this feature I will include it". IOW, Log4j provides an AsyncLogger feature and project
y specifies that it requires that feature.  I've wanted a feature like that for years but
have never had the time to implement it, nor can it really be implemented without changing
the schema for the pom.

Ralph


On Apr 12, 2013, at 11:53 AM, Scott Deboy wrote:

> 
> This link says there are no dependencies :)  Something to fix there?
> 
> http://logging.apache.org/log4j/2.x/dependencies.html
> 
> Of course, the convergence link shows dependencies:
> 
> http://logging.apache.org/log4j/2.x/dependency-convergence.html
> 
> I can't tell which ones are required at runtime for a minimal configuration - anything?
 
> 
> If the other dependencies listed are optional at runtime, but available in core, why
would this one be different?
> 
> Scott
> 
> 
> 
> On Fri, Apr 12, 2013 at 11:45 AM, Ralph Goers <ralph.goers@dslextreme.com> wrote:
> I'm not sure what you mean, but the guideline I use as to whether something belongs in
core is what dependencies it requires. The functionality it provides is secondary to me. 
My preference is for the Log4j API & core to have as few dependencies as possible.  
> 
> Ralph
> 
> 
> 
> On Apr 12, 2013, at 9:38 AM, Scott Deboy wrote:
> 
>> I'd like to avoid what we had with log4j 1.x - the receivers/companions mess.  Whether
or something belongs in core or not is a fuzzy judgment call sometimes.  If possible, I would
like to see as much as possible included in a single 'release' (that includes 'receivers/companions'
if they ever are rewritten for log4j2).
>> 
>> 
>> 
>> 
>> 
>> 
>> On Fri, Apr 12, 2013 at 9:30 AM, Ralph Goers <ralph.goers@dslextreme.com> wrote:
>> It probably should be done anyway, but the various components would also need to
check for the presence of the disruptor and log a warning if it isn't there (I believe we
do this for Jansi and Jackson) as the disruptor would have to be an optional dependency. 
In the async package it can be non-optional so this is less important for anyone using Maven.
>> 
>> Ralph
>> 
>> On Apr 12, 2013, at 9:23 AM, Ralph Goers wrote:
>> 
>>> Because it has a dependency on the Disruptor, which Remko has said may not work
on all JDKs
>>> 
>>> Sent from my iPad
>>> 
>>> On Apr 12, 2013, at 8:23 AM, Gary Gregory <garydgregory@gmail.com> wrote:
>>> 
>>>> Why not more log4j-async into the core?
>>>> 
>>>> Gary
>>>> 
>>>> -- 
>>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org 
>>>> Java Persistence with Hibernate, Second Edition
>>>> JUnit in Action, Second Edition
>>>> Spring Batch in Action
>>>> Blog: http://garygregory.wordpress.com 
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>> 
>> 
> 
> 


Mime
View raw message