标签: java.util.logging

使用java.util.logging的好例子

我想在我的程序中使用日志.我听说过java.util.logging,但我不知道如何开始.

是否有任何关于日志记录的例子?我如何在自己的程序中使用日志记录?

java logging java.util.logging

266
推荐指数
5
解决办法
41万
查看次数

Java Logging与Log4J

它仍然是值得log4j的库添加到Java 5的项目只是为了记录让我们说一些例外文件与一些不错的结余设置.或者标准的util.logging工具也可以完成这项工作吗?

你怎么看?

java logging log4j java.util.logging

131
推荐指数
5
解决办法
7万
查看次数

为什么没有显示Level.FINE日志消息?

状态的JavaDocsjava.util.logging.Level:


降序的级别是:

  • SEVERE (最高价值)
  • WARNING
  • INFO
  • CONFIG
  • FINE
  • FINER
  • FINEST (最低价值)

资源

import java.util.logging.*;

class LoggingLevelsBlunder {

    public static void main(String[] args) {
        Logger logger = Logger.getAnonymousLogger();
        logger.setLevel(Level.FINER);
        System.out.println("Logging level is: " + logger.getLevel());
        for (int ii=0; ii<3; ii++) {
            logger.log(Level.FINE, ii + " " + (ii*ii));
            logger.log(Level.INFO, ii + " " + (ii*ii));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

产量

Logging level is: FINER
Jun 11, 2011 9:39:23 PM LoggingLevelsBlunder main
INFO: 0 0
Jun 11, 2011 9:39:24 PM …
Run Code Online (Sandbox Code Playgroud)

java logging java.util.logging

109
推荐指数
3
解决办法
10万
查看次数

在使用java logging API时,如何禁用默认控制台处理程序?

嗨,我正在尝试在我的应用程序中实现java日志记录.我想使用两个处理程序.文件处理程序和我自己的控制台处理程序 我的两个处理程序都运行良好.我的日志记录将发送到文件和控制台.我的日志记录也被发送到我不想要的默认控制台处理程序.如果您运行我的代码,您将看到发送到控制台的额外两行.我不想使用默认的控制台处理程序.有谁知道如何禁用默认控制台处理程序.我只想使用我创建的两个处理程序.

Handler fh = new FileHandler("test.txt");
fh.setFormatter(formatter);
logger.addHandler(fh);
Run Code Online (Sandbox Code Playgroud)
Handler ch = new ConsoleHandler();
ch.setFormatter(formatter);
logger.addHandler(ch);
Run Code Online (Sandbox Code Playgroud)
import java.util.Date;
import java.util.logging.ConsoleHandler;
import java.util.logging.FileHandler;
import java.util.logging.Formatter;
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.LogRecord;
import java.util.logging.Logger;

public class LoggingExample {
    private static Logger logger = Logger.getLogger("test");

    static {
        try {
            logger.setLevel(Level.INFO);

            Formatter formatter = new Formatter() {

                @Override
                public String format(LogRecord arg0) {
                    StringBuilder b = new StringBuilder();
                    b.append(new Date());
                    b.append(" ");
                    b.append(arg0.getSourceClassName());
                    b.append(" ");
                    b.append(arg0.getSourceMethodName());
                    b.append(" ");
                    b.append(arg0.getLevel());
                    b.append(" ");
                    b.append(arg0.getMessage()); …
Run Code Online (Sandbox Code Playgroud)

java java.util.logging

89
推荐指数
5
解决办法
10万
查看次数

JUL到SLF4J大桥

我目前正在观察第三方库(即restfb)正在使用java.util.logging并且我看到这些日志最终在STDOUT中,即使我没有在我的logback.xml中配置SLF4J控制台appender.我的classpath中也有jul-to-slf4j桥.jul-to-slf4j网桥是否仅在安装网桥时登录到由logback配置的appender,还是还记录到stdout?

java logback slf4j java.util.logging

62
推荐指数
4
解决办法
4万
查看次数

Logger与System.out.println

我正在使用PMD插件进行eclipse,在使用System.out.println()解释时它给出了一个错误:

系统.(out | err).print使用,考虑使用记录器.

我的问题是 - 什么是记录器?它是如何用于打印到屏幕的?为什么更好?

java eclipse pmd java.util.logging

41
推荐指数
5
解决办法
7万
查看次数

java.util.logging.Logger在哪里存储他们的日志

这可能是一个愚蠢的问题,但我有点迷失java Logger

private static Logger logger = Logger.getLogger("order.web.OrderManager");
logger.info("Removed order " + id + ".");
Run Code Online (Sandbox Code Playgroud)

我在哪里可以看到日志?此引用来自java.util.logging.Logger库:

在每次日志记录调用时,Logger最初会根据记录器的有效日志级别对请求级别(例如SEVERE或FINE)执行廉价检查.如果请求级别低于日志级别,则日志记录调用立即返回.
在通过此初始(廉价)测试后,Logger将分配一个LogRecord来描述日志消息.然后,它将调用过滤器(如果存在)以更详细地检查是否应该发布记录.如果通过它,则将LogRecord发布到其输出Handlers

这是否意味着如果我有3个request level日志:

logger.log(Level.FINE, "Something");
logger.log(Level.WARNING, "Something");
logger.log(Level.SEVERE, "Something");
Run Code Online (Sandbox Code Playgroud)

log level是严重的,我可以看到所有三个日志,如果我log level是警告,那么我看不到严重日志,这是正确的吗?我该怎么设置log level

java java.util.logging

40
推荐指数
2
解决办法
6万
查看次数

printStackTrace到java.util.logging.Logger

如何使用 java.util.Logger 打印整个堆栈跟踪?(没有恼人的Netbeans).

该问题应该最初指定保留 Java SE中.省略这个要求对我来说是一个错误.

-do-compile:
    [mkdir] Created dir: /home/thufir/NetBeansProjects/rainmaker/build/empty
    [mkdir] Created dir: /home/thufir/NetBeansProjects/rainmaker/build/generated-sources/ap-source-output
    [javac] Compiling 13 source files to /home/thufir/NetBeansProjects/rainmaker/build/classes
    [javac] /home/thufir/NetBeansProjects/rainmaker/src/model/TelnetEventProcessor.java:44: error: 'void' type not allowed here
    [javac]                 log.severe(npe.printStackTrace(System.out));
    [javac]                                               ^
    [javac] 1 error

BUILD FAILED
Run Code Online (Sandbox Code Playgroud)

代码有错误:

package model;

import java.util.Observable;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TelnetEventProcessor extends Observable {

    private static Logger log = Logger.getLogger(TelnetEventProcessor.class.getName());
    private String string = null;

    public TelnetEventProcessor() {
    }

    private void stripAnsiColors() {
        Pattern regex = …
Run Code Online (Sandbox Code Playgroud)

java nullpointerexception throwable java.util.logging printstacktrace

32
推荐指数
4
解决办法
6万
查看次数

如何为tomcat设置最大卷数和最大日志大小?

我有空间问题,因此需要将catalina.out的大小限制为10M并将滚动次数限制为前3天.是否可以只配置logging.properties?谢谢.

java tomcat log4j java.util.logging

29
推荐指数
1
解决办法
6万
查看次数

如何将java Logger输出默认输出到文件

Netbeans仔细地将Logger.getLogger(this.getClass().getName()).log(Level.[...]语句)洒入catch块.现在我想将它们全部指向一个文件(和控制台).

每个日志教程,只有我这样说明如何让特定的记录器输出到文件中,但我认为有一种比修复每个自动生成的日志记录语句更好的方法吗?为某种根记录器或其他东西设置处理程序?

java logging java.util.logging

28
推荐指数
1
解决办法
6万
查看次数