Canonical name sounds like it makes sense. I wonder what that evaluates to
in other JVM languages like Scala, Kotlin, Clojure, etc., but it seems to
make sense.

On 19 August 2017 at 13:23, Dominik Psenner <dpsen...@gmail.com> wrote:

> To me it is a simple and good solution to the problem. The first outlined
> solution has the pro that it would give a user more sophisticated ways to
> build logger hierarchies from class names, but it is also something that
> only a very small subset of users would use. We can keep that as a wish for
> later.
>
> 2017-08-19 20:13 GMT+02:00 Gary Gregory <garydgreg...@gmail.com>:
>
> > Any opposition to using the canonical name?
> >
> > Gary
> >
> > On Aug 14, 2017 15:28, "Gary Gregory" <garydgreg...@gmail.com> wrote:
> >
> > > In LogManager, if we call getCanonicalName() instead of getName(), we
> > only
> > > get "."s, no "$"s...
> > >
> > > How about that?
> > >
> > > Gary
> > >
> > > On Mon, Aug 14, 2017 at 3:24 PM, Gary Gregory <garydgreg...@gmail.com>
> > > wrote:
> > >
> > >> Another way to look at this is that instead of calling class.getName()
> > we
> > >> would call our own toLoggerName(Class) which would NOT use $ but only
> > use
> > >> "."s.
> > >>
> > >> Gary
> > >>
> > >> On Mon, Aug 14, 2017 at 3:07 PM, Matt Sicker <boa...@gmail.com>
> wrote:
> > >>
> > >>> The logger name hierarchy interpretation is handled at the string
> > level,
> > >>> not the class level. I don't think the class needs to be passed along
> > as
> > >>> there isn't much useful info we can get from the Class instance that
> we
> > >>> can't already figure out from its FQCN.
> > >>>
> > >>> On 14 August 2017 at 15:56, Ralph Goers <ralph.go...@dslextreme.com>
> > >>> wrote:
> > >>>
> > >>> >
> > >>> > > On Aug 14, 2017, at 1:38 PM, Gary Gregory <
> garydgreg...@gmail.com>
> > >>> > wrote:
> > >>> > >
> > >>> > > On Mon, Aug 14, 2017 at 2:08 PM, Ralph Goers <
> > >>> ralph.go...@dslextreme.com
> > >>> > <mailto:ralph.go...@dslextreme.com>>
> > >>> > > wrote:
> > >>> > >
> > >>> > >>
> > >>> > >>> On Aug 14, 2017, at 11:49 AM, Gary Gregory <
> > garydgreg...@gmail.com
> > >>> >
> > >>> > >> wrote:
> > >>> > >>>
> > >>> > >>> On Mon, Aug 14, 2017 at 12:35 PM, Gary Gregory <
> > >>> garydgreg...@gmail.com
> > >>> > >
> > >>> > >>> wrote:
> > >>> > >>>
> > >>> > >>>> Probably for Ralph:
> > >>> > >>>>
> > >>> > >>>> Right now, it's the LogManager in log4j-api that converts
> Class
> > >>> names
> > >>> > >> into
> > >>> > >>>> Logger names.
> > >>> > >>>>
> > >>> > >>>> There is no getLogger(Class) API in the Core LoggerContext.
> > >>> > >>>>
> > >>> > >>>> Should we push down this conversion into Core's LoggerContext?
> > >>> > >>>>
> > >>> > >>>> It seems the sane thing to do to:
> > >>> > >>>> - Avoid making something pluggable in log4j-api
> > >>> > >>>> - Avoid making Core parse logger names looking for separators.
> > >>> > >>>>
> > >>> > >>>
> > >>> > >>> But that would mean adding two methods to:
> > >>> > >>>
> > >>> > >>> org.apache.logging.log4j.spi.LoggerContext:
> > >>> > >>>
> > >>> > >>> org.apache.logging.log4j.spi.LoggerContext.getLogger(Class<?>)
> > >>> > >>> org.apache.logging.log4j.spi.LoggerContext.getLogger(Class<?>,
> > >>> > >>> MessageFactory)
> > >>> > >>>
> > >>> > >>> Thoughts?
> > >>> > >>>
> > >>> > >>
> > >>> > >> Why does it mean that?
> > >>> > >>
> > >>> > >
> > >>> > > If we want the core to implement converting Class names to Logger
> > >>> names,
> > >>> > > the Class must be passed down to the Core. Right now the
> LogManager
> > >>> does
> > >>> > > that by calling org.apache.logging.log4j.spi.LoggerContext
> > methods.
> > >>> > These
> > >>> > > methods take only String for the logger name.
> > >>> >
> > >>> > And that is a problem becauseā€¦.?  I am trying to understand why
> > >>> > LoggerContext will be required to accept a class name.
> > >>> >
> > >>> > Ralph
> > >>> >
> > >>> >
> > >>>
> > >>>
> > >>> --
> > >>> Matt Sicker <boa...@gmail.com>
> > >>>
> > >>
> > >>
> > >
> >
>
>
>
> --
> Dominik Psenner
>



-- 
Matt Sicker <boa...@gmail.com>

Reply via email to