小天管理 发表于 2024年9月20日 发表于 2024年9月20日 程序启动时有一些信息会使用 CONSOLEAPPENDER 打印信息,现在发现有一个日志,日志比较大,12 万字符,打印会卡死在 writeBytes ,然后就不动了,这次是引入了公司的一个 jacoco 覆盖率 agent ,但是看起来报错跟这个没太大关系,但是去掉就能正常启动 堆栈信息中并没有其他线程抢占了这个锁,也从系统资源的角度去找问题,但是没有发现什么有价值的信息 "AsyncAppender-Worker-ASYNC_CONSOLE_APPENDER_NAME" #25 daemon prio=5 os_prio=0 tid=0x00007ff4cc698000 nid=0x397 runnable [0x00007ff47475a000] java.lang.Thread.State: RUNNABLE at java.io.FileOutputStream.writeBytes(Native Method) at java.io.FileOutputStream.write(FileOutputStream.java:326) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:122) - locked <0x00000006c00256d0> (a java.io.BufferedOutputStream) at java.io.PrintStream.write(PrintStream.java:480) - locked <0x00000006c00256b0> (a java.io.PrintStream) at java.io.FilterOutputStream.write(FilterOutputStream.java:97) at ch.qos.logback.core.joran.spi.ConsoleTarget$1.write(ConsoleTarget.java:37) at ch.qos.logback.core.OutputStreamAppender.writeBytes(OutputStreamAppender.java:199) at ch.qos.logback.core.OutputStreamAppender.subAppend(OutputStreamAppender.java:231) at ch.qos.logback.core.OutputStreamAppender.append(OutputStreamAppender.java:102) at ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:84) at ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:51) at ch.qos.logback.core.AsyncAppenderBase$Worker.run(AsyncAppenderBase.java:290)
已推荐帖子