原文:http://blog.csdn.net/lengyuhong/article/details/5832799

简介:

Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

此外,通过Log4j其他语言接口,您可以在C、C++、.Net、PL/SQL程序中使用Log4j,其语法和用法与在Java程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第三方扩展,您可以很方便地将Log4j集成到J2EE、JINI甚至是SNMP应用中。

应用例程:

1. 下载Log4J的jar包

下载地址:http://download.csdn.net/source/2637105

2. 新建一个工程,导入下载的jar包

3. 分别在src文件夹下面生成一个log4j.properties文件,在工程根目录下,新建一个log文件夹,再在该文件夹下面新建log.log文件和errorlog.log文件。

具体结构如下:

ps:这里log4j.properties文件主要是log4j的相关配置,而log.log是一般正常的日志,而errorlog.log是错误日志

4. 打开log4j.properties文件

输入如下信息:

  1. log4j.rootLogger=info, stdout, log, errorlog
  2. log4j.Logger=search,Test
  3. ###Console ###
  4. log4j.appender.stdout = org.apache.log4j.ConsoleAppender
  5. log4j.appender.stdout.Target = System.out
  6. log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
  7. log4j.appender.stdout.layout.ConversionPattern =  %d{ABSOLUTE} [ %t ] [ %p ]:%L - %m%n
  8. ### Log ###
  9. log4j.appender.log = org.apache.log4j.DailyRollingFileAppender
  10. log4j.appender.log.File = log/log.log
  11. log4j.appender.log.Append = true
  12. log4j.appender.log.Threshold = INFO
  13. log4j.appender.log.DatePattern='.'yyyy-MM-dd
  14. log4j.appender.log.layout = org.apache.log4j.PatternLayout
  15. log4j.appender.log.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t ] %m%n
  16. ### Error ###
  17. log4j.appender.errorlog = org.apache.log4j.DailyRollingFileAppender
  18. log4j.appender.errorlog.File = log/errorlog.log
  19. log4j.appender.errorlog.Append = true
  20. log4j.appender.errorlog.Threshold = ERROR
  21. log4j.appender.errorlog.DatePattern='.'yyyy-MM-dd
  22. log4j.appender.errorlog.layout = org.apache.log4j.PatternLayout
  23. log4j.appender.errorlog.layout.ConversionPattern =%-d{yyyy-MM-dd HH:mm:ss} [ %t ] %m%n

5. 写测试函数,新建一个java类,文件名为TestLog4J,内容如下

  1. import org.apache.log4j.Logger;
  2. public class TestLog4J {
  3. public static void main(String[] args) {
  4. Logger logger = Logger.getLogger(TestLog4J.class);
  5. logger.info("zhujiadun");
  6. }
  7. }

6. 运行结果:

控制台信息:

log.log日志文件中的信息

参考文档:

http://www.hudong.com/wiki/log4j

http://download.csdn.net/source/2637095

Log4J的入门简介学习【转】的更多相关文章

  1. ASP.NET Core学习之一 入门简介

    一.入门简介 在学习之前,要先了解ASP.NET Core是什么?为什么?很多人学习新技术功利心很重,恨不得立马就学会了. 其实,那样做很不好,马马虎虎,联系过程中又花费非常多的时间去解决所遇到的“问 ...

  2. .NetCore微服务Surging新手傻瓜式 入门教程 学习日志---结构简介(二)

    原文:.NetCore微服务Surging新手傻瓜式 入门教程 学习日志---结构简介(二) 先上项目解决方案图: 以上可以看出项目结构可以划分为4大块,1是surging的核心底层,2,3,4都可以 ...

  3. SpringBoot学习笔记(一)入门简介

    一.SpringBoot 入门简介 整体讲解内容概况: 1.1 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案. Spring Boot ...

  4. 掌握 Ajax,第 1 部分: Ajax 入门简介

    转:http://www.ibm.com/developerworks/cn/xml/wa-ajaxintro1.html 掌握 Ajax,第 1 部分: Ajax 入门简介 理解 Ajax 及其工作 ...

  5. Webpack新手入门教程(学习笔记)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 30.0px Helvetica; color: #000000 } ...

  6. 初学者福音——10个最佳APP开发入门在线学习网站

    根据Payscale的调查显示,现在的APP开发人员的年薪达到:$66,851.这也是为什么那么多初学的开发都想跻身到APP开发这行业的主要原因之一.每当你打开App Store时候,看着琳琅满目的A ...

  7. webservice入门简介

    为了梦想,努力奋斗! 追求卓越,成功就会在不经意间追上你 webservice入门简介 1.什么是webservice? webservice是一种跨编程语言和跨操作系统平台的远程调用技术. 所谓的远 ...

  8. java 日志体系(三)log4j从入门到详解

    java 日志体系(三)log4j从入门到详解 一.Log4j 简介 在应用程序中添加日志记录总的来说基于三个目的: 监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作: 跟踪代 ...

  9. log4j快速入门

    转自:http://blog.csdn.net/yanwushu/article/details/7581255 1.引言 在应用程序中添加日志记录总的来说基于三个目的: .监视代码中变量的变化情况, ...

随机推荐

  1. 文本框value联动修改

    <input id="ipt-edit" value="" /><input id="ipt-target" value= ...

  2. Python dir

    1. 在python命令行交互环境下,可以用dir()函数查看当前的变量,比如: >>> dir()['__builtins__', '__doc__', '__loader__', ...

  3. jsp 入门 cookie session

    Java Server Page ==> 服务器端的动态页面资源.用来做显示的功能. JSP构成 ==> HTML 脚本代码 标签构成. JSP 原理 ==> 实际上就是 servl ...

  4. 翻译:打造Edge渲染内核的浏览器

    最近开始了解UWP和Edge内核,在微软技术博客中找到一篇文章,主要是介绍Edge渲染内核使用技术.顺手翻译了一下.不对之处请斧正! Over the past several months, we ...

  5. 使用poi读取xlsx中的数据

    excel中的内容见下图: 详细代码: package dataprovider; import java.io.FileInputStream; import java.io.InputStream ...

  6. 解决VS2015启动界面卡在白屏的处理方法

    最后,通过还原初始配置的方法:使用命令devenv /ResetSettings

  7. XVI Open Cup named after E.V. Pankratiev. GP of Eurasia

    A. Nanoassembly 首先用叉积判断是否在指定向量右侧,然后解出法线与给定直线的交点,再关于交点对称即可. #include<bits/stdc++.h> using names ...

  8. dbflow 批量 增删查改

    @ModelContainer @Table(database = DemoDatabase.class) class Person extends BaseModel implements Seri ...

  9. [Leetcode] Roman to Integer

    Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 t ...

  10. BZOJ3069: [Pa2011]Hard Choice 艰难的选择

    Description Byteasar是一个很纠结的人.每次他经过Bytetown的时候都知道有至少2条不同的路径可以选择,这导致他必须花很长时间来决定走哪条路.Byteasar最近听说了Bytet ...