We should ensure that both the Javadocs and the user guide explain
recommended usages for these. Mailing lists are for the most die-hard
development fans. :-)


On Fri, Jan 24, 2014 at 2:38 PM, Gary Gregory <garydgreg...@gmail.com>wrote:

> There have been descriptions of what the levels are for... see Ralph '
> message, many of mine and others. I know it can be tedious to go back
> through various threads but the info is there. If you want more info, feel
> free to ask ;)
>
> Gary
>
>
> -------- Original message --------
> From: Christian Grobmeier
> Date:01/24/2014 14:20 (GMT-05:00)
> To: Log4J Developers List
> Subject: Re: Levels added in revision 1560602
>
> What I miss in this discussion are actually good examples of what the
> (new) log levels are intended for.
>
> In example, Gary mentioned he is on a wireshark level with  "trace".
> That's fine, because it would give some idea when to use verbose (maybe
> entering method).
>
> Maybe I missed it when what I ask for was already written,
> but I believe if we can give concrete example how log levels should be
> used then we are a step further.
>
> I was asked quite a log what should be logged with which level.
>
> I think making the difference between trace and debug is already
> difficult for a lot of users.
> In the past two years i asked a lot of people how they log.
>
> The answer was: exceptions on error, the rest on debug.
>
> What we lack is a good recommendation how log levels should be used.
> Something which is on our front page and which lets the "average" Java
> programmer fully
> understand when he uses what, and maybe even why.
>
> If we have something like that it is much easier to argue pro/contra
> the new log levels.
>
>
>
>
>
> On 24 Jan 2014, at 18:36, Scott Deboy wrote:
>
> > To be fair, I think we represent a reasonable fraction of the
> > users..some won't touch new predefined levels, some will use it -
> > that's the reason for adding it - we hit a significant portion of use
> > cases with small additional number of built-in levels.
> >
> > The two solutions don't provide the same thing, do they?  If they do,
> > I wouldn't be pressing the issue.
> >
> > If there is a way for us, via annotations or whatever mechanism we
> > define for 'custom levels', to add support easily for the newly
> > pre-defined levels, then we should do it.
> >
> > Specifically, I'm ok with any mechanism (even using the new custom
> > level mechanism, but provide by log4j itself), where log4j users are
> > able to call:
> >
> > logger.notice(something);
> >
> > Anything else and it won't meet my expectations for usability.
> >
> > By the way, while we're at it, let's remove fatal.
> >
> > Scott
> >
> >
> > On 1/24/14, Remko Popma <remko.po...@gmail.com> wrote:
> >> I'm not questioning your experience, and I believe you when you say
> >> that
> >> the proposed levels would be a perfect match for your current work
> >> environment.
> >>
> >> However, out of the eight people that participated in the discussion
> >> on
> >> adding levels, four expressed strong reservations about adding
> >> pre-defined
> >> levels. We are all programmers on this list. So I think we can
> >> reasonable
> >> assume that a large fraction of users would also not like this
> >> change.
> >>
> >> On top of that, we have a more powerful and elegant alternative
> >> solution
> >> that makes adding pre-defined levels unnecessary.
> >> Sorry, but I veto the commit.
> >>
> >>
> >>
> >>
> >> On Sat, Jan 25, 2014 at 1:49 AM, Gary Gregory
> >> <garydgreg...@gmail.com>wrote:
> >>
> >>> On Thu, Jan 23, 2014 at 10:18 PM, Ralph Goers
> >>> <ralph.go...@dslextreme.com>wrote:
> >>>
> >>>> Gary, although Remko hasn’t said it I think he is implying that
> >>>> he is
> >>>> vetoing the code commit. Unfortunately, unless you can convince
> >>>> Remko
> >>>> otherwise you are going to have to revert the commit.
> >>>>
> >>>> Remko, if that isn’t your intention then please say so as it will
> >>>> save
> >>>> Gary a bunch of work.
> >>>>
> >>>
> >>> Hello, hello,
> >>>
> >>> Wow, what a pickle of religious debate this has turned into!
> >>>
> >>> Before I do indeed do more work:
> >>>
> >>>
> >>>>
> >>>>
> >>>
> >>>> Ralph
> >>>>
> >>>> On Jan 23, 2014, at 6:34 PM, Remko Popma <remko.po...@gmail.com>
> >>>> wrote:
> >>>>
> >>>>
> >>>
> >>> I wish you had a story of some kind to show why you are so strongly
> >>> opposed to the new levels. I just wonder then why you are not
> >>> arguing for
> >>> fewer levels? Is 6 levels just the perfect number in your mind? If
> >>> you
> >>> designed a new logging system right now in a clean room approach,
> >>> what
> >>> would you devise?
> >>>
> >>> FWIW, I do consider Log4j2 a brand new system, granting us the
> >>> freedom to
> >>> break APIs with version 1, which we've obviously done, but not in a
> >>> way
> >>> that will make it too difficult to port client code. For custom
> >>> appenders,
> >>> I've not tried to port my version 1 appenders yet...
> >>>
> >>>
> >>>> To clarify my position on the proposed DIAG, VERBOSE, NOTICE log
> >>>> levels:
> >>>> I don't think these levels should be added to the Log4J API.
> >>>> Here is my thinking:
> >>>>
> >>>> 1. The current five levels are a de facto. standard. (For example,
> >>>> they
> >>>> match the SLF4J levels.)
> >>>>
> >>>> But they do not match JUL, which is more of a standard since it is
> >>>> in
> >>>> the
> >>> JRE; albeit a _brain-dead_ standard; no DEBUG level JUL? Really?
> >>> So clearly we care about certain kinds of standard but not others.
> >>> Since the Slf4j author created Log4j1, I would not expect otherwise
> >>> and
> >>> it
> >>> should not make it the best solution moving forward by default.
> >>>
> >>>
> >>>> They are sufficient for the vast majority of log4j users. We should
> >>>> be
> >>>> hesitant to change this. My position would be to not change this
> >>>> unless
> >>>> we
> >>>> all think this is a really good idea. (The bar should be high for
> >>>> this
> >>>> change.)
> >>>>
> >>>> What are you afraid of? Confusing developers and users with 3 new
> >>>> levels?
> >>> Let's give them more credit than that! ;)
> >>>
> >>>
> >>>> 2. From a practical point of view, making. levels an Extensible
> >>>> Enum
> >>>> provides a more powerful alternative solution, making the proposed
> >>>> levels
> >>>> unnecessary.
> >>>> 3. From an engineering/aestical POV, I feel the proposed levels are
> >>>> arbitrary and the Extensible Enum solution is more elegant.
> >>>>
> >>>>
> >>> AGAIN, there are different features, why are they mutually
> >>> exclusive?
> >>>
> >>>
> >>>> 4. The proposed levels are not only unnecessary, I think they are
> >>>> actually detrimental (for lack of a better word. I mean, not having
> >>>> them
> >>>> would be better).
> >>>> The discussion in the "Web Issues, Logging Levels, and GA" thread
> >>>> shows
> >>>> how much opinions can differ about naming, strength, and intended
> >>>> usage,
> >>>> *even in our small group*. How can we predict what levels other
> >>>> users
> >>>> may
> >>>> want?
> >>>>
> >>>>
> >>> How about using your own experience as a guideline? How have the
> >>> current
> >>> levels confused your users? Would fewer levels been better for them?
> >>>
> >>> I've creating a logging system before Log4j1 existed, ported our
> >>> server
> >>> to
> >>> Log4j1 and then extended Log4j1 for our servers and tools at work.
> >>> Believe
> >>> you me, if I've taken the time to write the code, I will use it in
> >>> our
> >>> apps
> >>> instead of the inconsistent various workarounds that have propagated
> >>> in
> >>> our
> >>> code base. These are not "oh, these would be nice to have in
> >>> theory",
> >>> theses are "I know I can change my code now to use the new levels".
> >>> Granted, I am an advanced user. But like any system, I started using
> >>> a
> >>> few
> >>> features and then more and more.
> >>>
> >>> We do use TRACE for some method entry and exit. And we use DEBUG a
> >>> lot.
> >>> But we need a level, among other things, for wire level hex dumps in
> >>> all
> >>> the different parts of the systems where many loggers are used. A
> >>> level
> >>> between TRACE and DEBUG would be a perfect solution. I and others
> >>> have
> >>> made
> >>> a good case for the NOTICE level as well, which some wanted as
> >>> CONFIG.
> >>>
> >>> I see the new levels as a refinement based on experience.
> >>>
> >>> Is this now a religious debate in which there is 0 chance of
> >>> convincing
> >>> you? Or is there 1 chance?
> >>>
> >>>
> >>>> The proposed levels can easily confuse users or get in the way of
> >>>> users
> >>>> wanting to use these names at different strengths or with a
> >>>> different
> >>>> intended usage.
> >>>>
> >>>>
> >>> Whaaat? How can you presume to know users like that? Give people
> >>> more
> >>> credit than that, we are talking about programmers here. For our end
> >>> users,
> >>> our support folks tell them "Set the level to X and run the program,
> >>> then
> >>> send us the log" where they use a GUI to generate log config files.
> >>> Our
> >>> consultants (some are programmers) that go onsite, know the software
> >>> and
> >>> what the levels mean. They and the users will be ecstatic if I say
> >>> that
> >>> the
> >>> giant logs given by DEBUG will be smaller because all the hex dumps
> >>> will
> >>> be
> >>> at the VERBOSE levels. The TRACE level is for developers debugging
> >>> very
> >>> low
> >>> level code. FWIW, we had started to use different loggers for hex
> >>> dumps
> >>> but
> >>> this was hard to enforce and harder to configure, so no more of
> >>> that.
> >>>
> >>> So before I revert anything please answer these questions and try to
> >>> convince _me_ :)
> >>>
> >>> Alternatively, feel free to reply with "I VETO this commit" and will
> >>> revert the commit.
> >>>
> >>> Thank you kindly for considering these opinions,
> >>>
> >>> Gary
> >>>
> >>>
> >>>>
> >>>> The fact that changes for these levels have already been committed
> >>>> is
> >>>> IMHO not an argument in its favor. On the contrary, I was surprised
> >>>> at
> >>>> the
> >>>> timing of this commit: it was clear that many people were opposed
> >>>> to
> >>>> this
> >>>> approach. To me it was also clear that we had started exploring
> >>>> extensible
> >>>> enums as a mechanism that would allow us to *avoid* adding
> >>>> pre-defined
> >>>> levels.
> >>>>
> >>>>
> >>>> To repeat my position: I don't think these levels should be added
> >>>> to the
> >>>> Log4J API.
> >>>>
> >>>> Remko
> >>>>
> >>>> On Friday, January 24, 2014, Remko Popma <remko.po...@gmail.com>
> >>>> wrote:
> >>>>
> >>>>> I'm fine with Nick's proposal to have two separate votes.
> >>>>> Remko
> >>>>>
> >>>>> On Friday, January 24, 2014, Nick Williams <
> >>>>> nicho...@nicholaswilliams.net> wrote:
> >>>>>
> >>>>>> There has obviously been some serious discussion about these
> >>>>>> topics.
> >>>>>> We're not going to come to a total agreement on this. I propose:
> >>>>>>
> >>>>>> - We have a committers-only vote in the "Enums and Custom Levels"
> >>>>>> thread on whether to make Level an extensible enum.
> >>>>>> - AFTER having that vote, we have a committers-only vote in this
> >>>>>> thread
> >>>>>> on whether to add these three levels.
> >>>>>> - We only roll back this revision AFTER the second vote is
> >>>>>> complete
> >>>>>> and
> >>>>>> IF the vote rejects the new levels.
> >>>>>>
> >>>>>> Nick
> >>>>>>
> >>>>>> On Jan 23, 2014, at 7:58 AM, Paul Benedict wrote:
> >>>>>>
> >>>>>> On Thu, Jan 23, 2014 at 11:54 AM, Scott Deboy
> >>>>>> <scott.de...@gmail.com>wrote:
> >>>>>>
> >>>>>>> We don't need to scuttle the new levels to support extensible
> >>>>>>> levels.
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>> Of course. The two things are not technically related. That's not
> >>>>>> what
> >>>>>> this is about, though. Since there are camps for and against the
> >>>>>> new
> >>>>>> levels, I was hoping the "extensible enum" feature would bring
> >>>>>> about a
> >>>>>> compromise.
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> Gary's change is essentially a 'usability enhancement' - if
> >>>>>>> anything
> >>>>>>> close to 80% of the folks who might want custom levels can use
> >>>>>>> new
> >>>>>>> built-in levels, that's an API win in my book.  Custom levels
> >>>>>>> help
> >>>>>>> the
> >>>>>>> other 20%, and I'm supportive of that.
> >>>>>>>
> >>>>>>> Also please keep in mind this doesn't really add to our
> >>>>>>> maintenance
> >>>>>>> burden, which I think may be contributing to the concern about
> >>>>>>> adding
> >>>>>>> new levels.  Gary already did the heavy lifting, and the change
> >>>>>>> to
> >>>>>>> something other than an enum for levels would just be a bit more
> >>>>>>> work
> >>>>>>> because of this addition.
> >>>>>>>
> >>>>>>> Scott
> >>>>>>>
> >>>>>>> On 1/23/14, Paul Benedict <pbened...@apache.org> wrote:
> >>>>>>>> Let's not lose sight why the "extensible enum" discussion
> >>>>>>>> occurred.
> >>>>>>>> Speaking solely for myself, I am not fond of the new logging
> >>>>>>>> levels;
> >>>>>>> but I
> >>>>>>>> don't want the framework from preventing them. The intention
> >>>>>>>> behind
> >>>>>>> this
> >>>>>>>> proposal was to get agreement by scuttling the new levels but
> >>>>>>> allowing
> >>>>>>>> anyone to add them in their own private code.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>> Paul
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>
> >>>
> >>> --
> >>> 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-dev-unsubscr...@logging.apache.org
> > For additional commands, e-mail: log4j-dev-h...@logging.apache.org
>
>
> ---
> http://www.grobmeier.de
> The Zen Programmer: http://bit.ly/12lC6DL
> @grobmeier
> GPG: 0xA5CC90DB
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-dev-h...@logging.apache.org
>
>


-- 
Cheers,
Paul

Reply via email to