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 <remko.po...@gmail.com> 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 <garydgreg...@gmail.com> 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 < > ralph.go...@dslextreme.com> </div><div>Date:08/06/2014 19:18 > (GMT-05:00) </div><div>To: Log4J Users List < > log4j-user@logging.apache.org> </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 <garydgreg...@gmail.com> > 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 <ralph.go...@dslextreme.com > > > >> 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 <ap...@book.com> 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: log4j-user-unsubscr...@logging.apache.org > >>> For additional commands, e-mail: log4j-user-h...@logging.apache.org > >> > >> > >> -- > >> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > >> 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: log4j-user-unsubscr...@logging.apache.org > > For additional commands, e-mail: log4j-user-h...@logging.apache.org > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > For additional commands, e-mail: log4j-user-h...@logging.apache.org > > -- E-Mail: garydgreg...@gmail.com | ggreg...@apache.org 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