And worse: vendor specific! Gary
On Wed, Aug 6, 2014 at 9:05 PM, Remko Popma <[email protected]> wrote: > Oooh... A little naughty, but a lot of fun! :-) > Thanks for the pointer! > > Sent from my iPhone > > > On 2014/08/07, at 9:44, Gary Gregory <[email protected]> wrote: > > > > With some debug API hackery: > > > http://docs.oracle.com/javase/7/docs/jdk/api/jpda/jdi/com/sun/jdi/StackFrame.html > > > > Gary > > > > > >> On Wed, Aug 6, 2014 at 8:36 PM, Remko Popma <[email protected]> > wrote: > >> > >> I don't follow... If you walk the stack trace you can find the name of > the > >> original class whose main() method was called, but how would that give > you > >> access to the main method's parameter values? > >> > >> Sent from my iPhone > >> > >>> On 2014/08/07, at 9:26, Gary Gregory <[email protected]> wrote: > >>> > >>> Yes you are right but the stack walker could be used even if you do not > >> control to source for main. Maybe a script calls a main and then my app > >> plugin gets called and I want to also follow the verbose command line > >> setting. > >>> > >>> > >>> Gary > >>> > >>> <div>-------- Original message --------</div><div>From: Ralph Goers < > >> [email protected]> </div><div>Date:08/06/2014 19:18 > >> (GMT-05:00) </div><div>To: Log4J Users List < > >> [email protected]> </div><div>Subject: Re: Set the file > name > >> based on command line args </div><div> > >>> </div>Wouldn’t it be easier to have a Lookup that your main called and > >> just passed the arguments? But yeah, it should be possible to do what > you > >> are suggesting. > >>> > >>> Ralph > >>> > >>>> On Aug 6, 2014, at 4:09 PM, Gary Gregory <[email protected]> > >> wrote: > >>>> > >>>> I wonder if we could write a "MainArgumentsLookup" that finds the main > >>>> thread and walks up the stack to the public static main(String[]) main > >>>> methods and gets the arguments from the stack... > >>>> > >>>> Gary > >>>> > >>>> > >>>> On Wed, Aug 6, 2014 at 6:54 PM, Ralph Goers < > [email protected] > >>> > >>>> wrote: > >>>> > >>>>> Well…. > >>>>> > >>>>> You would really be passing the name of the file to the Appender, > not a > >>>>> Logger. Loggers only reference Appenders so you can’t really > configure > >>>>> them with Appender configuration data. That said, Log4j 2 provides a > >> few > >>>>> ways you could do this: > >>>>> 1. Set a system property and reference it via ${sys:propertyName} in > >> the > >>>>> configuration. The manual has examples of this. > >>>>> 2. Create a custom Lookup Plugin and then register the file name with > >> the > >>>>> Lookup. Then reference it from the configuration as ${myLookup: > key} > >>>>> where myLookup is the name of your custom Lookup and key is the name > >> that > >>>>> represents the file name value. > >>>>> 3. Create a custom Configuration the extends XMLConfiguration or > >>>>> JSONConfiguration. Pass the file name to that class and have it add > >> that as > >>>>> a property to the properties Map in the configuration. The XML could > >> then > >>>>> just reference it as ${propertyName}. > >>>>> > >>>>> Ralph > >>>>> > >>>>>> On Aug 6, 2014, at 2:03 PM, Arwen Pond <[email protected]> wrote: > >>>>>> > >>>>>> My application takes a parameter where the user can specify the log > >>>>> file. I'd like to pass this parameter to the Logger which uses a > >>>>> FileAppender. I am not sure how to do this in log4j 2. > >>>>>> > >>>>>> Thanks, > >>>>>> Arwen > >>>>>> > >>>>>> > >>>>>> This electronic mail message contains information that (a) is or > >>>>>> may be CONFIDENTIAL, PROPRIETARY IN NATURE, OR OTHERWISE > >>>>>> PROTECTED > >>>>>> BY LAW FROM DISCLOSURE, and (b) is intended only for the use of > >>>>>> the addressee(s) named herein. If you are not an intended > >>>>>> recipient, please contact the sender immediately and take the > >>>>>> steps necessary to delete the message completely from your > >>>>>> computer system. > >>>>>> > >>>>>> Not Intended as a Substitute for a Writing: Notwithstanding the > >>>>>> Uniform Electronic Transaction Act or any other law of similar > >>>>>> effect, absent an express statement to the contrary, this e-mail > >>>>>> message, its contents, and any attachments hereto are not > >>>>>> intended > >>>>>> to represent an offer or acceptance to enter into a contract and > >>>>>> are not otherwise intended to bind this sender, > >>>>>> barnesandnoble.com > >>>>>> llc, barnesandnoble.com inc. or any other person or entity. > >>>>> > >>>>> > >>>>> --------------------------------------------------------------------- > >>>>> To unsubscribe, e-mail: [email protected] > >>>>> For additional commands, e-mail: [email protected] > >>>> > >>>> > >>>> -- > >>>> E-Mail: [email protected] | [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 > >>>> Home: http://garygregory.com/ > >>>> Tweet! http://twitter.com/GaryGregory > >>> > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: [email protected] > >>> For additional commands, e-mail: [email protected] > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [email protected] > >> For additional commands, e-mail: [email protected] > > > > > > -- > > E-Mail: [email protected] | [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 > > Home: http://garygregory.com/ > > Tweet! http://twitter.com/GaryGregory > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > -- E-Mail: [email protected] | [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 Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory
