Created
November 3, 2014 03:05
-
-
Save 0532/bea1b83be77ced371c90 to your computer and use it in GitHub Desktop.
log4j.properties
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| package pub.platform.utils; | |
| import org.apache.log4j.*; | |
| import java.io.InputStream; | |
| import java.util.*; | |
| /** | |
| * <p>Title: 基础框架</p> | |
| * <p>Description: 日志</p> | |
| * <p>Copyright: Copyright (c) 2004</p> | |
| * <p>Company: 青岛中天科技</p> | |
| * @author 林意炜 | |
| * @version 1.0 | |
| */ | |
| public class Log { | |
| public static final int OFF = 0; | |
| public static final int FATAL = 1; | |
| public static final int ERROR = 2; | |
| public static final int WARN = 3; | |
| public static final int INFO = 4; | |
| public static final int DEBUG = 5; | |
| public static final int ALL = 6; | |
| private static Logger logger = null; | |
| private static final String fileName= "/log4j.properties"; | |
| private void getlog(){ | |
| //初始化Log4j配置信息 | |
| try { | |
| //构建配置文件输入流 | |
| InputStream input = getClass().getResourceAsStream(fileName); | |
| Properties props = new Properties(); | |
| props.load(input); | |
| input.close(); | |
| PropertyConfigurator.configure(props); | |
| logger = Logger.getRootLogger(); | |
| } catch (Exception ex) { | |
| // 加载日志文件出错时不能用日志类进行日志输出 | |
| if (fileName.indexOf("log") > 0) { | |
| System.out.println("读取" + fileName + "配置文件出错!"); | |
| } else { | |
| getLogger().error("读取" + fileName + "配置文件出错!", ex); | |
| } | |
| } | |
| } | |
| /** | |
| * 获取日志 | |
| * @return | |
| */ | |
| public Logger getLogger() { | |
| if (logger ==null) | |
| getlog(); | |
| return logger; | |
| } | |
| /** | |
| * 获取日志级别 | |
| * @return | |
| */ | |
| public static String getLogLevel() { | |
| return logger.getLevel().toString(); | |
| } | |
| /** | |
| * 设置日志级别 | |
| * @param level | |
| */ | |
| public static void setLevel(int level) { | |
| switch (level) { | |
| case OFF: | |
| logger.setLevel(Level.OFF); | |
| break; | |
| case FATAL: | |
| logger.setLevel(Level.FATAL); | |
| break; | |
| case ERROR: | |
| logger.setLevel(Level.ERROR); | |
| break; | |
| case WARN: | |
| logger.setLevel(Level.WARN); | |
| break; | |
| case INFO: | |
| logger.setLevel(Level.INFO); | |
| break; | |
| case DEBUG: | |
| logger.setLevel(Level.DEBUG); | |
| break; | |
| case ALL: | |
| logger.setLevel(Level.ALL); | |
| break; | |
| default: | |
| break; | |
| } | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //日志输出的本地文件地址 | |
| prj_root_dir=d:/fbi_projects/fbifeb | |
| //此句为将等级为INFO的日志信息输出到stdout和logfile,errorfile这三个目的地 | |
| log4j.rootLogger=INFO,stdout,logfile,errorfile | |
| log4j.logger.skyline.auth=INFO,ptfile | |
| log4j.logger.org.springframework=INFO,stdout | |
| log4j.logger.org.xsocket=INFO,stdout | |
| log4j.additivity.org.apache = false | |
| //此句为定义名为stdout的输出端是哪种类型,可以是 | |
| log4j.appender.stdout=org.apache.log4j.ConsoleAppender //(控制台) | |
| //此句为定义名为stdout的输出端的layout是哪种类型,可以是 | |
| log4j.appender.stdout.layout=org.apache.log4j.PatternLayout //(可以灵活地指定布局模式), | |
| log4j.appender.stdout.layout.ConversionPattern=[%d] [%p] [%t:%r] %l %n%m%n--------------------------------------------------------------------------------------------|%n | |
| //如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern,打印参数如下: | |
| //%m 输出代码中指定的消息 | |
| //%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL | |
| //%r 输出自应用启动到输出该log信息耗费的毫秒数 | |
| //%c 输出所属的类目,通常就是所在类的全名 | |
| //%t 输出产生该日志事件的线程名 | |
| //%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n” | |
| //%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921 | |
| //%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。 | |
| //[QC]是log信息的开头,可以为任意字符,一般为项目简称。 | |
| log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender | |
| //定义名为logfile的输出端的类型为每天产生一个日志文件。 | |
| #log4j.appender.logfile=skyline.common.utils.ProjectRollingFileAppender | |
| log4j.appender.logfile.File=${prj_root_dir}/log/feb.log | |
| //此句为定义名为logfile的输出端的文件名为prj_root_dir\\logs\\qc.log可以自行修改 | |
| log4j.appender.logfile.DatePattern='.'yyyy-MM-dd | |
| //每日滚动一次日志文件,即每日产生一个新的日志文件。当前日的日志文件名为logging.log4j,前一个日的日志文件名为logging.log4j.yyyy-MM-dd。 | |
| log4j.appender.logfile.layout=org.apache.log4j.PatternLayout | |
| log4j.appender.logfile.layout.ConversionPattern=[%d] [%p] [%t:%r] %l %n%m%n--------------------------------------------------------------------------------------------|%n | |
| ### \u4FDD\u5B58\u5F02\u5E38\u4FE1\u606F\u5230\u5355\u72EC\u6587\u4EF6 ### | |
| log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender | |
| #log4j.appender.errorfile = skyline.common.utils.ProjectRollingFileAppender | |
| log4j.appender.errorfile.File = ${prj_root_dir}/log/error.log | |
| log4j.appender.errorfile.DatePattern='.'yyyy-ww | |
| log4j.appender.errorfile.Append = true //true表示消息增加到指定文件中,false则将消息覆盖指定的文件内容,默认值是true。 | |
| log4j.appender.errorfile.Threshold = ERROR //指定日志信息的error输出级别,默认为DEBUG。 | |
| log4j.appender.errorfile.layout = org.apache.log4j.PatternLayout | |
| log4j.appender.errorfile.layout.ConversionPattern = [%d] [%p] [%t:%r] %l %n%m%n--------------------------------------------------------------------------------------------|%n | |
| #\u5E73\u53F0\u7684\u767B\u5F55\u4FE1\u606F | |
| #log4j.appender.ptfile=skyline.common.utils.ProjectRollingFileAppender | |
| log4j.appender.ptfile=org.apache.log4j.DailyRollingFileAppender | |
| log4j.appender.ptfile.File = ${prj_root_dir}/log/platform.log | |
| log4j.appender.ptfile.DatePattern = '.'yyyy-ww | |
| log4j.appender.ptfile.layout=org.apache.log4j.PatternLayout | |
| log4j.appender.ptfile.layout.ConversionPattern=[%d] [%p] [%t:%r] %l %n%m%n--------------------------------------------------------------------------------------------|%n | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment