X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-core%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fserver%2FLog4JLogIt.java;h=894f571d0c6ccd0ee14d0f4ce746ccef204b5f60;hb=ff1417ff60baee231a28272f9a16ef2c9c8ea0a2;hp=e295c867ff5d34ea164b1d113cb3cf96672f31df;hpb=924b18d7469204ceaae60d7345712ea09f75a674;p=aaf%2Fauthz.git diff --git a/auth/auth-core/src/main/java/org/onap/aaf/auth/server/Log4JLogIt.java b/auth/auth-core/src/main/java/org/onap/aaf/auth/server/Log4JLogIt.java index e295c867..894f571d 100644 --- a/auth/auth-core/src/main/java/org/onap/aaf/auth/server/Log4JLogIt.java +++ b/auth/auth-core/src/main/java/org/onap/aaf/auth/server/Log4JLogIt.java @@ -22,7 +22,6 @@ package org.onap.aaf.auth.server; import java.io.File; import java.io.IOException; -import java.text.SimpleDateFormat; import org.apache.log4j.Logger; import org.onap.aaf.cadi.Access.Level; @@ -31,103 +30,105 @@ import org.onap.aaf.cadi.PropAccess.LogIt; import org.onap.aaf.cadi.config.Config; import org.onap.aaf.misc.env.APIException; import org.onap.aaf.misc.env.log4j.LogFileNamer; +import org.onap.aaf.misc.env.util.Chrono; public class Log4JLogIt implements LogIt { - protected static final String AAF_LOG4J_PREFIX = "aaf_log4j_prefix"; + protected static final String AAF_LOG4J_PREFIX = "aaf_log4j_prefix"; + // Log4j does it's own date. Can't apparently turn it off. + + private final String service; + private final String audit; + private final String init; + private final String trace; - // Sonar says cannot be static... it's ok. not too many PropAccesses created. - private final SimpleDateFormat iso8601 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); - - private final String service; - private final String audit; - private final String init; - private final String trace; + private final Logger lservice; + private final Logger laudit; + private final Logger linit; + private final Logger ltrace; - private final Logger lservice; - private final Logger laudit; - private final Logger linit; - private final Logger ltrace; + public Log4JLogIt(final String[] args, final String root) throws APIException { + String propsFile = getArgOrVM(AAF_LOG4J_PREFIX, args, "org.osaaf.aaf")+".log4j.props"; + String log_dir = getArgOrVM(Config.CADI_LOGDIR,args,"/opt/app/osaaf/logs"); + String etc_dir = getArgOrVM(Config.CADI_ETCDIR,args,"/opt/app/osaaf/etc"); + String log_level = getArgOrVM(Config.CADI_LOGLEVEL,args,"INFO"); + File logs = new File(log_dir); + if (!logs.isDirectory()) { + logs.delete(); + } + if (!logs.exists()) { + logs.mkdirs(); + } - public Log4JLogIt(final String[] args, final String root) throws APIException { - String propsFile = getArgOrVM(AAF_LOG4J_PREFIX, args, "org.osaaf")+".log4j.props"; - String log_dir = getArgOrVM(Config.CADI_LOGDIR,args,"/opt/app/osaaf/logs"); - String etc_dir = getArgOrVM(Config.CADI_ETCDIR,args,"/opt/app/osaaf/etc"); - String log_level = getArgOrVM(Config.CADI_LOGLEVEL,args,"INFO"); - File logs = new File(log_dir); - if(!logs.isDirectory()) { - logs.delete(); - } - if(!logs.exists()) { - logs.mkdirs(); - } + if (System.getProperty("log4j.configuration")==null) { + System.setProperty("log4j.configuration", etc_dir+'/'+propsFile); + } + LogFileNamer lfn = new LogFileNamer(log_dir,root); + try { + service=lfn.setAppender("service"); // when name is split, i.e. authz|service, the Appender is "authz", and "service" + audit=lfn.setAppender("audit"); // is part of the log-file name + init=lfn.setAppender("init"); + trace=lfn.setAppender("trace"); - LogFileNamer lfn = new LogFileNamer(log_dir,root); - try { - service=lfn.setAppender("service"); // when name is split, i.e. authz|service, the Appender is "authz", and "service" - audit=lfn.setAppender("audit"); // is part of the log-file name - init=lfn.setAppender("init"); - trace=lfn.setAppender("trace"); + lservice = Logger.getLogger(service); + laudit = Logger.getLogger(audit); + linit = Logger.getLogger(init); + ltrace = Logger.getLogger(trace); + + lfn.configure(etc_dir,propsFile, log_level); + } catch (IOException e) { + throw new APIException(e); + } + } + + private static final String getArgOrVM(final String tag, final String args[], final String def) { + String tagEQ = tag + '='; + String value; + for (String arg : args) { + if (arg.startsWith(tagEQ)) { + return arg.substring(tagEQ.length()); + } + } + // check System.properties + value = System.getProperty(tag); + if (value!=null) { + return value; + } + + return def; + } - lservice = Logger.getLogger(service); - laudit = Logger.getLogger(audit); - linit = Logger.getLogger(init); - ltrace = Logger.getLogger(trace); - - lfn.configure(etc_dir,propsFile, log_level); - } catch (IOException e) { - throw new APIException(e); - } - } - - private static final String getArgOrVM(final String tag, final String args[], final String def) { - String tagEQ = tag + '='; - String value; - for(String arg : args) { - if(arg.startsWith(tagEQ)) { - return arg.substring(tagEQ.length()); - } - } - // check System.properties - value = System.getProperty(tag); - if(value!=null) { - return value; - } - - return def; - } + @Override + public void push(Level level, Object... elements) { + switch(level) { + case AUDIT: + laudit.warn(PropAccess.buildMsg(audit, Chrono.utcFmt, level, elements)); + break; + case INIT: + linit.warn(PropAccess.buildMsg(init, Chrono.utcFmt, level, elements)); + break; + case ERROR: + lservice.error(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + case WARN: + lservice.warn(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + case INFO: + lservice.info(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + case DEBUG: + lservice.debug(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + case TRACE: + ltrace.trace(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + case NONE: + break; + default: + lservice.info(PropAccess.buildMsg(service, Chrono.utcFmt, level, elements)); + break; + + } - @Override - public void push(Level level, Object... elements) { - switch(level) { - case AUDIT: - laudit.warn(PropAccess.buildMsg(audit, iso8601, level, elements)); - break; - case INIT: - linit.warn(PropAccess.buildMsg(init, iso8601, level, elements)); - break; - case ERROR: - lservice.error(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - case WARN: - lservice.warn(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - case INFO: - lservice.info(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - case DEBUG: - lservice.debug(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - case TRACE: - ltrace.trace(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - case NONE: - break; - default: - lservice.info(PropAccess.buildMsg(service, iso8601, level, elements)); - break; - - } - - } + } }