微网站菜单,WordPress强制更换主题,上海建企业网站,公司做个网站多少钱一、介绍 Log4j是Apache的一个开放源代码项目#xff0c;通过使用Log4j#xff0c;我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务 器、NT的事件记录器、UNIX Syslog守护进程等#xff1b;我们也可以控制每一条日志的输出格式#xff1b;通过…一、介绍 Log4j是Apache的一个开放源代码项目通过使用Log4j我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务 器、NT的事件记录器、UNIX Syslog守护进程等我们也可以控制每一条日志的输出格式通过定义每一条日志信息的级别我们能够更加细致地控制日志的生成过程。 Log4j由三个重要的组件构成日志信息的优先级日志信息的输出目的地日志信息的输出格式。日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG分别用来指定这条日志信息的重要程度日志信息的输出目的地指定了日志将打印到控制台还是文件中而输出格式则控制了日志信息的显示内容。 log4j的历史 始于1996年初的E.U. SEMPER 安全电子市场为欧洲跟踪API的项目。 不计其数的改进在几个大量的工作之后API已经发展成为log4j一个流行的日志记录包为Java。 该软件包是Apache软件许可证由开源认证是一个不折不扣的开源许可证下发布。 最新log4j的版本包括完整的源代码类文件和文档可以在这里找到 http://logging.apache.org/log4j/. Log4j使用的几个关键点 根记录器Logger输出端appenders和布局layouts a定义根记录器的格式为 log4j.rootLogger [ level ], appendName1, appendName2, „appendNameN。同一个记录器可 有多个输出端。PSlevel的级别此级别可以自定义系统默认提供了以下级别 ◆debug//调试信息 ◆info//一般信息 ◆warn//警告信息 ◆error//错误信息 ◆fatal//致命错误信 b定义一个appender的输出目的地的格式为 log4j.appender.appenderName fully.qualified.name.of.appender.class。log4j 提供了以下几种常用的输出目的地 ◆org.apache.log4j.ConsoleAppender将日志信息输出到控制台 ◆org.apache.log4j.FileAppender将日志信息输出到一个文件 ◆org.apache.log4j.DailyRollingFileAppender将日志信息输出到一个并且每天输出到一个新的日志文件 ◆org.apache.log4j.RollingFileAppender将日志信息输出到一个文件通过指定文件的的尺寸当文件大小到达指定尺寸的时候会自动把文件改名如为example.log的文件会改名为example.log.1同时产生一个新的example.log文件。如果新的文件再次达到指定尺寸又会自动把文件改名为example.log.2同时产生example.log文件。依此类推直到example.log. MaxBackupIndexMaxBackupIndex的值可在配置文件中定义。 ◆org.apache.log4j.WriterAppender将日志信息以流格式发送到任意指定的地方。 ◆org.apache.log4j.jdbc.JDBCAppender通过JDBC把日志信息输出到数据库中。 c输出格式布局layout Log4j 提供了一下几种布局 ◆org.apache.log4j.HTMLLayout以HTML表格形式布局 ◆org.apache.log4j.PatternLayout可以灵活地指定布局模式 ◆org.apache.log4j.SimpleLayout包含日志信息的级别和信息字符串 PSConversionPattern参数的格式含义 %c 输出日志信息所属的类的全名 %d 输出日志时间点的日期或时间默认格式为ISO8601也可以在其后指定格式比如%d{yyy-MM-dd HH:mm:ss }输出类似2002-10-18- 221028 %f 输出日志信息所属的类的类名 %l 输出日志事件的发生位置即输出日志信息的语句处于它所在的类的第几行 %m 输出代码中指定的信息如log(message)中的message %n 输出一个回车换行符Windows平台为“\r\n”Unix平台为“\n” %p 输出优先级即DEBUGINFOWARNERRORFATAL。如果是调用debug()输出的则为DEBUG依此类推 %r 输出自应用启动到输出该日志信息所耗费的毫秒数 %t 输出产生该日志事件的线程名 log4j 特性: log4j的是线程安全的 log4j是经过优化速度的 log4j是基于一个名为记录器的层次结构 log4j的支持每个记录器多输出追加器appender log4j支持国际化。 log4j并不限于一组预定义的设备 日志行为可以使用配置文件在运行时设置 log4j设计从一开始就是处理Java异常 log4j使用多个层次即ALLTRACEDEBUGINFOWARNERROR和FATAL 日志输出的格式可以通过扩展Layout类容易地改变 日志输出的目标以及在写入策略可通过实现Appender程序接口改变 log4j 会故障停止。然而尽管它肯定努力确保传递log4j不保证每个日志语句将被传递到目的地。 转载于:https://www.cnblogs.com/yhsj/p/4909989.html