I just updated the issue. To be honest, I think what you are suggesting doesn’t make much sense to me.
Ralph > On Oct 25, 2015, at 3:49 PM, Gary Gregory <[email protected]> wrote: > > I think you have it backwards. Its when someone calls the driver's JDBC's > setLogWriter() that this method would then reconfigure log4j with a new > appender. Or again, I 'm not explaining myself clearly. Sorry. > > I created https://issues.apache.org/jira/browse/LOG4J2-1178 > <https://issues.apache.org/jira/browse/LOG4J2-1178> > > Any and all help is appreciated to flush this out. > > Thank you, > Gary > > On Sat, Oct 24, 2015 at 8:25 PM, Matt Sicker <[email protected] > <mailto:[email protected]>> wrote: > Is there a JIRA issue for this? This could be pretty easily done as an > appender like you said, and just use its start() method to setLogWriter. > > On 19 June 2015 at 19:16, Gary Gregory <[email protected] > <mailto:[email protected]>> wrote: > I'm not saying what I want to do clearly enough, let's see... > > I am writing a JDBC driver. The JDBC Spec has a > DataSource.setLogWriter(PrintStream) API drivers should implement. > > Users can drop our driver into any tool that talks JDBC or write their own > apps. In am concerned about the 'drop the driver anywhere' scenario, like in > an Eclipse based tool; that may or may not use Eclipse DTP. Or anything else. > > The setLogWriter API can be called at any time, after Log4j has initialized > itself for example. > > I do all my driver logging through Log4j. If a tool calls setLogWriter, I'd > like the given PrintStream to become an Appender such that Log4j output > appears there. > > The only way I see to do that is through pseudo-code like > "getLoggerContext().getConfiguration().addAppender(PrintStreamAppender.createPrintStreamAppender(aPrintStream))" > > Gary > > On Fri, Jun 19, 2015 at 7:48 AM, Ralph Goers <[email protected] > <mailto:[email protected]>> wrote: > Sorry, I misunderstood the question. > > I’d look for a way to call the setLogWriter API during log4j configuration. > > Ralph > >> On Jun 18, 2015, at 6:35 PM, Gary Gregory <[email protected] >> <mailto:[email protected]>> wrote: >> >> I do not understand "Just have the initial writer be a noop." >> >> Gary >> >> On Thu, Jun 18, 2015 at 5:40 PM, Ralph Goers <[email protected] >> <mailto:[email protected]>> wrote: >> Why reconfigure? Just have the initial writer be a noop. >> >> Sent from my iPhone >> >> On Jun 18, 2015, at 3:49 PM, Gary Gregory <[email protected] >> <mailto:[email protected]>> wrote: >> >>> Hi All: >>> >>> I have a use case where I use Log4j 2 for logging within a JDBC driver. I'd >>> like to support the DataSource#setLogWriter(PrintStream) API in a fairly >>> simple way. Granting that Log4j must be configured, if the user calls >>> setLogWriter, I'd like to add a "print writer appender" to Log4j such that >>> the user's PrintWriter becomes an appender target for log events. >>> >>> Any thoughts on getting this to work considering that the setLogWriter API >>> can be called at any time in an apps life cycle. If I can get a clean impl, >>> I'd like to put it in the iostreams module. >>> >>> Does this require a full reconfigure of log4j or is there a way to "just >>> add an appender" programatically? >>> >>> Gary >>> >>> -- >>> E-Mail: [email protected] <mailto:[email protected]> | >>> [email protected] <mailto:[email protected]> >>> Java Persistence with Hibernate, Second Edition >>> <http://www.manning.com/bauer3/> >>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>> Spring Batch in Action <http://www.manning.com/templier/> >>> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> >>> Home: http://garygregory.com/ <http://garygregory.com/> >>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> >> >> >> -- >> E-Mail: [email protected] <mailto:[email protected]> | >> [email protected] <mailto:[email protected]> >> Java Persistence with Hibernate, Second Edition >> <http://www.manning.com/bauer3/> >> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >> Spring Batch in Action <http://www.manning.com/templier/> >> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> >> Home: http://garygregory.com/ <http://garygregory.com/> >> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> > > > > -- > E-Mail: [email protected] <mailto:[email protected]> | > [email protected] <mailto:[email protected]> > Java Persistence with Hibernate, Second Edition > <http://www.manning.com/bauer3/> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > Spring Batch in Action <http://www.manning.com/templier/> > Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> > Home: http://garygregory.com/ <http://garygregory.com/> > Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> > > > -- > Matt Sicker <[email protected] <mailto:[email protected]>> > > > > -- > E-Mail: [email protected] <mailto:[email protected]> | > [email protected] <mailto:[email protected]> > Java Persistence with Hibernate, Second Edition > <http://www.manning.com/bauer3/> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > Spring Batch in Action <http://www.manning.com/templier/> > Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> > Home: http://garygregory.com/ <http://garygregory.com/> > Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
