Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从两行java.util.logging输出中抑制日期行?_Java_Logging_Java.util.logging - Fatal编程技术网

如何从两行java.util.logging输出中抑制日期行?

如何从两行java.util.logging输出中抑制日期行?,java,logging,java.util.logging,Java,Logging,Java.util.logging,我使用的是Java默认记录器,现在它将大量无用的垃圾打印到输出中,下面是一个示例,这行代码: log.info("Logging pointless information...") 将输出所有这些: Oct 26, 2011 9:37:57 PM java.util.logging.LogManager$RootLogger log INFO: Logging pointless information... 除了第二行,我什么都不需要知道。我怎样才能清除这些垃圾?我想要的只是简单的文本记

我使用的是Java默认记录器,现在它将大量无用的垃圾打印到输出中,下面是一个示例,这行代码:

log.info("Logging pointless information...")
将输出所有这些:

Oct 26, 2011 9:37:57 PM java.util.logging.LogManager$RootLogger log
INFO: Logging pointless information...
除了第二行,我什么都不需要知道。我怎样才能清除这些垃圾?我想要的只是简单的文本记录。

您需要使用它

public class BriefFormatter extends Formatter 
{   
    public BriefFormatter() { super(); }

    @Override 
    public String format(final LogRecord record) 
    {
        return record.getMessage();
    }   
}

他们提出了几乎相同的问题:

下面是一个如何实施Jarrod Roberson建议的示例:

通常,要应用格式化程序,需要创建一个文件,通常称为logging.properties。在里面放一行这样的字:

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
-Djava.util.logging.config.file=logging.properties
或者不管你的格式化程序是什么。然后添加如下所示的JVM参数:

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
-Djava.util.logging.config.file=logging.properties

或者使用功能更强大的日志系统,如Logback或Log4j,它们具有预构建的格式化程序,可以节省一些代码。

也许这是后来添加的,但至少在Java 7中,Java.util.logging.SimpleFormatter支持从系统属性获取其格式。此JVM参数将只打印第二行:

-Djava.util.logging.SimpleFormatter.format='%4$s: %5$s%6$s%n'
就我个人而言,我喜欢保留所有的日期/来源信息,但不要使用换行符(并使用更紧凑的国际日期格式):


FWIW,“无用信息”在任何大小或持续时间的程序中都非常有用。@DaveNewton-就我个人而言,我喜欢简洁地记录到控制台,详细地记录到文件(使用XML格式化程序)。所以我认为这两种形式都有很大的优点。你真的不知道你让我的生活变得有多好。由于不熟悉java,这为我节省了至少5个小时的工作时间。由于你今天的回答,成千上万的小婴儿、小猫和小猫被救了出来。谢天谢地的赞赏是正确的。这种方法记录整个原始记录,包括XML。实际上比SimpleFormatter要详细得多。