Java 如何在jboss日志模式格式化程序中定制时间戳
我想在javaJava 如何在jboss日志模式格式化程序中定制时间戳,java,logging,jboss,timestamp,customization,Java,Logging,Jboss,Timestamp,Customization,我想在javastandalone.xml文件中更改模式格式化程序生成的日志中的时间戳格式。 当前格式是%d{yyyy-MM-dd'T'HH:MM:ss.ssZZZ},它生成时间戳,如“2021-02-02T19:39:01.01+0530”,但我所需的时间戳是“2021-02-02T19:39:01.01+05:30”。我尝试添加冒号“:”的格式类似于%d{yyyy-MM-dd'T'HH:MM:ss.ss:ZZZ}”,但它不起作用。像这样尝试 String fmt = "yyyy-M
standalone.xml
文件中更改模式格式化程序生成的日志中的时间戳格式。
当前格式是%d{yyyy-MM-dd'T'HH:MM:ss.ssZZZ}
,它生成时间戳,如“2021-02-02T19:39:01.01+0530”
,但我所需的时间戳是“2021-02-02T19:39:01.01+05:30”
。我尝试添加冒号“:”的格式类似于%d{yyyy-MM-dd'T'HH:MM:ss.ss:ZZZ}”
,但它不起作用。像这样尝试
String fmt = "yyyy-MM-dd'T'HH:mm:ss.ssZZZZZ";
String ldt = ZonedDateTime.now().format(DateTimeFormatter.ofPattern(fmt));
System.out.println(ldt);
印刷品
2021-02-02T11:08:06.06-05:00
您可以在日志子系统中执行此操作。
模式格式化程序使用格式化时间戳。在CLI中,假设您使用的是默认配置,您将执行以下操作
/subsystem=logging/pattern-formatter=PATTERN:write-attribute(name=pattern, value="%d{yyyy-MM-dd'T'HH:mm:ss.ssXXX} %-5p [%c] (%t) %s%e%n")
XXX
是您正在寻找的格式的时区。可以在standalone.xml文件中执行此操作,因为当前我直接获得时间戳,因此仅通过更改standalone.xml文件就可以获得所需的输出。不幸的是,我不知道。有没有可以设置的全局环境变量?嗯,根据您的方法,我想我可以通过使用MDC从java代码中获取值来实现。我想那会管用的谢谢,你的解决方案管用了:)