简介

log4j是使用java语言编写的可靠的、快速的、灵活的日志框架,它是基于Apache的license。

log4j支持c,c++,c#,perl,python,ruby等语言。在运行时通过额外的配置文件配置,提供不同的日志级别以及多种日志输出种类,比如数据库,文件,控制台,syslog等等。

log4j有三个主要部分:

  1. loggers 负责捕获日志信息
  2. appenders 负责输出信息到不同的目的地
  3. layouts 负责使用不同的样式输出日志

log4j的特性:

  • 线程安全
  • 优化速度
  • 基于命名的日志层次
  • 支持每个日志多个输出
  • 支持国际化internationalization
  • 不需要任何的预定义
  • 日志行为可以在运行的时候通过配置文件改变
  • 设计用来解决java启动时的异常
  • 有多种日志级别,比如ALL,TRACE,DEBUG,INFO,WARN,ERROR和FATAL
  • 通过扩展layout类,可以简单的格式化日志输出形式
  • 日志输出的目的地可以通过改变appender的实现策略来改变
  • 尽管log4j可以保证发送消息,但是它并不保证每一条消息都顺利的到达(只管发,不管接)

日志是软件开发中的重要组成部分,一个好的日志代码能够帮助快速调试,简单定位,结构化存储应用运行时的信息

日志不支持回溯,它会降低应用的运行速度。

如果输出详细的信息,可能会造成冗余。

针对这些问题,log4j被设计为可信的、快速的、以扩展的框架。

由于一般日志都不会作为应用的焦点,因此log4j的api尽量简单、易于使用。

LOG4J安装

step 1

log4j-x.x.x.jar

step 2

  • JavaMail API:支持e-mail日志特性
  • JavaBeans Activation Framework:Java Mail API也需要JavaBeans Activation Frameworkactivation.jar
  • Java Message Service:JMS特性需要
  • XML Parser:如果需要JAXP编译解析XML文件,那么需要使用这个

step 3

把它放在CLASSPATH和PATH中

在Eclipse中的使用

step 1

引入jar包

step 2

配置log4j.properies

step 3

初始化配置文件

step 4

使用logger打印日志

Log4j官方文档翻译(一、基本介绍)的更多相关文章

  1. Log4j官方文档翻译(四、如何在java中输出日志消息)

    我们已经创建来配置文件,本章详细的介绍下如何生成调试信息,并把他们转化成文本文件. 基本的例子 下面就是创建的一个基本的例子: log4j.properties的内容为: log = /usr/hom ...

  2. Log4j官方文档翻译(三、配置)

    之前的章节介绍了log4j的核心组件,本章将会通过配置文件介绍一下核心组建的配置. 主要在配置文件中配置log4j的日志级别,定义appender.layout等. log4j.properties是 ...

  3. ABP官方文档翻译 1.1 介绍

    介绍 介绍 快速示例 其他 启动模板 如何使用 介绍 我们通常会根据不同的需求来创建不同的应用程序.但是对于一些通用相似的结构总是一遍又一遍的实现,至少在某种程度上是这样的.常见的通用模块如授权.验证 ...

  4. Log4j官方文档翻译(九、输出到数据库)

    log4j提供了org.apache.log4j.JDBCAppender对象,可以把日志输出到特定的数据库. 常用的属性: bufferSize 设置buffer的大小,默认是1 driver 设置 ...

  5. Log4j官方文档翻译(八、文件输出)

    使用org.apache.log4j.FileAppender可以把日志写到文件中: FileAppender配置 immediateFlush 这个标志默认为true,是否每次有消息产生都自动flu ...

  6. Log4j官方文档翻译(七、日志格式化)

    apache log4j提供各种layout对象,然后根据自己指定的layouts对象转化日志信息.通常来说都是应用量身定制layout对象转换信息格式. 所有的layout对象从Appender对象 ...

  7. Log4j官方文档翻译(六、日志的级别)

    org.apache.log4j.Level 类提供了下面几种日志级别,你也可以通过继承这些类,自定义级别 ALL 所有日志级别都包括 DEBUG 指定信息事件的粒度是DEBUG,在调试应用的时候会有 ...

  8. Log4j官方文档翻译(五、日志输出的方法)

    日志类提供了很多方法用于处理日志活动,它不允许我们自己实例化一个logger,但是提供给我们两种静态方法获得logger对象: public static Logger getRootLogger() ...

  9. Log4j官方文档翻译(二、架构设计)

    log4j遵循层次化架构,每个层都有不同的对象来执行不同的任务.这种层次话的结构灵活设计.易于未来的扩展. log4j框架中有两种对象: 核心对象:框架的支撑对象,是框架必不可少的组成部分. 支撑对象 ...

随机推荐

  1. vuejs属性绑定和双向绑定

    属性绑定 html <div v-bind:title="title">hello world</div> js new Vue({ el:'#root', ...

  2. 记Tea使用中遇到的问题及解决过程

    学习Markdown时,在小众软件看到一个叫Tea的软件.UI设计是简约风格:"所见即所得"的Markdown:支持插件等原因让我选择去尝试这杯"茶". 最近一 ...

  3. Quartz 配置文件属性

    主要配置 Property Name Req'd Type Default Value org.quartz.scheduler.instanceName no string 'QuartzSched ...

  4. 在DOS界面下快速进入目录的技巧

    在DOS界面如果想进入某一目录还是比较困难的,尤其是有长目录名和中文目录名的时候. 比如:要进入“D:/工具箱/杀毒软件”这个目录. 1.在Windows下进入这个目录. 2.在地址栏输入 C:/WI ...

  5. 【原创】数据处理中判断空值的方法(np.isnan、is np.nan和pd.isna)比较

      转载请注明出处:https://www.cnblogs.com/oceanicstar/p/10869725.html  1.np.isnan(只有数组数值运算时可使用) 注意:numpy模块的i ...

  6. Linux系统故障分析与排查--日志分析

    处理Linux系统出现的各种故障时,故障的症状是最先发现的,而导致这以故障的原因才是最终排除故障的关键.熟悉Linux系统的日志管理,了解常见故障的分析与解决办法,将有助于管理员快速定位故障点,“对症 ...

  7. 【Python学习之七】面向对象高级编程——使用@property

    参考来自廖雪峰Python教程:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/ ...

  8. 原生js替换jQuery各种方法-中文版

    原文https://github.com/nefe/You-D... 原生JS与jQuery操作DOM对比 You Don't Need jQuery 前端发展很快,现代浏览器原生 API 已经足够好 ...

  9. 使用Hbase快照将数据输出到互联网区测试环境的临时Hbase集群

    通过snapshot对内网测试环境Hbase生产集群的全量数据(包括原始数据和治理后数据)复制到互联网Hbase临时集群.工具及原理: 1)         Hbase自带镜像导出工具(snapsho ...

  10. spark测试几个hadoop的典型例子

    1.求每年的最高温度数据格式如下: 0067011990999991950051507004888888889999999N9+00001+999999999999999999999900670119 ...