Java记录日志
作者:互联网
Java记录日志
每个java程序员都很熟悉在有问题的代码中插入一些System.out.println方法来帮助观察程序操作过程。当然一旦发现问题的根源并解决后就删除它…其他地方是如法炮制。所以由于这种需求的存在,Jdk推出了日志API
1.很容易的取消全部日志记录
2.可以很简单的禁止日志的输出
3.日志记录可以被定向到不同的处理器,用于在控制台中显示,或者存储在文件中
4.日志记录器和处理器都可以对记录进行过滤。过滤器可以根据实现器制定的标准丢弃掉那些无用的记录项
5.日志记录可以采用不同的方式格式化,例如 纯文本或XML
6.应用程序可以使用多个日志记录器,他们使用类似包名的这种层次结构的名字
7.在默认情况下,日志系统的配置应该由配置文件控制。如果需要的话,应用程序可以替换这个配置*
基本日志
1.要生成的简单记录,可以使用全局记录器(global logger) 并调用其Info方法;
2.Logger.getGlobal().info(“File->Open menu item selected”);
3.在默认情况下他会记录类似于 现在的时间等信息+INFO:File->Open menu item selected
4.但是在适当的地方(如 mian方法)开始调用
5.Logger.getGlobal().setLevel(Level.OFF);
6.将取消所有的使用的日志
高级日志
1.前面已经看到"虚拟日志",下面看一下企业日志(industrial-strengh)日志。在一个专业的应用程序中,不要将所有的日志都记录到
一个日志记录器中,而是可以自定义日志记录器
可以调用getLogger方法创建或获取记录器
private static final Logger myLogger = Logger.getLogger("类名"):
(注意:没有被任何变量引用的日志记录器可能会被垃圾回收。为了防止这种情况的发送看,要使用 static 关键词修饰。让它成为一个静态
引用
2.与包名类似,日志记录器野具有层次结构。事实上,与包名相比,日志记录器的层次性更强。对于包来说,一个包的名字与其父类的名称之间没有
语义关系,但是日志记录器的父子之间将共享某些属性。
通常,有以下七个日志记录器级别
-
SEVRE
-
WARNING
-
INFO
-
CONFIG
-
FINE
-
FINER
-
FINEST
默认情况下只需要记录前三个级别,也可以设置其他级别如:Logger.setLevel(Level.FINE);
现在 FINE和更高级的记录都可以记录下来了
另外,可以使用Level.ALL开启所有的日志级别的记录,或者使用Leval.OFF关闭所有的日志记录。注意 :默认的日志配置记录; INFO或更高级的所有记录,因此,应该使用CONFIG、FINER、和FINEST级别来记录那些有用信息
标签:记录器,记录,可以,Java,日志,级别,Logger 来源: https://blog.csdn.net/qq_33266200/article/details/110330639