<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user">
    <title>gmane.comp.jakarta.log4j.user</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17338"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17337"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17336"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17335"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17334"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17333"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17332"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17331"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17330"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17329"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17328"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17327"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17326"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17325"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17324"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17323"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17322"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17321"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17320"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17319"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17338">
    <title>Re: Logfiles containing 'java' as methodname for %M instead of real method name</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17338</link>
    <description>
On Sep 6, 2008, at 9:11 AM, Thomas Wiedmann wrote:


Prior to JDK 1.4, there was not a mechanism to determine the stack  
trace without parsing the output of Throwable.printStackTrace().   
Different JVM's generate slightly different output and may potentially  
confuse the stack trace parser.  The current SVN HEAD will detect when  
running on a JDK 1.4 and later and use Throwable.getStackTrace() and  
should be immune to formatting issues.  Previous versions of log4j  
have had some incremental improvement in stack trace parsing (JRockit  
and GCJ in particular had issues).  If you are using a much older  
version updating to log4j 1.2.15 may help.  log4j 1.2.16 with the  
conditional use of JDK 1.4 methods should be released shortly.
</description>
    <dc:creator>Curt Arnold</dc:creator>
    <dc:date>2008-09-07T20:15:13</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17337">
    <title>Logfiles containing 'java' as methodname for %M instead of real method name</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17337</link>
    <description>Hello,

in the ...layout.ConversionPattern of a DailyRollingFileAppender the %M 
parameter is defined to output the name of the method where the logging was 
triggered. In some logfiles instead of the real method name the entry 'java' 
is found. What may be the reason for this behaviour and how to achieve the 
output of the name of the triggering method?

Thomas Wiedmann 
</description>
    <dc:creator>Thomas Wiedmann</dc:creator>
    <dc:date>2008-09-06T14:11:40</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17336">
    <title>Re: network logging performance</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17336</link>
    <description>[oops, I originally sent this reply direct to Johannes.  Copying again  
the list]

On 04/09/2008, at 4:19 PM, Johannes Gutleber wrote:


fantastic.  awesome to hear about this sort of environment.  Really  
appreciate you taking the time to respond in depth here.


Are you able to articulate where you thought the bottleneck within the  
Java process was ?  What JRE were you using?  Was it GC overhead?  Was  
it log4j itself, or the custom built collector that was the problem?



Which version of Chainsaw did you use? Was it the one inbuilt into  
log4j, or the newer Chainsaw v2?  The latter uses a cyclic buffer so  
as not to consume too much memory.  I do agree though that even  
Chainsaw v2 is far from perfect.. :)



My vision, ridiculous as this may sound, is that log4j should be able  
to support an environment in the new cloud environments.  Imagine the  
Hadoop clusters that are out there and making sense of wtf happened  
during the dissemination of the MapReduce portions, with thousands of  
host n</description>
    <dc:creator>Paul Smith</dc:creator>
    <dc:date>2008-09-05T02:44:26</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17335">
    <title>RE: network logging performance</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17335</link>
    <description>**Theoretically**, a logging event should be a 'fire and forget'
activity from the perspective of the application.  That means that you
should be able to submit the logging event to the 'logging system'
without blocking, and then the 'logging system' should be able to
deliver those logging events to the final destination on its own
thread(s) and at its own speed.  As long as the average volume of
logging does not exceed the capacity of the actual logging mechanism
(i.e.: over the network) then there ought to be no impact whatsoever to
the application (except perhaps for the cpu overhead of the physical
logging thread(s)).

I don't know log4j well enough to say whether it is already doing this
isolation of 'log event submission' vs 'log event processing'.  If it
doesn't, you should be able to have your application submit all logging
requests through a class written by you that puts all requests into a
memory cache, ensuring no blocking.  Then have one or more separate
threads handling the 'log event processin</description>
    <dc:creator>Bruno Melloni</dc:creator>
    <dc:date>2008-09-04T13:23:04</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17334">
    <title>CLOB datatype column usage with JDBCPlus jdbc appender</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17334</link>
    <description>Hi,
