Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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 “奇异的”;“18个字符”;倒退行为_Java_Logging_Configuration_Log4j_Logback - Fatal编程技术网

Java “奇异的”;“18个字符”;倒退行为

Java “奇异的”;“18个字符”;倒退行为,java,logging,configuration,log4j,logback,Java,Logging,Configuration,Log4j,Logback,这是我第一次使用Logback——通常使用log4j——因为依赖关系而被迫使用它 我将联机转换器用于log4j.properties-->logback.xml 当我运行应用程序时,我得到的只是任何日志行的前18个字符,末尾没有换行符。控制台和日志文件中的结果输出为: 16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:

这是我第一次使用Logback——通常使用log4j——因为依赖关系而被迫使用它

我将联机转换器用于
log4j.properties
-->
logback.xml

当我运行应用程序时,我得到的只是任何日志行的前18个字符,末尾没有换行符。控制台和日志文件中的结果输出为:

16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:00.537 
(main16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main16:32:00.537 (main
究竟是什么原因导致了这一切

logback.xml是


xyzy.log
UTF-8
%d{HH:mm:ss.SSS}(%t)%-5p[%c{36}]-%msg%n
xyzy.log。%d
UTF-8
%d{HH:mm:ss.SSS}(%t)[%c{36}]%msg%n
我不知道回写,但是, 我很肯定

(%t) 
应该是

[%t]
这正是你的模式断裂的地方

然后尝试:

<pattern>%d{HH:mm:ss.SSS} [%t] %-5p [%c{36}] - %msg%n</pattern>

[...]

<pattern>%d{HH:mm:ss.SSS} [%t] [%c{36}] %msg%n</pattern>
%d{HH:mm:ss.SSS}[%t]-5p[%c{36}]-%msg%n
[...]
%d{HH:mm:ss.SSS}[%t][%c{36}]%msg%n

假设其余的都很好…

在logback中,模式字符串中的括号用作。他们需要逃脱。

太棒了!这正是原因所在,也是非常合乎逻辑的推论。试过之后,谷歌搜索“logback括号”发现了一个几乎重复的结果:很好,那么你可以通过避开圆括号来实现,很高兴知道