package cn.hs.dpl.utils;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import org.apache.log4j.Logger;
import org.apache.log4j.SimpleLayout;
import org.apache.log4j.WriterAppender;
import org.apache.log4j.jdbc.JDBCAppender;
/**
* @author wWX61846
* 日志工具类
*
*/
public class LoggerUtil {
private static Logger logger = Logger.getLogger(LoggerUtil.class.getName());
private static Properties properties = new Properties();
/* static{
SimpleLayout layout = new SimpleLayout ();
//向文件中输出信息,OutputStream示例
WriterAppender appender1 = null;
try {
String temp = Thread.currentThread().getContextClassLoader().getResource("").getPath() ;
temp = temp.substring(0, temp.lastIndexOf("WEB-INF")); //WEB-INF 上一級就是項目的根目錄
String s = temp + "\\log" + "\\appMgr_log.txt";
appender1 = new WriterAppender(layout, new FileOutputStream(s));
} catch(Exception ex) {}
logger.addAppender(appender1);
}*/
static{
JDBCAppender appender = new JDBCAppender();
String file = Thread.currentThread().getContextClassLoader().getResource("").getPath()+ "jdbc.properties";
File f = new File(file);
try {
InputStream in = new FileInputStream(f);
properties.load(in);
} catch (IOException e) {
e.printStackTrace();
}
String driverName = properties.getProperty("jdbc.driver");
String url = properties.getProperty("jdbc.url");
String username = properties.getProperty("jdbc.username");
String password = properties.getProperty("jdbc.password");
appender.setDriver(driverName);
appender.setURL(url);
appender.setUser(username);
appender.setPassword(password);
appender.setSql("insert into v5r1_log (operateContent,operateDate) values ('%m','%d{yyyy-MM-dd HH:mm:ss}')");
logger.addAppender(appender);
// log4j.rootLogger=info,db
//
// log4j.appender.db=org.apache.log4j.jdbc.JDBCAppender
// log4j.appender.db.driver=com.mysql.jdbc.Driver
// log4j.appender.db.URL=jdbc:mysql://127.0.0.1/log
// log4j.appender.db.bufferSize=10
// log4j.appender.db.user=root
// log4j.appender.db.password=123
// log4j.appender.db.sql=insert into log (LogName,UserName,Class,Method,createTime,LogLevel,MSG) values ('%X{userId}','%X{userName}','%C','%M','%d{yyyy-MM-dd HH:mm:ss}','%p','%m')
// log4j.appender.db.layout=org.apache.log4j.PatternLayout
}
/**
* @param msg
* INFO级别的日志
*/
public static void tranceINFO(String msg) {
logger.info( msg);
}
/**
* @param username
* @param msg
* 记录用户的操作, eg:张三 --> 删除了XXX应用
*/
public static void tranceINFO(String username, String msg) {
logger.info(username + " --> " + msg);
}
/**
* @param msg
* WARN级别的日志
*/
public static void tranceWARN(String msg) {
logger.warn(msg);
}
/**
* @param msg
* ERROR级别的日志
*/
public static void tranceERROR(String msg) {
logger.error(msg);
}
public static void main(String[] args) {
}
}
分享到:
相关推荐
java日志管理
Java日志管理是Java开发中不可或缺的一部分,它用于记录应用程序运行过程中的各种信息,包括错误、警告、调试信息等,帮助开发者追踪问题、优化性能以及理解程序运行状态。Log4j是Java领域广泛使用的日志框架之一,...
【基于Java Web的工作日志管理系统文档】 工作日志管理系统是一个重要的工具,用于提升工作效率和团队协作,尤其在当今数字化时代,信息安全和数据管理的需求日益增长。传统的纸质日志或通知方式已经不能满足现代...
基于Java日志管理系统设计与实现.doc
系统功能管理模块主要由用户管理子模块、角色管理子模块、角色设置管理子模块、权限管理子模块、系统菜单管理子模块、日志管理子模块和用户登录验证子模块构成。通过对系统功能的各种设置,实现对系统各级用户的角色...
Java日志管理是Java开发中不可或缺的一部分,它用于记录应用程序运行过程中的事件和错误信息,以便于调试、性能分析和故障排查。免费开放的日志管理解决方案可以极大地降低开发成本,提高开发效率。在这个名为"Java_...
总的来说,这个“java日志文件过滤”项目提供了一个便捷的工具,帮助开发者快速处理和分析日志数据,提高了问题排查和系统监控的效率。通过学习和理解这个项目,你可以深化对Java日志处理、文件I/O和条件过滤等技术...
Spring是一种基于Java的开源框架,可以用于构建Web应用程序。利用Spring实现Java Web技术可以带来许多好处,包括: 1. 简化开发:Spring提供了一系列的模块和工具,可以帮助开发人员更快速、更高效地开发Web应用...
### 基于Java的员工日志管理系统的设计与实现 #### 概述 本文介绍了一种基于Java EE技术的企业员工日志管理系统的设计与实现。该系统利用Java Web技术和B/S架构,采用开源的Tomcat作为Web容器,以及SQL Server ...
在IT行业中,日志管理是系统监控和故障排查的关键环节,尤其在Java应用程序中尤为重要。"cll.rar_日志 java_日志管理"这个压缩包文件可能包含了一个用于管理和处理Java应用程序日志的系统或者工具。日志记录了程序...
《毕业设计:基于Java的员工日志管理系统》 在当今的企业运营中,有效管理和跟踪员工的工作日志至关重要,它能够帮助企业提升工作效率,优化资源分配,同时也为员工绩效评估提供了有力的数据支持。本毕业设计实现了...
4. **与其他工具集成**:cronolog可以与logrotate等日志管理工具结合使用,提供更灵活的日志维护策略。 通过结合这两个工具,开发者可以构建一个高效、可扩展的Java项目运行环境,确保服务在Linux上的稳定运行,并...
总之,Java日志控件通过其强大的功能和易用性,极大地简化了Java应用的日志管理,提高了开发效率,也为系统的稳定性和安全性提供了保障。在实际项目中,正确使用和配置日志控件,能帮助开发者更好地理解和优化应用的...
总的来说,"Java简易日志组件"提供了一种简单的方法来管理和监控Java应用程序的运行状态。通过理解和掌握其使用方法,开发者能够更好地调试和维护自己的程序,提升开发效率。而提供的配置和示例Demo则使得学习和上手...
Java日志框架是Java开发中不可或缺的部分,它们用于记录应用程序的运行信息,帮助开发者追踪错误、调试代码以及进行性能分析。Log4j和Logback是其中最常用的两个框架,它们都由Ceki Gülcü创建,并且在设计上有着...
Java日志库是Java开发中不可或缺的部分,它们帮助开发者记录应用程序的运行状态、错误信息以及调试数据。在Java世界里,日志框架的选择多种多样,其中log4j、Commons Logging和SLF4J(Simple Logging Facade for ...
JAVA日志框架适配-冲突解决方案 本文将对JAVA日志框架适配中可能出现的冲突进行分析和解决,涵盖日志框架的基本概念、常见的冲突原因和解决方案。 日志框架的基本概念: 在JAVA中,日志框架可以分为两种:日志...
这篇文档主要讨论了如何在Java Swing应用中使用`Logger`来生成和管理错误日志。 `Logger`是Java的日志记录工具,它提供了多种级别(如SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST)来区分不同严重程度的...
在Java中实现微服务的日志管理是一个复杂但至关重要的任务,它涉及到日志的收集、存储、分析和可视化。以下是如何在Java微服务中实现日志管理的详细步骤和代码示例。 通过上述步骤,可以在Java微服务架构中实现全面...
3. **Java日志框架** - Log4j:经典日志框架,提供了灵活的日志配置和多种Appender(如文件、数据库等)。 - Logback:由Log4j作者设计的新一代日志框架,性能优于Log4j。 - SLF4J(Simple Logging Facade for ...