I am using JDBCPlus (http://www.dankomannhaupt.de/projects/index.html) as a
jdbc appender for logging into database. For a requirement, I had to change
the datatype of a column (which stores the message string to be logged) from
varchar2(4000) to CLOB. But as soon I do this, the logging in database stops
and the stack trace got is :

log4j:ERROR JDBCAppender::flush_buffer(), :
java.sql.SQLException: Internal Error: Unable to construct a Datum from the
specified input
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
    at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:829)
    at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:645)
    at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:946)
    at
oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1568)
    at
oracle.jdbc.driver.OracleResultSet.updateObject(OracleResultSet.java:2787)
    at org.apache.log4j.jdbcplus.JDBCLogger.append(JD</description>
    <dc:creator>Vaibhav Kumar</dc:creator>
    <dc:date>2008-09-04T09:56:58</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17333">
    <title>RE: network logging performance</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17333</link>
    <description>
For convenience I routinely configure SocketHubAppender instances for all my services and typically set a threshold of WARN to reduce traffic to important info.

Where performance is deemed more important than the timely delivery of the information I have custom asynchronous appenders with limited BlockingDeque queues and daemon threads to pump out data at their leisure.

Where I have multiple services logging across the network to a central place I tend to use a custom JDBC asynchronous appender.

In other scenarios I have networked systems that require certain log messages as part of a larger communications protocol. Here I have custom appenders that catch LoggingEvent messages, translate them and drop them in the outgoing BlockingDeque for the target system (I always work with queues on complex systems to encourage loose coupling).

I don't tend to pass Java objects over the wire: call me a traditionalist but when I write my protocols they tend to be human-readable 7-bit ASCII where you can telnet to a s</description>
    <dc:creator>Michael Erskine</dc:creator>
    <dc:date>2008-09-04T09:14:13</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17332">
    <title>network logging performance</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17332</link>
    <description>If anyone out there is using "Logging over the network" of any form  
(socket, JMS, Multicast, syslog appenders etc), this topic is for you.  
I'm wondering whether people could comment on their experience setting  
up high performance logging of application data over the network.  The  
cost of shipping an event over the wire compared with writing it to a  
local file is obviously higher, and so one can notice user-visible  
impact if the logging volume is high when using network-based logging  
(unless one wraps it in AsyncAppenders).

Just curious to hear peoples experiences, strategies, and thoughts.   
Perhaps people can relate to the flow rate they've manage to achieve  
under different configurations.

The driver to my question is that for my Apache Lab project (Pinpoint)  
I'm building a central logging repository server to allow data mining  
of the generated logging events.  In a high performance site one can  
have many logging events shipped from multiple threads in, say, a web- 
app, being shipp</description>
    <dc:creator>Paul Smith</dc:creator>
    <dc:date>2008-09-04T01:31:23</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17331">
    <title>RE: New Appender: PatternFileAppender</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17331</link>
    <description>Seems that several of us have been looking at similar things.  

I looked at the MultiFile appender but it wasn't quite flexible enough,
so I created another appender similar to this
(DynamicTimestampedFileAppender)  and was debating whether to submit it.
It is complete but has only been in use for under a week.  Please let me
know if I should submit it, or perhaps the three appenders ought to be
compared and eventually create a hybrid appender that replaces them all.

Key features:

- Designed as a full lifecycle file appender.  
- Instead of sequence numbers uses timestamps of file creation (much
easier to find entries).  Rollovers are really nothing more than closing
a file and creating a new one.
- Zips and deletes old files.  Zips and deletes happen at night and
server start (minimizes load when server is running).
- Multiple logging file sets are dynamically generated.
- Has built-in variables that can be used in defining the file names.
- Additional variables can be defined by parsing the message thro</description>
    <dc:creator>Bruno Melloni</dc:creator>
    <dc:date>2008-09-03T19:12:04</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17330">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17330</link>
    <description>wow!  cool!  this is great news to hear.  Now we have 2 users! :)

If you're interested in trialing things one day, look out for Pinpoint  
(currently an Apache Lab).  It's for log data mining.  centralised log  
repository with full text indexing and reporting.  I'm right in the  
middle of a load test for it as we speak (soaking events from 2 hosts,  
at 100 events/second, this is a Mercury load test of our actual  
application running realistic production loads).   Unfortunately  
there's no real UI for actually doing the searching as yet, but the  
indexing side is working very well.

