欢迎来到天天文库
浏览记录
ID:37567755
大小:33.77 KB
页数:15页
时间:2019-05-25
《java logger知识》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、javalogger知识JAVA知识2009-10-2114:42:37阅读143评论2字号:大中小J2SDK1.4的Java日志框架,其实总结起来主要是下面几点:命名空间:空间外层包含内层的设置 Handler:可以将日志信息放入内容,定向到文件,或控制台等 Lever:规定日志的级别,低级别的日志可以被忽略 Formatter:负责将日志进行格式化,这样出来的东西比较好看一点引言 作为一名Java程序员,最熟悉的、使用最多的调用恐怕莫过于System.out.print(“…”)。当你没有调试工具而要跟踪一个变量的值得时候;当你需要显示捕获的
2、Exception、Error的时候;当你想知道程序在运行的时候究竟发生了什么的时候,通常的做法就是调用System.out.print把他们在终端、控制台上打印出来。这种方式对于输出信息的分类、格式化及永久保存带来诸多不便。虽然我们可以把它写入一个文件然后进行分析,但是这要需要编写额外的程序代码,其成本不可忽视!而由此给目标系统本身增加的复杂程度不可避免的使开发、调试陷入一个深深的迷潭。 JDK1.4的推出,使得这一切即将成为历史。让我们向System.out.print()告别吧,使用JavaLoggingAPI为自己的程序构建一个完整的日志记录系
3、统! 一、第一个实例 先看一个简单的实例:SimpleLoggingTest.java importjava.util.logging.*; publicclassSimpleLoggingTest{ publicstaticvoidmain(Stringargs[]){ //程序的其它处理 //使用Logger的静态方法获得一个匿名Logger Loggerlogger1=Logger.getAnonymousLogger(); //记录消息 logger1.log(Leve
4、l.INFO,"第一条日志记录"); //程序的其它处理 } } 实例1 注意:编译、执行该程序需要JDK1.4及以上版本的支持。 运行该程序,可以在控制台看到程序运行结果: 2003-1-1415:09:40SimpleLoggingTestmain 信息:第一条日志记录 首先,程序引用java.util.Logging包(第1行)。接着,在适当的时候获得一个Logger(记录器)类的实例(第6行,获取一个匿名的Logger)。最后,在程序需要记录信息的地方调用Logger类的log方法进行记录(第8行,记录一个I
5、NFO级别的消息)。 二、JavaLoggingAPI JavaLoggingAPI封装在JDK1.4.0的java.util.Logging包中。它通过产生便于最终用户、系统管理员、故障维护工程师以及软件开发团队(工程师)进行分析的日志记录为软件的开发调试和维护提供便利的手段。它捕获操作系统平台和执行程序的安全故障、配置错误、执行瓶颈和(或)Bug等数据信息,以纯文本、XML或程序员自定的某种方式将其格式化成日志记录,然后传递给内存、系统输出流、控制台、文件、Sockets等多种系统资源进行缓存和输出。 (一)、该软件包中的关键类。 ..Lo
6、gger:应用程序进行日志记录调用的主要实体。Logger对象用于记录特定系统或应用程序的消息。 ..LogRecord:用于在日志框架和单个记录处理程序之间传递记录请求。 ..Handler:日志数据的最终输出处理器。它将LogRecord对象导出到各种目标,包括内存、输出流、控制台、文件和套接字。多种Handler子类可供用于这种用途。 ..Level:定义一组标准的记录级别,可用于控制记录的输出。可以把程序配置为只输出某些级别的记录,而忽略其他级别的输出。 ..Filter:精细过滤、控制记录的内容,比记录级别所提供的控制准确得多。记录API支持
7、通用的过滤器机制,这种机制允许应用程序代码添加任意过滤器以便控制记录的输出。 ..Formatter:为LogRecord对象的格式化提供支持。 ..LogManager:JavaLogging框架中唯一的、全局的对象,用于维护与Logger记录器及日志服务的一系列共享的数据结构及状态。它负责整个日志框架的初始化、维护一组全局性的Handle对象、维护一个树形结构的Logger的名字空间、诊测日志框架配置文件的改变从而重新读入并应用相关的参数以及负责程序停止运行时整个日志框架的清理工作。 (二)Logger 1、Logger的命名空间 在Simple
8、LoggingTest.java实例中
此文档下载收益归作者所有