- java.lang.Object
-
- java.util.logging.Formatter
-
- java.util.logging.SimpleFormatter
-
public class SimpleFormatter extends Formatter
以人类可读的格式打印LogRecord
的简短摘要。 摘要通常为1或2行。Configuration:的
SimpleFormatter
被初始化与format string在指定java.util.logging.SimpleFormatter.format
字段format日志消息。 此属性可以在logging properties配置文件中定义,也可以在系统属性中定义。 如果在日志记录属性和系统属性中都设置了此属性,则将使用系统属性中指定的格式字符串。 如果未定义此属性或给定格式字符串为illegal ,则默认格式为特定于实现。- 从以下版本开始:
- 1.4
- 另请参见:
-
Formatter
-
-
构造方法摘要
构造方法 构造器 描述 SimpleFormatter()
-
-
-
方法详细信息
-
format
public String format(LogRecord record)
格式化给定的LogRecord。可以通过在
java.util.logging.SimpleFormatter.format
属性中指定format string来自定义格式。 给定的LogRecord
将被格式化,就像调用:String.format
(format, date, source, logger, level, message, thrown);
-
format
-java.util.logging.SimpleFormatter.format
属性中指定的java.util.Formatter
格式字符串或默认格式。 -
date
-一个ZonedDateTime
代表对象event time在日志记录的ZoneId.systemDefault()
系统时区。 -
source
- 表示调用者的字符串(如果有); 否则,记录器的名称。 -
logger
- 记录器的名称。 -
level
- log level 。 -
message
- 从Formatter.formatMessage(LogRecord)
方法返回的格式化日志消息。 它使用java.text
格式,不使用java.util.Formatter format
参数。 -
thrown
- 一个字符串,表示与日志记录关联的throwable及其以换行符开头的回溯(如果有); 否则,一个空字符串。
一些示例格式:
-
java.util.logging.SimpleFormatter.format="%4$s: %5$s [%1$tc]%n"
这将在方括号中打印1行日志级别(
4$
),日志消息(5$
)和时间戳(1$
)。WARNING: warning message [Tue Mar 22 13:11:31 PDT 2011]
-
java.util.logging.SimpleFormatter.format="%1$tc %2$s%n%4$s: %5$s%6$s%n"
这将打印2行,其中第一行包括时间戳(
1$
)和源(2$
); 第二行包括日志级别(4$
)和日志消息(5$
),后跟throwable及其回溯(6$
),如果有的话:Tue Mar 22 13:11:31 PDT 2011 MyClass fatal SEVERE: several message with an exception java.lang.IllegalArgumentException: invalid argument at MyClass.mash(MyClass.java:9) at MyClass.crunch(MyClass.java:6) at MyClass.main(MyClass.java:3)
-
java.util.logging.SimpleFormatter.format="%1$tb %1$td, %1$tY %1$tl:%1$tM:%1$tS %1$Tp %2$s%n%4$s: %5$s%n"
这将打印2行类似于上面的示例,具有不同的日期/时间格式,并且不打印throwable及其回溯:
Mar 22, 2011 1:11:31 PM MyClass fatal SEVERE: several message with an exception
-
java.util.logging.SimpleFormatter.format="%1$tb %1$td, %1$tY %1$tl:%1$tM:%1$tS.%1$tN %1$Tp %2$s%n%4$s: %5$s%6$s%n"
自JDK
java.util.logging
使用java.time
创建更精确的时间戳。 上面的格式可用于将.%1$tN
添加到日期/时间格式,以便还将打印纳秒:Feb 06, 2015 5:33:10.279216000 PM example.Main main INFO: This is a test
此方法也可以在子类中重写。 建议使用
Formatter.formatMessage(java.util.logging.LogRecord)
便捷方法对消息字段进行本地化和格式化。 -
-
-