日志及log4j框架

日志分类

  SQL日志、异常日志、业务日志



日志实现

1、jdk也提供日志记录功能

  没有日志级别;
  如果想写出到文件,需要自己使用IO流来实现

2、log4j是一个非常优秀的开源日志记录工具

  a、控制日志的输出级别
  b、控制日志信息输送的目的地是控制台、文件等
  c、控制每一条日志的输出格式

3、slf4j

  slf4j 依赖 jdk日志实现、log4j日志框架,可以在这两者之间切换调用

  hibernate默认的日志框架是slf4j、log4j

4、logback

  logback效率更高,是log4j作者的新产品

  logback也可以在jdk和log4j之间切换调用



log4j的使用

1、添加 log4j 的jar包

  a、log4j-1.2.16.jar
  b、commons-logging-1.1.3.jar

2、创建log4j.properties文件并配置

3、代码实现

   private Logger log = Logger.getLogger(this.getClass());

   log.info("方法开始...");



配置实例

# 设置日志级别和输出目的地
# 日志级别 fatal>error>warn>info>debug,开发时一般设置为debug最低级别,生产上可设置为info或warn级别
# 输出目的地的名称自定义,这里定义了stdout和logfile;其中stdout代表输出到控制台
log4j.rootLogger=debug,stdout,logfile
# 把日志信息输出到控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
# 打印出来是红色字体
log4j.appender.stdout.Target=System.err
# 输出简单格式
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
# 把日志信息输出到文件
log4j.appender.logfile=org.apache.log4j.FileAppender
# 指定文件名
log4j.appender.logfile.File=zr.log
# 这里没有使用 simpleLayout,而是使用 PatternLayout
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
# 使用 PatternLayout 还要为其指定格式
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l%F%p%m%n


输出格式配置

%p:输出日志级别,即debug、info、warn、error、fatal
%d:输出日志发生时间
%r:输出从应用启动到输出该log信息耗费的毫秒数
%l:输出日志发生位置,相当于%C.%M(%F:%L)的组合,包括类名、发生的线程、产生日志的文件、代码中的行数
如:TestLog4j.main(TestLog4j.java:10)
    TestLog4j         ------ 类名
    main           ------ 发生的线程
    TestLog4j.java      ------ 由哪个文件产生的日志
    10         ------ 代码中的行数
%F:输出产生日志文件,%l已经包含了%F
%L:输出代码中的行数,%l已经包含了%L
%m:输出日志内容
%n:输出换行符,windows为"\r\n",unix为"\n"

原文地址:https://www.cnblogs.com/Mike_Chang/p/9932410.html

时间: 2024-10-09 02:52:03

日志及log4j框架的相关文章

开源日志技术log4j

老师的总结: 日志:除了能记录异常信息,还可以记录程序正常运行时的关键信息. 使用log4j来进行日志文件记录经典步骤: 001.在项目中创建一个lib文件夹,然后将下载好的jar包copy到该文件夹下 002.对已经copy过来的jar包,点击右键,然后执行下图操作, 项目中就会多出一个引入外部Library的项目 003.在src目录下创建一个名称为log4j.properties文件 004.编写,粘贴已经写好的配置文件内容,编码方式可以做下修正.对配置文件点击右键→属性→other→ut

java中的日志组件-log4j

1.为什么使用日志组件 Log4J是Apache的一个开放源代码项目,它是一个日志操作包,通过使用Log4J,可以指定日志信息输出的目的地,如控制台.文件.CUI组件.NT的事件记录器:还可以控制每一条日志输出格式.此外,通过定义日志信息的级别,能够非常细致地控制日志的输出,最令人感兴趣的是,这些功能可以通过一个配置文件来灵活进行配置,而不需要修改应程序代码. 在应用程序中输出日志有3个目的: 监视代码中变量的变化情况,把数据周期性记录到文件中供其他应用进行统计分析工作: 跟踪代码运行时轨迹,作

日志架构log4j基本使用

[toc] 日志架构log4j基本使用 配置文件 ############################################### # 以下的配置文件都是以log4j.开头 # 最最重要就是第一个log4j.rootLogger,指定log4j日志的输出级别(目的地) # log4j.rootLogger=INFO,stdout,file意思为: # 日志可以输出INFO级别以上的数据,将日志输出到stdout标准控制输出(控制台),输出到file # # 常见的日志输出级别:DE

日志管理-log4j与slf4j的使用

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

【JAVA 包依赖关系】日志包log4j依赖

本文解析了打造一个log4j日志框架项目需要的最小的和日志相关的包: commons-logging-xxx.jar log4j-xxx.jar slf4j-api-xxx.jar slf4j-log4j12-xxx.jar 有兴趣的同志可以继续看看下面: Java 目前的开源日志框架主要分为 2层: 1)日志门面 (可以理解为接口) 2)日志框架具体代码(具体实现) 上述4个jar包中 commons-logging-xxx.jar slf4j-api-xxx.jar 分别对应了JCL和slf

关于日志类Log4j的使用

log4j 的配置 1 #下面定义日志输出级别是 INFO,并且配置了2个输出目的地,一个是A3,一个是console 2 3 log4j.rootLogger = INFO,A3,CONSOLE 4 5 #日志最低的输出级别 6 log4j.appender.A3.Threshold=INFO 7 log4j.appender.A3.encoding=UTF-8 8 #每天产生一个文件DailyRollingFileAppender 9 log4j.appender.A3 = org.apac

log4j日志文件 log4j.xml log4j.properties配置

1,导入log4j  jar包; 2,配置log4j.xml或log4j.properties文件; ----------------------------------------------------------------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuratio

Java日志commons-logging log4j slf4j之间的关系

一.之前进行日志操作一般都是在一个类中加入如下代码: import org.apache.log4j.Logger; //引入的是log4j的包 private static final Logger LOG = Logger.getLogger(Test.class); 二.后来看见别人的代码是这样写的: import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; //引入的是comm

Log4j框架

一.Log4j基本使用方法 Log4j由三个重要的组件构成:日志信息的优先级 Loggers,日志信息的输出目的地 Appenders,日志信息的输出格式 Layouts .日志信息的优先级从高到低 RROR.WARN. INFO.DEBUG,分别用来指定这条日志信息的重要程度:日志信息的输出目的地指定了日志将打印到控制台还是文件中:而输出格式则控制了日志信息的显示内容. 1.1.定义配置文件 其实您也可以完全不使用配置文件,而是在代码中配置Log4j环境.但是,使用配置文件将使您的应用程序更加