2014-02-11 29 views
0

考虑以下主要:Java的记录格式更好

public static void main(String[] args) { 
    System.out.println("System.out.println"); 
    Logger.getGlobal().setLevel(Level.INFO); 
    Logger.getGlobal().log(Level.INFO, "Logger.INFO"); 
} 

我得到以下输出: Logger output

如果有一种方式来获得的记录器更好的输出?我更喜欢单行输出和连贯的颜色突出显示(SEVERE =红色,INFO =绿色,...基本上像Android的logcat)。

由于

+1

Logger的类型是什么? –

+0

记录器是一个java util类(java.util.logging.Logger)。 – bagage

回答

1

我使用Eclipse插件grepConsole

随着smple正则表达式,您可以更改|全线(前景背景色)或者只是使用不同的颜色为每个组行。

+0

其实这就是我正在寻找的,所以谢谢StephaneM! – bagage

0

Java系统仅实现两个输出流,该System.err的和的System.out流。后者总是黑色的,前者的输出总是在大多数IDE中显示为红色。所以基本上,您无法轻松设置此输出的颜色。

为了改变颜色......我想你必须在终端/窗口控制台中运行它,并使用在你的文本中编码的(本地)颜色代码,或者你可以创建一个非常新的eclipse插件(或者可能搜索其他现有的插件?),以不同的方式呈现您的输出。我至少很确定没有简单的解决方案。

0

您不会在日志文件中获取颜色,因为它是纯文本。 日志查看器(如@Cqnqrd所述)可以添加颜色。请参阅slf4j和/或logback。两者似乎都比你的技术更好。

示例代码:

import org.slf4j.Logger; 
import org.slf4j.LoggerFactory; 

public class Blam 
{ 
    private static final Logger = LoggerFactory.getLogger(Blam.class); 

    public void hooty() 
    { 
     logger.info("some {}", "example"); 
     logger.info("logging {} with {} parameters", 
      "statements", 
      2); 
    } 
} 

输出:

some example 
logging statements with 2 parameters 

的值的{}是该工作替补多参数仅发生,如果信息 (在这个例子)级记录是启用。