All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lambadaframework.logger.LambdaLogger Maven / Gradle / Ivy

There is a newer version: 0.0.6
Show newest version
package org.lambadaframework.logger;


import com.amazonaws.services.lambda.runtime.log4j.LambdaAppender;
import org.apache.log4j.Appender;
import org.apache.log4j.Level;
import org.apache.log4j.PatternLayout;

public class LambdaLogger {

    private static Appender appender;

    private static Level globalLogLevel = Level.ALL;

    private static Appender getAppender() {
        if (appender == null) {
            PatternLayout patternLayout = new PatternLayout();
            patternLayout.setConversionPattern("%d{yyyy-MM-dd HH:mm:ss} <%X{AWSRequestId}> %-5p %c{1}:%L - %m%n");
            appender = new LambdaAppender();
            appender.setLayout(patternLayout);
        }
        return appender;
    }

    public static void setLogLevel(Level level) {
        globalLogLevel = level;
    }

    public static org.apache.log4j.Logger getLogger(Class clazz) {
        return getLogger(clazz, globalLogLevel);
    }

    public static org.apache.log4j.Logger getLogger(Class clazz, Level level) {
        org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(clazz);
        logger.setLevel(level);
        logger.addAppender(getAppender());
        return logger;
    }
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy