logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Juan Fuentes <juanmarianofuen...@gmail.com>
Subject Re: Logger Wrapper + Trace API = Issues
Date Sun, 11 Sep 2016 07:10:49 GMT
As I side note, I tried to use that tool this morning to see the code that generates, and it
fails to me using the examples.

Error: Main method not found in class org.apache.logging.log4j.core.tools.Generate, please
define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Juan



> On 11 Sep 2016, at 08:50, Remko Popma <remko.popma@gmail.com> wrote:
> 
> The focus of that logger wrapper generator is on the convenience methods to
> generate for a new log level, that is why the tools is documented under
> custom levels.
> 
> This still makes sense to me, but I've seen this question several times now
> so you are certainly not the only one who didn't find the docs... That's
> why I'm thinking to add this to the FAQ, but other suggestions are welcome.
> 
> On Sun, Sep 11, 2016 at 3:41 PM, Ralph Goers <ralph.goers@dslextreme.com>
> wrote:
> 
>> I should have looked at your link first.  It seems rather odd to find
>> custom logger documentation under custom levels, and I didn’t see it in the
>> table of contents - probably because I didn’t think to click on that.
>> 
>> Ralph
>> 
>>> On Sep 10, 2016, at 11:39 PM, Ralph Goers <ralph.goers@dslextreme.com>
>> wrote:
>>> 
>>> Do we have documentation on making custom Loggers?
>>> 
>>> Ralph
>>> 
>>>> On Sep 10, 2016, at 5:09 PM, Remko Popma <remko.popma@gmail.com> wrote:
>>>> 
>>>> The easier way is to use the wrapper generator tool included in log4j.
>> The tool is intended to be used with custom log levels and is documented
>> here: https://logging.apache.org/log4j/2.x/manual/customloglevels.html#
>> AddingOrReplacingLevels
>>>> 
>>>> I should add this question to the faq page, this is at least the 3rd or
>> 4th time this came up.
>>>> 
>>>> Sent from my iPhone
>>>> 
>>>>> On 2016/09/11, at 6:11, Juan Fuentes <juanmarianofuentes@gmail.com>
>> wrote:
>>>>> 
>>>>> Thanks Matt and Ralph,
>>>>> 
>>>>> I have extended ExtendedLoggerWrapper and it seems to work. Let’s hope
>> I don’t stumble against other peculiarities.
>>>>> 
>>>>> Thanks again!
>>>>> Juan
>>>>> 
>>>>>> On 10 Sep 2016, at 21:44, Matt Sicker <boards@gmail.com> wrote:
>>>>>> 
>>>>>> 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>
>>>>> 
>>>>> 
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>>>>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>>>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>> 
>>> 
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>> 
>> 


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