java.util.logging.Logger的使用总结
来源:互联网 发布:c语言编写游戏 编辑:程序博客网 时间:2024/05/17 00:51
一直用的是Log4j记录日志信息,突然发现很多人在用Logger,就总结了下,希望这篇文章对大家学习Logger有用。
首先是创建Logger对象:
static Logger getLogger(String name):为指定系统查找或创建一个logger。
static Logger getLogger(String name,String resourceBundleName):为指定子系统查找或创建一个logger。
JDK内置Logger支持的级别:
JDK内置 Logger提供了如下七种Logger级别,从高到低依次是:
SEVERE->WARNING->INFO->CONFIG->FINE->FINER->FINESET。
可以使用OFF关闭日志记录,使用 ALL 启用所有消息的日志记录。
logger默认的级别是INFO,比INFO更低的日志将不显示。
Logger的默认级别定义是在jre安装目录的lib下面。
JDK内置Logger支持的Handler :
Handler,实现将日志写入指定目的地,JDK Logger主要支持MemoryHandler和StreamHandler两个大类Handler,
另外ConsoleHanler, FileHandler以及SocketHandler都是继承自StreamHandler,分别添加了一些自己的功能,
分别将日志写入控制台、文件、Socket端口。
ConsoleHandler只是将OutputStream设置为System.err,其他实现和StreamHandler类似。
而SocketHandler将OutputStream绑定到对应的端口号中,其他也和StreamHandler类似。另外它还增加了两个配置:
java.util.logging.SocketHandler.port和java.util.logging.SocketHandler.host分别对应端口号和主机。
FileHandler支持指定文件名模板(java.util.logging.FileHandler.pattern),文件最大支持大小
(java.util.logging.FileHandler.limit,字节为单位,0为没有限制),循环日志文件
数(java.util.logging.FileHandler.count)、对已存在的日志文件是否往后添加(java.util.logging.FileHandler.append)。
首先是创建Logger对象:
static Logger getLogger(String name):为指定系统查找或创建一个logger。
static Logger getLogger(String name,String resourceBundleName):为指定子系统查找或创建一个logger。
JDK内置Logger支持的级别:
JDK内置 Logger提供了如下七种Logger级别,从高到低依次是:
SEVERE->WARNING->INFO->CONFIG->FINE->FINER->FINESET。
可以使用OFF关闭日志记录,使用 ALL 启用所有消息的日志记录。
logger默认的级别是INFO,比INFO更低的日志将不显示。
Logger的默认级别定义是在jre安装目录的lib下面。
JDK内置Logger支持的Handler :
Handler,实现将日志写入指定目的地,JDK Logger主要支持MemoryHandler和StreamHandler两个大类Handler,
另外ConsoleHanler, FileHandler以及SocketHandler都是继承自StreamHandler,分别添加了一些自己的功能,
分别将日志写入控制台、文件、Socket端口。
ConsoleHandler只是将OutputStream设置为System.err,其他实现和StreamHandler类似。
而SocketHandler将OutputStream绑定到对应的端口号中,其他也和StreamHandler类似。另外它还增加了两个配置:
java.util.logging.SocketHandler.port和java.util.logging.SocketHandler.host分别对应端口号和主机。
FileHandler支持指定文件名模板(java.util.logging.FileHandler.pattern),文件最大支持大小
(java.util.logging.FileHandler.limit,字节为单位,0为没有限制),循环日志文件
数(java.util.logging.FileHandler.count)、对已存在的日志文件是否往后添加(java.util.logging.FileHandler.append)。
SocketHanlder的例子如下:
package my.logger;import java.io.IOException;import java.util.logging.Logger;import java.util.logging.SocketHandler;public class SocketHandlerTest {private SocketHandler handler = null;private static Logger logger = Logger.getLogger("my.logger.SocketHandlerTest");public SocketHandlerTest(String host,int port){try {handler = new SocketHandler(host,port);logger.addHandler(handler);logger.info("SocketHandler运行成功。。。");} catch (IOException e) {logger.severe("请检查地址和端口是否正确。。。");StringBuilder sb = new StringBuilder();sb.append(e.toString()).append("\n");for(StackTraceElement elem:e.getStackTrace()){sb.append("\tat").append(elem).append("\n");}logger.severe(sb.toString());}}public static void main(String args[]){new SocketHandlerTest("localhost",8088);}}
开启一个Tomcat服务,端口是8088.执行SocketHandlerTest程序,控制输出成功的信息。
六月 27, 2017 11:32:49 上午 my.logger.SocketHandlerTest <init>
信息: SocketHandler运行成功。。。
阅读全文
0 0
- java.util.logging.Logger的使用总结
- java.util.logging.logger的使用
- java.util.logging.Logger
- java.util.logging.Logger
- java.util.logging.Logger
- java.util.logging.Logger
- java.util.logging.Logger
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger 使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger 使用例程
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- java.util.logging.Logger使用详解
- iOS自动化测试之smallapple 使用翻译
- 使用CA自签名证书搭建HTTPS网站
- 使用config.gradle统一管理项目的依赖库
- ios端ijkplayer编译
- IP地址无分类编址
- java.util.logging.Logger的使用总结
- 单调栈——洛谷 P1565 牛宫
- Java面试题(八)
- Django——相关知识(一)
- js中==与===区别
- 上传视频并截取缩略图
- Linux内核同步机制之Memory barrier
- 用Enterprise Architect从源码自动生成类图
- IDC机房