log4j简单封装
2018-07-20 来源:open-open
package ecp.framework.log;
import java.net.InetAddress;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log {
protected Logger logger;
//将Log类封装成单实例的模式,独立于其他类。以后要用到日志的地方只要获得Log的实例就可以方便使用
private static Log log;
//构造函数,用于初始化Logger配置需要的属性
private Log(Logger log4jLogger)
{
//获得当前目录路径
//String filePath=this.getClass().getResource("/").getPath();
//找到log4j.properties配置文件所在的目录(已经创建好)
//filePath=filePath.substring(1).replace("bin", "src");
//获得日志类logger的实例
//loger=Logger.getLogger(this.getClass());
logger = log4jLogger;
//logger所需的配置文件路径 D:\\publish2\\log4j.properties
PropertyConfigurator.configureAndWatch("/u01/logs/log4j.properties");
}
/**
* 获取构造器,根据类初始化Logger对象
*
* @param Class Class对象
* @return Logger对象
*/
public static Log getLogger(Class classObject) {
if(log!=null)
return log;
else
return new Log(Logger.getLogger(classObject));
}
/*
* 该事件ID包含当前时间和主机IP,是标示日志时间的唯一符
* @see com.ccae.monitor.log.ILogInfor#eventID()
*/
protected String eventID() {
// 获取当前时间
//如果不需要格式,可直接用dt,dt就是当前系统时间
Date dt=new Date();
//设置显示格式,24小时制
DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String nowTime= df.format(dt);//用DateFormat的format()方法在dt中获取并以yyyy/MM/dd HH:mm:ss格式显示
String nowIP;
try{
InetAddress addr = InetAddress.getLocalHost();
nowIP = addr.getHostAddress();
}
catch(Exception ex){
nowIP = "";
}
nowTime=nowTime.replaceAll("/","");
nowTime=nowTime.replaceAll(" ","");
nowTime=nowTime.replaceAll(":","");
nowIP=nowIP.replace(".","");
String nowID=nowTime+nowIP;
return nowID;
}
public void debug(String KeyWord,String Content) {
if(logger.isDebugEnabled()){
String message=" "+KeyWord+" "+Content;
logger.debug(message);
}
}
public void debug(String Content) {
if(logger.isDebugEnabled()){
logger.debug(Content);
}
}
public void fatal(String KeyWord,String Content) {
String message=" "+KeyWord+" "+Content;
logger.fatal(message);
}
public void fatal(String Content) {
logger.fatal(Content);
}
public void info(String KeyWord,String Content) {
if(logger.isInfoEnabled()){
String message=KeyWord+" "+Content;
logger.info(message);
}
}
public void info(String Content) {
if(logger.isInfoEnabled())
logger.info(Content);
}
public void warn(String KeyWord,String Content) {
String message=KeyWord+" "+Content;
logger.warn(message);
}
public void warn(String Content) {
logger.warn(Content);
}
public void error(String KeyWord,String Content) {
String message1=KeyWord+" "+Content;
logger.error(message1);
}
public void error(String Content) {
logger.error(Content);
}
}
import java.net.InetAddress;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log {
protected Logger logger;
//将Log类封装成单实例的模式,独立于其他类。以后要用到日志的地方只要获得Log的实例就可以方便使用
private static Log log;
//构造函数,用于初始化Logger配置需要的属性
private Log(Logger log4jLogger)
{
//获得当前目录路径
//String filePath=this.getClass().getResource("/").getPath();
//找到log4j.properties配置文件所在的目录(已经创建好)
//filePath=filePath.substring(1).replace("bin", "src");
//获得日志类logger的实例
//loger=Logger.getLogger(this.getClass());
logger = log4jLogger;
//logger所需的配置文件路径 D:\\publish2\\log4j.properties
PropertyConfigurator.configureAndWatch("/u01/logs/log4j.properties");
}
/**
* 获取构造器,根据类初始化Logger对象
*
* @param Class Class对象
* @return Logger对象
*/
public static Log getLogger(Class classObject) {
if(log!=null)
return log;
else
return new Log(Logger.getLogger(classObject));
}
/*
* 该事件ID包含当前时间和主机IP,是标示日志时间的唯一符
* @see com.ccae.monitor.log.ILogInfor#eventID()
*/
protected String eventID() {
// 获取当前时间
//如果不需要格式,可直接用dt,dt就是当前系统时间
Date dt=new Date();
//设置显示格式,24小时制
DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String nowTime= df.format(dt);//用DateFormat的format()方法在dt中获取并以yyyy/MM/dd HH:mm:ss格式显示
String nowIP;
try{
InetAddress addr = InetAddress.getLocalHost();
nowIP = addr.getHostAddress();
}
catch(Exception ex){
nowIP = "";
}
nowTime=nowTime.replaceAll("/","");
nowTime=nowTime.replaceAll(" ","");
nowTime=nowTime.replaceAll(":","");
nowIP=nowIP.replace(".","");
String nowID=nowTime+nowIP;
return nowID;
}
public void debug(String KeyWord,String Content) {
if(logger.isDebugEnabled()){
String message=" "+KeyWord+" "+Content;
logger.debug(message);
}
}
public void debug(String Content) {
if(logger.isDebugEnabled()){
logger.debug(Content);
}
}
public void fatal(String KeyWord,String Content) {
String message=" "+KeyWord+" "+Content;
logger.fatal(message);
}
public void fatal(String Content) {
logger.fatal(Content);
}
public void info(String KeyWord,String Content) {
if(logger.isInfoEnabled()){
String message=KeyWord+" "+Content;
logger.info(message);
}
}
public void info(String Content) {
if(logger.isInfoEnabled())
logger.info(Content);
}
public void warn(String KeyWord,String Content) {
String message=KeyWord+" "+Content;
logger.warn(message);
}
public void warn(String Content) {
logger.warn(Content);
}
public void error(String KeyWord,String Content) {
String message1=KeyWord+" "+Content;
logger.error(message1);
}
public void error(String Content) {
logger.error(Content);
}
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇:iOS中加速度传感器的使用
下一篇:操作APN的工具类
最新资讯
热门推荐