最近搜索
暂无搜索记录
热搜
JAVA
大数据
分布式
Python
人工智能
爬虫
WEB
JavaScript
认证
线上环境工作线程一直处于waiting状态,由于logback的blockingqueue满了,put方法卡住
"canal-client-thread" #59 prio=5 os_prio=0 tid=0x0000558212421800 nid=0x40 waiting on condition [0x00007f4e922d0000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x0000000526478450> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:353)
at ch.qos.logback.core.AsyncAppenderBase.putUninterruptibly(AsyncAppenderBase.java:181)
at ch.qos.logback.core.AsyncAppenderBase.put$original$z3FUGxqA(AsyncAppenderBase.java:172)
at ch.qos.logback.core.AsyncAppenderBase.put$original$z3FUGxqA$accessor$YIMQ9wbm(AsyncAppenderBase.java)
at ch.qos.logback.core.AsyncAppenderBase$auxiliary$0CoMSm8Z.call(Unknown Source)
at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)
at ch.qos.logback.core.AsyncAppenderBase.put(AsyncAppenderBase.java)
at ch.qos.logback.core.AsyncAppenderBase.append(AsyncAppenderBase.java:161)
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.classic.Logger.appendLoopOnAppenders(Logger.java:270)
at ch.qos.logback.classic.Logger.callAppenders(Logger.java:257)
at ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:421)
at ch.qos.logback.classic.Logger.filterAndLog_1(Logger.java:398)
at ch.qos.logback.classic.Logger.info(Logger.java:583)
at com.uniedu.ecp.datacenter.sync.canal.client.mq.AbstractMQProducer.sendMsg(AbstractMQProducer.java:10)
at com.uniedu.ecp.datacenter.sync.canal.client.handler.MQMessageHandler.lambda$handleMessage$0(MQMessageHandler.java:24)
at com.uniedu.ecp.datacenter.sync.canal.client.handler.MQMessageHandler$$Lambda$711/935909985.accept(Unknown Source)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at com.uniedu.ecp.datacenter.sync.canal.client.handler.MQMessageHandler.handleMessage(MQMessageHandler.java:24)
at com.uniedu.ecp.datacenter.sync.canal.client.handler.MQMessageHandler.handleMessage(MQMessageHandler.java:15)
at com.uniedu.ecp.datacenter.sync.canal.client.client.AbstractCanalClient.pullMessage(AbstractCanalClient.java:67)
at com.uniedu.ecp.datacenter.sync.canal.client.client.AbstractCanalClient.process(AbstractCanalClient.java:50)
at com.uniedu.ecp.datacenter.sync.canal.client.client.AbstractCanalClient$$Lambda$602/971228384.run(Unknown Source)
at java.lang.Thread.run(Thread.java:748)
logback的blockingqueue消费者线程一直处于runnable状态,但是卡在FileOutputStream.writeBytes方法
"AsyncAppender-Worker-ASYNC_CONSOLE_APPENDER" #41 daemon prio=5 os_prio=0 tid=0x0000558210705800 nid=0x2f runnable [0x00007f4e963f6000]
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 <0x0000000523305d00> (a java.io.BufferedOutputStream)
at java.io.PrintStream.write(PrintStream.java:480)
- locked <0x00000005231f29b8> (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)