Expand my Community achievements bar.

Sl4j MDC log not printed

Avatar

Level 2

Hi ,

I am trying configure SL4J MDC log but the logger is not printing in pattern given in the logger configuration .

Bellow are the steps followed.

1. created one logger configuration as shown in attached diagram with pattern  "%d{dd.MM.yyyy HH:mm:ss.SSS} *%p* [%X{req.q}] [%t] %c %msg%n".

2. In the Apache sling logging configuration added the parameter as "q".

3. In the Servlet put one logger.debug to print the logger.

4. We are hitting the Servlet with parameter q="something". Logger.debug not printing in the mdc log format ,even if we are removing time stampmdcfilter.jpgslingloggerconfig.jpg from the pattern it is always printing in the same format as

23.05.2018 16:24:54.581 *DEBUG* [0:0:0:0:0:0:0:1 [1527072894580] GET /bin/cookie/set HTTP/1.1] com.mattel.ag.core.servlets.CookieAddingServlet Querry parameter is q=Sinha1

Can any one please tell any configuration is missing or needed something else?

6 Replies

Avatar

Level 10

Logging in AEM is discussed in this doc topic - Logging

Avatar

Employee Advisor

It's not nicely documented, but you need to install the Sling MDC Inserting Filter, available at these coordinates:

<dependency>

    <groupId>org.apache.sling</groupId>

    <artifactId>org.apache.sling.extensions.slf4j.mdc</artifactId>

    <type>zip</type>

    <version>1.0.0</version>

</dependency>

Deploying that bundle into AEM should do make it work.

regards,

Jörg

Avatar

Level 2

Hi All,

Still am not getting slf4j-mdc log.Any suggestion for integration.

Avatar

Community Advisor

Dear Sanket,

Install mdc extension to your AEM instance.

Regards,Peter

Avatar

Level 2

Hi PuzanovsP,

I Installed mdc extension to my AEM instance. I have created servlet to get SlingHttpServletRequest.

I created l ogs/mdcerror.log file with

"%d{dd.MM.yyyy HH:mm:ss.SSS} *%p* [%X{req.remoteHost}] [%t] %c %msg%n"  pattern.

Avatar

Level 4

A bit late reply but found out during my own debug session.

You need to set up the filter ranking higher. You can do it using either osgi repository based configuration or setup your own mdc filter. This happens when mdc filter is not called up in the hierarchy of filters so setup it's ranking high enough.

This resolved problem for me and my mdc pattern logs started firing up