cheers,

Paul

On 03/09/2008, at 2:20 PM, Brett Randall wrote:


Paul Smith
Core Engineering Manager

Aconex
The easy way to save time and money on your project

696 Bourke Street, Melbourne,
VIC 3000, Australia
Tel: +61 3 9240 0200  Fax: +61 3 9240 0299
Email: psmith&lt; at &gt;aconex.com  www.aconex.com

This email and any attachments are intended solely for the addressee.  
The contents may be privileged, confidential and/or subjec</description>
    <dc:creator>Paul Smith</dc:creator>
    <dc:date>2008-09-03T04:57:55</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17329">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17329</link>
    <description>Thanks - all good and working for now.  Bridge version
apache-jul-log4j-bridge-1.0.0-20071030.02281 appears to work well.

Using Spring Framework, I can actually bootstrap the bridge during the
Spring context load using this:

    &lt;bean id="jul-log4j-bridge"
class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"&gt;
        &lt;property name="staticMethod"&gt;

&lt;value&gt;org.apache.logging.julbridge.JULLog4jBridge.assimilate&lt;/value&gt;
        &lt;/property&gt;
    &lt;/bean&gt;

... which I think is nice.  No reference or dependency on the
jul-log4j-bridge in my code, deploy-time replacement of JUL backend with
log4j.  Then I can even plug-in Chainsaw:

(log4j.xml)

&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" &gt;
&lt;log4j:configuration&gt;

    &lt;appender name="console" class="org.apache.log4j.ConsoleAppender"&gt;
        &lt;param name="Target" value="System.out" /&gt;
        &lt;layout class="org.apache.log4j.PatternLayout"&gt;
            &lt;param name="ConversionPattern" value="%d [%t] %-5p</description>
    <dc:creator>Brett Randall</dc:creator>
    <dc:date>2008-09-03T04:20:44</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17328">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17328</link>
    <description>Brett, if you get stuck, I can package something up here locally and  
email it to you privately if you like (or maybe I should republish to  
my ~psmith repo.. )


cheers,

Paul
On 03/09/2008, at 1:54 PM, Brett Randall wrote:


Paul Smith
Core Engineering Manager

Aconex
The easy way to save time and money on your project

696 Bourke Street, Melbourne,
VIC 3000, Australia
Tel: +61 3 9240 0200  Fax: +61 3 9240 0299
Email: psmith&lt; at &gt;aconex.com  www.aconex.com

This email and any attachments are intended solely for the addressee.  
The contents may be privileged, confidential and/or subject to  
copyright or other applicable law. No confidentiality or privilege is  
lost by an erroneous transmission. If you have received this e-mail in  
error, please let us know by reply e-mail and delete or destroy this  
mail and all copies. If you are not the intended recipient of this  
message you must not disseminate, copy or take any action in reliance  
on it. The sender takes no responsibility for the effect of this  
m</description>
    <dc:creator>Paul Smith</dc:creator>
    <dc:date>2008-09-03T03:58:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17327">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17327</link>
    <description>Whoops - I lie.  I got an older snapshot from that location, and not one
later than the same problem described here
https://issues.apache.org/bugzilla/show_bug.cgi?id=43567 .  Let me go and
test a later one.

Cheers
Brett

On Wed, Sep 3, 2008 at 1:51 PM, Brett Randall &lt;javabrett&lt; at &gt;gmail.com&gt; wrote:

</description>
    <dc:creator>Brett Randall</dc:creator>
    <dc:date>2008-09-03T03:54:19</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17326">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17326</link>
    <description>Hi Paul,

Thanks for your fast and informative response.

AFAICT there isn't an equivalent to this around, and I suspect that people
would find it useful, given peoples intellectual investment and liking of
log4j and in recognition of the number of libraries using JUL.

I grabbed the source and paused at the point where I needed to build log4j
component 1.0 to satisfy that Maven dependency - don't have the cycles to do
this today.  I grabbed the latest 1.0.0 SNAPSHOT from here
http://people.apache.org/~psmith/logging.apache.org/repo/org/apache/logging/apache-jul-log4j-bridge/1.0.0-SNAPSHOT/.
 This looks like it will work, but perhaps a log4j signature has
