`

java 中的Logging

阅读更多

java.util.logging

 

1.Logging   Basic Logging

 

Logger.global.info("File->Open menu item selected");

 

Logger.global.setLevel(Level.OFF);    at an appropriate place (such as the beginning of main), then all logging is suppressed.


这样日志就不会输出了。

 

2.Advanced Logging

Logger myLogger = Logger.getLogger("com.mycompany.myapp");

创建自己的日志对象,和包名一样,日志对象名是有层次结构,并且层次结构更强。if you set the log level on the logger "com.mycompany", then the child loggers inherit that level.

There are seven logging levels:

  • SEVERE (highest value)

  • WARNING

  • INFO

  • CONFIG

  • FINE

  • FINER

  • FINEST (lowest value)
    Now all levels of FINE and higher are logged. 这样一来,任何层次>= FINE都会被记录。
    Level.ALL 所有的,Level.OFF

    By default, the top three levels are actually logged. You can set a different level, for example,
    logger.setLevel(Level.FINE);

    There are logging methods for all levels, such as

    logger.warning(message);
    logger.fine(message);
    


     

    and so on. Alternatively, you can use the log method and supply the level, such as

    logger.log(Level.FINE, message);
    

 



 

Logging Cookbook

  1. For a simple application, choose a single logger. It is a good idea to give the logger the same name as your main application package, such as com.mycompany.myprog. You can always get the logger by calling

    Logger logger = Logger.getLogger("com.mycompany.myprog");
    

    For convenience, you may want to add static fields

    
    private static final Logger logger = Logger.getLogger("com
    .mycompany.myprog");
    

    to classes with a lot of logging activity.

  2. The default logging configuration logs all messages of level INFO or higher to the console. Users can override the default configuration, but as you have seen, the process is a bit involved. Therefore, it is a good idea to install a more reasonable default in your application.

    The following code ensures that all messages are logged to an application-specific file. Place the code into the main method of your application.

    
    if (System.getProperty("java.util.logging.config.class") == null
          && System.getProperty("java.util.logging.config.file") == null)
    {
       try
       {
          Logger.getLogger("").setLevel(Level.ALL);
          final int LOG_ROTATION_COUNT = 10;
          Handler handler = new FileHandler("%h/myapp.log", 0, 
     LOG_ROTATION_COUNT);
          Logger.getLogger("").addHandler(handler);
       }
       catch (IOException e)
       {
          logger.log(Level.SEVERE, "Can't create log file handler", e);
       }
    }
    

  3. Now you are ready to log to your heart's content. Keep in mind that all messages with level INFO, WARNING, and SEVERE show up on the console. Therefore, reserve these levels for messages that are meaningful to the users of your program. The level FINE is a good choice for logging messages that are intended for programmers.

    Whenever you are tempted to call System.out.println, emit a log message instead:

    logger.fine("File open dialog canceled");
    

    It is also a good idea to log unexpected exceptions, for example,

    try
    {
       . . .
    }
    catch (SomeException e)
    {
       logger.log(Level.FINE, "explanation", e);
    
分享到:
评论

相关推荐

    java中logging的demo

    在Java编程语言中,日志(Logging)是一个关键的组件,用于记录应用程序的运行时信息。日志可以帮助开发者追踪程序的执行过程,诊断错误,优化性能,并为用户提供有关系统活动的详细信息。Java中的日志框架包括内置...

    Java Logger Logging 封装

    在Java编程中,日志记录是一项至关重要的任务,它用于追踪程序运行时的状态,记录错误信息,便于后期分析和调试。`Logger`是Java标准库`java.util.logging`包提供的日志工具,它提供了多种级别的日志记录,如`SEVERE...

    java.util.logging.Logger使用详解

    在Java中,`java.util.logging.Logger` 是标准的日志框架之一,它提供了基础的日志记录功能。为了使用这一功能,首先需要获得 `java.util.logging.Logger` 的实例。可以通过调用 `Logger` 类中的静态方法 `getLogger...

    Java LoggingAPI 使用方法

     Log4j中是通过log4j.properties这个配置文件控制日志的输出,java logging中是通过logging.properties文件完成类似的功能。  Logging.properties文件位于JDK安装路径的 jre/lib/目录下,直接上配置文件: ...

    java logging

    Java日志记录(Java Logging)是Java开发中的一个重要组成部分,主要用于收集、管理和处理应用程序的运行时信息。在Java中,日志系统可以帮助开发者追踪错误、调试代码、监控系统性能以及记录用户活动,对于理解和...

    commons-logging-1.2

    在描述中提到的问题 "java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory" 是一个常见的运行时错误,表明在运行时找不到指定的类。这种错误通常发生在类已经被编译,但在运行时无法找到对应的...

    Common Logging的jar包.zip

    这个库被称为“Commons Logging”或者“Jakarta Commons Logging”,在Java社区中广泛使用。 在Java世界里,日志是不可或缺的一部分,它帮助开发者调试代码、跟踪系统运行状态以及在出现问题时进行故障排查。...

    java.lang.NoClassDefFoundError: org/jboss/logging/

    Java编程中的`java.lang.NoClassDefFoundError: org/jboss/logging/`是一个常见的运行时错误,通常发生在尝试执行一个类时,JVM无法找到在编译时已经存在的类定义。这个错误并不意味着类在编译期间不存在,而是表明...

    commons-logging.jar

    commons-logging-java1.1.jar, commons-logging-optional.jar, commons-logging-osgi-1.0.jar, commons-logging-osgi.jar, commons-logging-REDUCED.jar, commons-logging-tests.jar, commons-logging_1.0.3.jar, ...

    commons-logging-1.2_commonslogging_

    《Spring框架中的日志工具:Apache Commons Logging 1.2》 Apache Commons Logging(简称Commons Logging)是Apache软件基金会开发的一个开源项目,它提供了一个轻量级的日志API,旨在为Java应用程序提供一个简单的...

    JAVA_API1.6文档(中文)

    java.util.logging 提供 JavaTM 2 平台核心日志工具的类和接口。 java.util.prefs 此包允许应用程序存储并获取用户和系统首选项和配置数据。 java.util.regex 用于匹配字符序列与正则表达式指定模式的类。 java....

    commons-logging-1.1.1.jar和java-unrar-0.3.jar

    总之,"java-unrar-0.3.jar"和"commons-logging-1.1.1.jar"为Java开发者提供了处理RAR文件的强大工具,使得在Java环境中解压RAR文件变得简单易行,同时通过Commons Logging提供了灵活的日志记录机制。在项目中正确...

    APRESS--Logging-in-Java-with-the-JDK-1_4-Logging-API-and-Apache-log4j

    APRESS--Logging-in-Java-with-the-JDK-1_4-Logging-API-and-Apache-log4j

    Java中Httpclient需要的jar包(httpclient.jar,httpcore.jar及commons-logging.jar)

    在标题和描述中提到的"Java中Httpclient需要的jar包(httpclient.jar,httpcore.jar及commons-logging.jar)",是使用HttpClient库时必须包含的三个关键依赖文件。 首先,`httpclient.jar`是Apache HttpClient的核心库...

    jboss-logging-3.4.1.Final-API文档-中文版.zip

    标签:jboss、logging、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    jboss-logging-3.4.3.Final-API文档-中文版.zip

    标签:jboss、logging、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    java日志记录组件log4j-1.2.14和commons-logging-1.1.1

    Log4j和Commons-Logging是两个在Java世界中广泛使用的日志记录库。 1. **Log4j**: Log4j是Apache组织开发的一个强大的、灵活的日志框架,它为Java应用程序提供了一种灵活的、可配置的日志记录解决方案。Log4j ...

    commons-logging-1.0.4.jar 免费下载

    描述中提到的 "java spring 中打印信息的jar包" 指的是 Commons Logging 在 Spring 框架中的应用。Spring 使用 Commons Logging 来输出框架内部的调试信息,这使得开发者可以根据需要调整日志级别,获取关于 Spring ...

    jboss-logging-3.3.2.Final-API文档-中文版.zip

    标签:jboss、logging、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...

    java 开发工具:commons-logging.jar(spring必备包)

    java 开发工具:commons-logging.jar(spring必备包)

Global site tag (gtag.js) - Google Analytics