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

Reply via email to