changed -
I wanted to use latest 1.2.15 but I got:

java.lang.NoSuchMethodError:
org.apache.log4j.spi.LoggingEvent.&lt;init&gt;(Ljava/lang/String;Lorg/apache/log4j/Logger;JLorg/apache/log4j/Level;Ljava/lang/Object;Ljava/lang/String;Lorg/apache/log4j/spi/ThrowableInformation;Ljava/lang/String;Lorg/apache/log4j/spi/LocationInfo;Ljava/util/Map;)V
    at
org.apache.l</description>
    <dc:creator>Brett Randall</dc:creator>
    <dc:date>2008-09-03T03:51:02</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17325">
    <title>Re: Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17325</link>
    <description>
On 03/09/2008, at 12:21 PM, Brett Randall wrote:


the jul-log4j-bridge has not been released yet because most of the  
effort has been towards the log4j 1.2.16 and other sub-modules  
(receivers, zeroconf). As the sole developer of the bridge, I think  
it's feature complete, and there was at least one user I know of who's  
used it.  Whether they're still using it, or if there are others using  
it I can't say as I haven't had any reports.

Obviously I'd love to have feedback on it out in the wild as this  
would give us  impetus to go through a formal release.  Bit of a  
chicken/egg problem there though.  If you're up for giving it a shot,  
let me know and I'll support you through the way (it would be a good  
test of the documentation... (you'd need to generate that via 'mvn  
site' locally though, since it's not released, there's no public  
website for it as yet - if that's a burden, I can generate a site here  
myself and zip it up for you if you like).

cheers,

Paul Smith
</description>
    <dc:creator>Paul Smith</dc:creator>
    <dc:date>2008-09-03T02:28:35</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17324">
    <title>Future of JULI&lt;-&gt;Log4j bridging</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17324</link>
    <description>Hi all,

I'm wondering what folks are using when they find they want to bridge an
application built with JULI logging to use a log4j logging backend.

I'm aware of
http://people.apache.org/~psmith/logging.apache.org/sandbox/jul-log4j-bridge/&lt;http://people.apache.org/%7Epsmith/logging.apache.org/sandbox/jul-log4j-bridge/&gt;,
but it's in the sandbox and there's not a lot of detail on
status/roadmap.  Has anyone used this, or are there accepted alternatives?

Thanks
Brett
</description>
    <dc:creator>Brett Randall</dc:creator>
    <dc:date>2008-09-03T02:21:03</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17323">
    <title>Re: DEBUG messages appearing on console?</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17323</link>
    <description>Thanks Curt.

I implemented your suggestion and got what I was looking for.

Thanks David for your suggestion as well.

Patrick
 

Patrick


----- Original Message -----
From: Curt Arnold [carnold&lt; at &gt;apache.org]
Sent: 09/02/2008 04:47 PM
To: "Log4J Users List" &lt;log4j-user&lt; at &gt;logging.apache.org&gt;
Subject: Re: DEBUG messages appearing on console?


On Sep 2, 2008, at 2:00 PM, Patrick.Grimard&lt; at &gt;xtl.com wrote:


The filter suggestion is a bit overkill for what you need.

What is happening is that you are assigning a DEBUG threshold to all  
logging requests to loggers starting with "com.dsn.loadlink", all  
other loggers have a threshold of WARN.  You are also attaching a  
ConsoleAppender to the root logger and a RollingFileAppender to  
"com.dsn.loadlink", but that is an independent action from setting the  
thresholds.

So if you make a logging request on "com.dsn.loadlink" or a child  
logger, it is evaluated against the nearest specified threshold and if  
that is satisfied, then it is processed by all appenders att</description>
    <dc:creator>Patrick.Grimard&lt; at &gt;xtl.com</dc:creator>
    <dc:date>2008-09-02T21:57:57</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17322">
    <title>Re: New Appender: PatternFileAppender</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17322</link>
    <description>
Hi Curt --

Glad I asked!  It looks to be nearly identical in base functionality,
but of course has a much more developed interface, and has many more
options to it.

