If some of the logging is business critical, perhaps you should put it in a
separate logging context and don't let your users reconfigure that context.
Or not use Log4j at all for the business critical logging.

On Wed, Aug 26, 2015 at 3:46 AM, Nicholas Duane <nic...@msn.com> wrote:

> Yes and no.  The user might know how to turn on/off logging, but they
> might not understand what the enterprise is wanting to do.  We would like
> to make it hard, if not impossible, to turn off logging of INFO and below
> (or above for .NET) events.  So even if something thinks they should turn
> off logging and sets the level to "OFF" we still want INFO and below to be
> logged.
>
> Thanks,
> Nick
>
> > Subject: Re: redefining existing levels?
> > From: remko.po...@gmail.com
> > Date: Wed, 26 Aug 2015 09:25:09 +0900
> > To: log4j-user@logging.apache.org
> >
> > Could you explain a bit more about your use case before we zoom in on a
> specific solution?
> >
> > I'd like to understand better what you mean by [if someone sets the
> level to "OFF"]?
> > What is the scenario? Someone logs into the server and modifies the
> configuration and makes a mistake? Or is this a client distributed to your
> users' PCs and they may modify the configuration?
> >
> > It sounds like you are trying to protect against human error; is that
> the case?
> >
> > Sent from my iPhone
> >
> > > On 2015/08/26, at 8:37, Nicholas Duane <nic...@msn.com> wrote:
> > >
> > > No.  Redefining existing levels is to help ensure we have "24x7"
> logging always on.  So even if someone sets the level to "OFF" we still get
> INFO and above.  Basically we'll have levels higher (or lower based on what
> platform we're talking about) than INFO OFF by default and only turn them
> on when needed.
> > >
> > > Thanks,
> > > Nick
> > >
> > >> Date: Wed, 26 Aug 2015 08:33:34 +0900
> > >> Subject: Re: redefining existing levels?
> > >> From: remko.po...@gmail.com
> > >> To: log4j-user@logging.apache.org
> > >>
> > >> Is redefining levels a way to work around the issue you had with the
> range
> > >> check?
> > >> I've replied to your range check question with a link to an example
> config.
> > >>
> > >> On Wed, Aug 26, 2015 at 8:02 AM, Gary Gregory <garydgreg...@gmail.com
> >
> > >> wrote:
> > >>
> > >>> Well, let's all work together to get you up and running. Hopefully
> we'll
> > >>> get other devs to keep chiming in.
> > >>>
> > >>>
> > >>> Gary
> > >>>
> > >>>> On Tue, Aug 25, 2015 at 3:58 PM, Nicholas Duane <nic...@msn.com>
> wrote:
> > >>>>
> > >>>> I will get to that.  However, I assume that works as that's
> documented
> > >>>> pretty well.  So I'm looking at the other things which may or may
> not
> > >>> work
> > >>>> as I have to find out what blocking issues we're going to run into.
> > >>>> Redefining existing levels is one.  I sent the other email regarding
> > >>> range
> > >>>> level filter as we also need that to work.  It works in .NET.  So
> far
> > >>> it's
> > >>>> looking like I'll need to write my own filter for log4j2 in order
> to get
> > >>>> range level filtering working.
> > >>>>
> > >>>> Thanks,
> > >>>> Nick
> > >>>>
> > >>>>> Date: Tue, 25 Aug 2015 15:54:08 -0700
> > >>>>> Subject: Re: redefining existing levels?
> > >>>>> From: garydgreg...@gmail.com
> > >>>>> To: log4j-user@logging.apache.org
> > >>>>>
> > >>>>> Ah, well, let's start with the documented stuff we know should
> work ;-)
> > >>>>>
> > >>>>> Gary
> > >>>>>
> > >>>>> On Tue, Aug 25, 2015 at 3:19 PM, Nicholas Duane <nic...@msn.com>
> > >>> wrote:
> > >>>>>
> > >>>>>> Thanks.  I assumed my 'BUSINESS' level is working using the
> > >>>> <CustomLevel>,
> > >>>>>> though I haven't tried it yet as I was trying to validate
> redefining
> > >>>>>> existing level.
> > >>>>>>
> > >>>>>> Thanks,
> > >>>>>> Nick
> > >>>>>>
> > >>>>>>> Date: Tue, 25 Aug 2015 14:32:01 -0700
> > >>>>>>> Subject: Re: redefining existing levels?
> > >>>>>>> From: garydgreg...@gmail.com
> > >>>>>>> To: log4j-user@logging.apache.org
> > >>>>>>>
> > >>>>>>> Nick,
> > >>>>>>>
> > >>>>>>> Your BUSINESS level should be configurable per
> > >>>
> https://logging.apache.org/log4j/2.x/manual/customloglevels.html#DefiningLevelsInConfiguration
> > >>>>>>>
> > >>>>>>> I can't look into the rest ATM.
> > >>>>>>>
> > >>>>>>> Gary
> > >>>>>>>
> > >>>>>>> On Tue, Aug 25, 2015 at 2:16 PM, Nicholas Duane <nic...@msn.com>
> > >>>> wrote:
> > >>>>>>>
> > >>>>>>>> I guess I should have mentioned, though it's probably obvious,
> > >>>> that I'm
> > >>>>>>>> only interested in a configuration based solution.  I'm not
> > >>> looking
> > >>>>>> for a
> > >>>>>>>> code solution.
> > >>>>>>>>
> > >>>>>>>> Thanks,
> > >>>>>>>> Nick
> > >>>>>>>>
> > >>>>>>>> From: nic...@msn.com
> > >>>>>>>> To: log4j-user@logging.apache.org
> > >>>>>>>> Subject: RE: redefining existing levels?
> > >>>>>>>> Date: Tue, 25 Aug 2015 16:05:47 -0400
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>> Thanks for the reply.  I've seen that documentation and it
> > >>> appears
> > >>>> to
> > >>>>>> be
> > >>>>>>>> geared toward defining (NEW) custom levels.  It doesn't mention
> > >>>>>> anything
> > >>>>>>>> about redefining existing log4j2 levels.  I also tried it and so
> > >>>> far
> > >>>>>> in my
> > >>>>>>>> testing it doesn't seem to work.  Below is a snippet of my
> > >>>> config.  By
> > >>>>>> the
> > >>>>>>>> way, you'll see that I am currently trying the <CustomLevel> and
> > >>>>>> <level>.
> > >>>>>>>> At first I had just tried <CustomLevel> but it didn't appear to
> > >>>> work
> > >>>>>> so I
> > >>>>>>>> thought I would put the same elements I have in my .NET config
> > >>>> which
> > >>>>>> work.
> > >>>>>>>> Unfortunately it still doesn't work.
> > >>>>>>>>
> > >>>>>>>> .
> > >>>>>>>> .
> > >>>>>>>> .
> > >>>>>>>> <level>
> > >>>>>>>>   <name value="OFF"/>
> > >>>>>>>>   <value value="500"/>
> > >>>>>>>> </level>
> > >>>>>>>> <CustomLevels>
> > >>>>>>>>   <CustomLevel name="OFF" intLevel="500"/>
> > >>>>>>>> </CustomLevels>
> > >>>>>>>> .
> > >>>>>>>> .
> > >>>>>>>> .
> > >>>>>>>> <Loggers>
> > >>>>>>>>   <Logger name="HelloWorld" level="OFF">
> > >>>>>>>>      <AppenderRef ref="debug"/>
> > >>>>>>>>   </Logger>
> > >>>>>>>>   <Root>
> > >>>>>>>>   </Root>
> > >>>>>>>> </Loggers>
> > >>>>>>>>
> > >>>>>>>> I then set my logger level to "OFF" and didn't see any debug
> > >>> events
> > >>>>>> show
> > >>>>>>>> up.  If I set the level to "DEBUG" they show up in the log.  The
> > >>>> docs
> > >>>>>> say
> > >>>>>>>> that DEBUG is set to 500, so me setting OFF to 500 and then
> > >>>> setting the
> > >>>>>>>> level on my logger to OFF should have allowed the debug events
> to
> > >>>> flow
> > >>>>>> to
> > >>>>>>>> the log file, correct?
> > >>>>>>>>
> > >>>>>>>> Thanks,
> > >>>>>>>> Nick
> > >>>>>>>>
> > >>>>>>>>> Date: Tue, 25 Aug 2015 12:50:32 -0700
> > >>>>>>>>> Subject: Re: redefining existing levels?
> > >>>>>>>>> From: garydgreg...@gmail.com
> > >>>>>>>>> To: log4j-user@logging.apache.org
> > >>>>>>>>>
> > >>>>>>>>> Nicholas,
> > >>>>>>>>>
> > >>>>>>>>> Yes, please see
> > >>> https://logging.apache.org/log4j/2.x/manual/customloglevels.html
> > >>>>>>>>>
> > >>>>>>>>> If the documentation can be improved, please let us know how.
> > >>>>>>>>>
> > >>>>>>>>> Gary
> > >>>>>>>>>
> > >>>>>>>>> On Tue, Aug 25, 2015 at 12:42 PM, Nicholas Duane <
> > >>> nic...@msn.com
> > >>>>>
> > >>>>>> wrote:
> > >>>>>>>>>
> > >>>>>>>>>> Can existing log4j2 levels be redefined?  I'm able to do this
> > >>>> in
> > >>>>>>>> log4net.
> > >>>>>>>>>> I have yet to see any documentation telling me that I can do
> > >>>> it,
> > >>>>>>>> however,
> > >>>>>>>>>> there was none telling me I could do it for .NET either.  I
> > >>>> just
> > >>>>>>>> happen to
> > >>>>>>>>>> stumble upon a post which eluded to it.  Here is what I've
> > >>>> done in
> > >>>>>> a
> > >>>>>>>>>> log4net config file:
> > >>>>>>>>>>
> > >>>>>>>>>> <configuration>
> > >>>>>>>>>>   .
> > >>>>>>>>>>   .
> > >>>>>>>>>>   .
> > >>>>>>>>>>   <log4net>
> > >>>>>>>>>>      <level>
> > >>>>>>>>>>         <name value="Off"/>
> > >>>>>>>>>>         <value value="40000"/>
> > >>>>>>>>>>      <level>
> > >>>>>>>>>>      <level>
> > >>>>>>>>>>         <name value="Business"/>
> > >>>>>>>>>>         <value value="130000"/>
> > >>>>>>>>>>      <level>
> > >>>>>>>>>>      .
> > >>>>>>>>>>      .
> > >>>>>>>>>>      .
> > >>>>>>>>>>   </log4net>
> > >>>>>>>>>>   .
> > >>>>>>>>>>   .
> > >>>>>>>>>>   .
> > >>>>>>>>>> </configuration>
> > >>>>>>>>>>
> > >>>>>>>>>> As you can see I created my own 'Business' level.  I also
> > >>>> redefined
> > >>>>>>>> Off to
> > >>>>>>>>>> 40000 which happens to be the INFO level.  This makes it such
> > >>>> that
> > >>>>>> if
> > >>>>>>>> they
> > >>>>>>>>>> set the level to Off they will still receive INFO and higher
> > >>>> level
> > >>>>>>>> events.
> > >>>>>>>>>>
> > >>>>>>>>>> Can the same thing be done in log4j2?
> > >>>>>>>>>>
> > >>>>>>>>>> Thanks,
> > >>>>>>>>>> Nick
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>> --
> > >>>>>>>>> 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
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> --
> > >>>>>>> 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
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> --
> > >>>>> 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
> > >>>
> > >>>
> > >>>
> > >>> --
> > >>> 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
> >
>
>



-- 
[image: MagineTV]

*Mikael Ståldal*
Senior backend developer

*Magine TV*
mikael.stal...@magine.com
Regeringsgatan 25  | 111 53 Stockholm, Sweden  |   www.magine.com

Privileged and/or Confidential Information may be contained in this
message. If you are not the addressee indicated in this message
(or responsible for delivery of the message to such a person), you may not
copy or deliver this message to anyone. In such case,
you should destroy this message and kindly notify the sender by reply
email.

Reply via email to