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

Reply via email to