It looks like it has two main "policies", a Pattern policy and a
Size policy.

The "Size" policy looks like it provides duplicate functionality that
the RollingFileAppender provides.  It increments an index appended to
the file after they get to a certain size.  I may be over simplifying
here -- but I think that RollingFileAppender provides this and more.

The "Pattern" policy is what my appender was supposed to solve, and I
think is what is "missing" from log4j right now.  Just from inspection,
it appears as though it would be slightly more complex than my
PatternFileAppender, but has more configuration options, and of course
is 1.2 compatible. :)


Is there a reason this has not made it into the official distribution?

</description>
    <dc:creator>David Britton</dc:creator>
    <dc:date>2008-09-02T21:32:59</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17321">
    <title>Re: New Appender: PatternFileAppender</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17321</link>
    <description>
On Sep 2, 2008, at 3:38 PM, David Britton wrote:



Could you compare it with the MultiFileAppender that has been  
languishing in the sandbox for a while?  Search the archives for  
MultiFileAppender.  Source code at http://svn.apache.org/repos/asf/logging/sandbox/log4j/multifile 
.
</description>
    <dc:creator>Curt Arnold</dc:creator>
    <dc:date>2008-09-02T21:04:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17320">
    <title>Re: DEBUG messages appearing on console?</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17320</link>
    <description>
On Sep 2, 2008, at 2:00 PM, Patrick.Grimard&lt; at &gt;xtl.com wrote:


The filter suggestion is a bit overkill for what you need.

What is happening is that you are assigning a DEBUG threshold to all  
logging requests to loggers starting with "com.dsn.loadlink", all  
other loggers have a threshold of WARN.  You are also attaching a  
ConsoleAppender to the root logger and a RollingFileAppender to  
"com.dsn.loadlink", but that is an independent action from setting the  
thresholds.

So if you make a logging request on "com.dsn.loadlink" or a child  
logger, it is evaluated against the nearest specified threshold and if  
that is satisfied, then it is processed by all appenders attached in  
the hierarchy (unless additivity is set to false which will prevent  
appenders attached to parent loggers from seeing the event).  You can  
set a threshold on the appender which is independent of the threshold  
on the logger.

Unless you have a specific need to separate the appenders, I would  
attach them both to root, but s</description>
    <dc:creator>Curt Arnold</dc:creator>
    <dc:date>2008-09-02T20:47:20</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17319">
    <title>New Appender: PatternFileAppender</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17319</link>
    <description>Hello --

I'm not sure if this is the correct way to do this, but my colleague and
I have developed a new appender called a PatternFileAppender.  I did not
see anything else like this in the log4j distribution, but it helped us
solve our particular problem, and I think it's a good general purpose
appender.  If someone knows of another appender like this, I would love
to hear about it.

I went to make an official patch for log4j 1.2, but I found that the
code needed to be compatible with 1.2 source compatibility level.  Since
the code uses generics in it's use of the LinkedHashMap data structure,
it needs 1.5 or later to compile correctly.

Anyway, I've attached the file, if there is an "official" way to do
this, please point me in the right direction.

Here is the high-level details of the appender:

* Can process a filename as a pattern, with all substitutions available.
  (e.g., MDC, date, variable, level, class, ...)

* Interesting use cases we are using it for:
    - Separate log file per "thread" using </description>
    <dc:creator>David Britton</dc:creator>
    <dc:date>2008-09-02T20:38:26</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17318">
    <title>Re: DEBUG messages appearing on console?</title>
    <link>http://permalink.gmane.org/gmane.comp.jakarta.log4j.user/17318</link>
    <description>
Please see the following answer I recently gave:

  http://mail-archives.apache.org/mod_mbox/logging-log4j-user/200808.mbox/%3C20080825151619.GA13754&lt; at &gt;dune.americas.cpqcorp.net%3E

</description>
    <dc:creator>David Britton</dc:creator>
    <dc:date>2008-09-02T19:31:47</dc:date>
  </item>
  <textinput about="http://search.gmane.org/?group=$group=gmane.comp.jakarta.log4j.user">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.jakarta.log4j.user</link>
  </textinput>
</rdf:RDF>
