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]

Reply via email to