Posts

Showing posts with the label class log

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. SolutionAdd logger statement in your java classadd log4j2 configuration for your custom Java classRestart the Hybris serverMyService.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

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

Scenario Sometime 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 Hybris server.

Solution Your hope will come true. Yes, we can do it simply through the groovy script. Go to HAC > Console > Scripting languagePast the below groovy scriptchange your full class in setLogger method setLogger("de.hybris.platform.jalo.flexiblesearch.FlexibleSearch", "DEBUG");execute the scriptimport 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 logClass, String logLevel ) { final HybrisLoggerContext loggerCtx = (HybrisLoggerContext) LogManager.getContext(false); final Configuration loggerCfg = loggerCtx.getConfig…