logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Sicker <boa...@gmail.com>
Subject Re: Logger Wrapper + Trace API = Issues
Date Sat, 10 Sep 2016 19:44:34 GMT
If there's an easier way to do it, that'd be cool, but all the bridges in
log4j itself use ExtendedLoggerWrapper as it is.

On 10 September 2016 at 14:35, Ralph Goers <ralph.goers@dslextreme.com>
wrote:

> Yes, you use ExtendedLoggerWrapper and pass the fully qualified class name
> of your wrapper class on the logMessage call. I seem to recall there is an
> even easier way but it escapes me and I don’t see it documented on the web
> site.
>
> Ralph
>
> > On Sep 10, 2016, at 12:06 PM, Matt Sicker <boards@gmail.com> wrote:
> >
> > I should note that you might want to use ExtendedLoggerWrapper in this
> > scenario as the methods are protected otherwise that I just mentioned.
> >
> > On 10 September 2016 at 14:03, Matt Sicker <boards@gmail.com> wrote:
> >
> >> When you make a custom Logger wrapper, you need to use the logMessage()
> >> methods that include the fqcn string which should be the fully qualified
> >> class name of the logger wrapper. See AbstractLogger for an example.
> >>
> >> On 10 September 2016 at 13:57, Juan Fuentes <
> juanmarianofuentes@gmail.com>
> >> wrote:
> >>
> >>> Dear all,
> >>>
> >>> After spending half a day on this I have decide to try luck on the
> >>> official mailing list, hopefully some dev can throw some light over
> this.
> >>>
> >>> I’m trying to use a wrapper over a Logger object to restrict the
> methods
> >>> of the API to the ones on my interface, for example:
> >>>
> >>> class Log4JLogger implements com.opencms.core.logging.Logger {
> >>>
> >>>    private Logger logger;
> >>>
> >>>    public Log4JLogger(Logger logger) {
> >>>        this.logger = logger;
> >>>    }
> >>>
> >>>    @Override
> >>>    public void traceEntry(String message, Object... args) {
> >>>        this.logger.traceEntry(message, args);
> >>>    }
> >>>
> >>> If I combine this with a pattern that includes the line and the method
> >>> name, for example:
> >>> <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} %-5level %class{36}
> %L
> >>> %M - %msg%xEx%n"/>
> >>>
> >>> I get as result the line and method name on the wrapper, what makes
> >>> sense, but is not what I want to. I want the ones from the class that
> calls
> >>> the wrapper.
> >>>
> >>> Any way to configure/specify this in any way?
> >>>
> >>> I would be also happy if I can just extend a Logger and implement my
> >>> interface on it, but what logger should I extend? How can I create an
> >>> instance of this custom logger afterwards?
> >>>
> >>> Thanks in advance,
> >>> Juan
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> >>> For additional commands, e-mail: log4j-user-help@logging.apache.org
> >>>
> >>>
> >>
> >>
> >> --
> >> Matt Sicker <boards@gmail.com>
> >>
> >
> >
> >
> > --
> > Matt Sicker <boards@gmail.com>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
Matt Sicker <boards@gmail.com>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message