电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Log4j 日志内容详解

8页
  • 卖家[上传人]:新**
  • 文档编号:431738347
  • 上传时间:2023-03-08
  • 文档格式:DOCX
  • 文档大小:25.54KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、Log4j 详细解1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周 期性的记录到文件中供其他应用进行统计分析工作;跟踪代码运行时轨迹,作为日后审计 的依据;担当集成开发环境中的调试器的作用,向文件或控制台打印代码的调试信息。最普通的做法就是在代码中嵌入许多的打印语句,这些打印语句可以输出到控制台或 文件中,比较好的做法就是构造一个日志操作类来封装此类操作,而不是让一系列的打印 语句充斥了代码的主体。1.2. Log4j 简介 在强调可重用组件开发的今天,除了自己从头到尾开发一个可重用的日志操作类外, Apache为我们提供了一个强有力的日志操作包-Log4j。Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息 输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、 UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志 信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就 是,这些可 以通过一个配置文件来灵活地进行配置,而不需要修改应用的

      2、代码。此外,通过Log4j其他语言接口,您可以在C、C+ +、.Net、PL/SQL程序中使用Log4j, 其语法和用法与在 Java 程序中一样,使得多语言分布式系统得到一个统一一致的日志组 件模块。而且,通过使用各种第三方扩展,您可以很方便地将Log4j集成到J2EE、JINI 甚至是SNMP应用中。Log4j 有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts佈局),这里可简单理解为日志类别, 日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松的记录信息的类 型和 级别,并可以在运行时控制日志输出的样式和位置。下面对三个组件分别进行说明:1、LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和 FATAL,这五个级别是有顺序的,DEBUG INFO WARN ERROR = INFO*logger.warn(Low fuel level.);*下面这个请求不可用,因为DEBUG = INFO*barlogger.info(Located nearest gas station.

      3、);*下面这个请求不可用,因为DEBUG INFO*barlogger.debug(Exiting gas station search);这里“是否可用”的意思是能否输出Logger信息。在对 Logger 实例进行命名时,没有限制,可以取任意自己感兴趣的名字。一般 情况下建议以类的所在位置来命名Logger实例,这是目前来讲比较有效的Logger命名方 式。这样可以使得每个类建立自己的日志信息,便于管理。比如:static Logger logger = Logger.getLogger(ClientWithLog4j.class.getName();2、Appenders禁用与使用日志请求只是Log4j其中的一个小小的地方,Log4j日志系统允许把日志 输出到不同的地方,如控制台(Console)、文件(Files)、根据天数或者文件大小产生新 的文件、以流的形式发送到其它地方等等。其语法表示为:orgapachelog4j .ConsoleAppender (控制台) orgapachelog4jFileAppender (文件) org.apache.log4j.DailyR

      4、ollingFileAppender (每天产生一个日志文件) orgapachelog4j.RollingFileAppender (文件大小到达指定尺寸的时候产生一个新的 文件)org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方) 配置时使用方式为:log4j.appender.appenderName = fully.qualified.name.of.appender.class log4j.appender.appenderName.option1 = value1log4j.appender.appenderName.option = valueN这样就为日志的输出提供了相当大的便利。3、Layouts有时用户希望根据自己的喜好格式化自己的日志输出o Log4j可以在Appenders的后 面附加Layouts来完成这个功能。Layouts提供了四种日志输出样式,如根据HTML样 式、自由指定样式、包含日志级别与信息的样式和包含日志时间、线程、类别等信息的样其语法表示为:orgapachelog4jHTMLLayout

      5、(以 HTML 表格形式布局), orgapachelog4jPatternLayout (可以灵活地指定布局模式), orgapachelog4j.SimpleLayout (包含日志信息的级别和信息字符串), org.apache.log4j.TTCCLayout (包含日志产生的时间、线程、类别等等信息) 配置时使用方式为:log4j.appender.appenderName.layout =fully.qualified.name.of.layout.class log4j.appender.appenderName.layout.option1 = value1log4j.appender.appenderName.layout.option = valueN4Log4j的使用以上是从原理方面说明Log4j的使用方法,在具体Java编程使用Log4j可以参照以下示例:1、建立 Logger 实例:语法表示:public static Logger getLogger( String name)实际使用: static Logger logger = Logger.getLo

      6、gger(ServerWithLog4j.class.getName () ;2、读取配置文件:获得了 Logger 的实例之后,接下来将配置 Log4j 使用环境: 语法表示:BasicConfigurator.configure():自动快速地使用缺省 Log4j 环境。PropertyConfigurator.configure(String configFilename) 读取使用 Java 的特性文件编写 的配置文件。DOMConfigurator.configure(String filename):读取 XML 形式的配置文件。实际使用:PropertyConfigurator.configure(ServerWithLog4j.properties);3、插入日志信息 完成了以上连个步骤以后,下面就可以按日志的不同级别插入到你要记录日志的任何地 方了。语法表示:Logger.debug(Object message);/碉试信息Logger.info(Object message);/一 般信息Logger.warn(Object message);/警告信息Logge

      7、r.error(Object message);/!昔误信息Logger.fatal(Object message);/致 命错误信息实际使用:logger.info(ServerSocket before accept: + server);5. 配置过程在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义。定义步骤就 是对 Logger、Appender 及 Layout 的分别使用。Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties (key=value) 【Java 特性文件(键=值)】。下面我们介绍使用 Java 特性文件做为配置文件的方法 具体如下:1、配置根Logger,其语法为:log4j.rootLogger = level , appenderName1, appenderName2, level :是日志记录的优先级,分为 OFF、FATAL ERROR、WARN、INFO、DEBUG、ALL 或者您定义的级别。Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、 INFO、DEBUG

      8、o通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的 开关。比如在这里定义了 INFO级别,则应用程序中所有DEBUG级别的日志信息将不被 打印出来。appenderName:就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。 例如:log4j.rootLogger=info,A1,B2,C32、配置日志信息输出目的地,其语法为:log4j.appender.appenderName = fully.qualified.name.of.appender.class / fully.qualified.name.of.appender.class 可以指定下面五个目的地中的一个:1.org.apache.log4j.ConsoleAppender (控制台)2.org.apache.log4j.FileAppender (文件)3.org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件)4.org.apache.log4j.RollingFileAppender (文件大小到达指定尺寸的时候产生一个新的文件)5.org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)1. ConsoleAppender 选项Threshold=WARN:指定日志消息的输出最低层次。ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。Target=System.err:默认情况下是:System.out,指定输出控制台2. FileAppender 选项Th

      《Log4j 日志内容详解》由会员新**分享,可在线阅读,更多相关《Log4j 日志内容详解》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.