Posts

Showing posts with the label log4j2

How to add you custom class in HAC logging list?

Scenario Hybris use  log4j2 logger . We can change the log level for preconfigured classes from the HAC > Platform > Loggin (like root , org.springframework etc.). But what if we want to configure logger for our custom class. Solution Add logger statement in your java class add log4j2 configuration for your custom Java class Restart the Hybris server MyService.Java private static final Logger LOG = Logger.getLogger(MyService.class); LOG.debug("I am debug log"); local.properties \#log4j2 configuration log4j2.rootLogger.level = warn log4j2.logger.myService.name = com.extended.service.impl.MyService log4j2.logger.myService.level = warn log4j2.logger.myService.appenderRef.stdout.ref = STDOUT log4j2.logger.customService.name = com.extended.service.impl.CustomService log4j2.logger.customService.level = warn log4j2.logger.customService.appenderRef.stdout.ref = STDOUT Do you know this also can be done  without restarting Hybris server?

How to change class log level in Hybris without restarting server?

Image
Scenario Sometimes to debug the production issue, we want to enable log level for certain classes which were not configured in local.properties and we hope we could do it without restarting the Hybris server. Solution If your hybris version > v6 you can easily do this by navigating hac/platform/log4j . Here you can add your full class package and the log level you want.  In the older hybris version, you can do the same using the groovy script. Go to HAC > Console > Scripting language Past the below groovy script change your full class in setLogger method setLogger("de.hybris.platform.jalo.flexiblesearch.FlexibleSearch", "DEBUG"); execute the script import org.apache.logging.log4j.*; import org.apache.logging.log4j.core.config.*; import de.hybris.platform.util.logging.log4j2.HybrisLoggerContext; //Example setLogger("de.hybris.platform.jalo.flexiblesearch.FlexibleSearch", "DEBUG"); public String setLogger(String logCla