Open walkertest opened 6 months ago
jcmd
On your project we have the same problem. Waiting for fix
@walkertest Have you found a work around ?
@walkertest Can you please provide the logback configuration file?
@walkertest Have you found a work around ?
Not yet. Do you have solve this problem? My co-worker had meet this problem again
@walkertest Can you please provide the logback configuration file?
We have the same issue, it crashed our prod two times, then we rolled back the usage of virtual threads. Here's our config.
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<property name="TIMEZONE" value="Europe/Paris" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!-- coloring the level without the brackets doesn't work -->
<pattern>%date{ISO8601, ${TIMEZONE}} %highlight(%-7([%level])) %X{executionContext:-(no execution context)} - %logger - %message%n%xException</pattern>
</encoder>
</appender>
<appender name="ASYNCSTDOUT" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="STDOUT" />
</appender>
<appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender">
<smtpHost>${email.smtp.host}</smtpHost>
<smtpPort>${email.smtp.port}</smtpPort>
<SSL>${email.smtp.ssl}</SSL>
<username>${email.smtp.user}</username>
<password>${email.smtp.password}</password>
<from>Logback ${app.env} <${email.logback_recipient}></from><!-- So we can respond to it -->
<to>${email.logback_recipient}</to>
<subject>%logger{0} - %message</subject>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%date{ISO8601, ${TIMEZONE}} [%level] %X{executionContext:-(no execution context)} - %logger - %message%n%xException</pattern>
</layout>
<discriminator class="ch.qos.logback.classic.sift.MDCBasedDiscriminator">
<key>executionContext</key>
<defaultValue>default</defaultValue>
</discriminator>
</appender>
<root level="WARN"> <!-- External libraries don't log that much interesting stuff -->
<appender-ref ref="ASYNCSTDOUT" />
<appender-ref ref="EMAIL" />
</root>
<logger name="com.zaxxer.hikari.pool.HikariPool" level="ERROR" /> <!-- Ignore clock leap warnings. This happens a lot when dev laptops are put to sleep. -->
<logger name="org.apache.http.client.protocol.ResponseProcessCookies" level="ERROR" /> <!-- We get a lot of invalid cookies warnings from bots like this: Invalid cookie header: "Set-Cookie: AWSALBTGCORS=0hymVtXBvpvwanwaGglsFN0gnZp0XOtyI0Kyf5Muv57QcG09yKvyc7xBJpJ4SvWNwa++q7r4zxpSnYSPD0wTMTfoyeJifDU2V1dZsi19K73P+kmXKlHzGFNAiLXQcg4+vcx9K0F9kbU6QAfXYe2I3VB7kxd5TLfdeYAJOdXn3Bkv; Expires=Wed, 13 Apr 2022 11:03:00 GMT; Path=/; SameSite=None; Secure". Invalid 'expires' attribute: Wed, 13 Apr 2022 11:03:00 GMT -->
<logger name="com.meetinclass" level="DEBUG" />
<logger name="Javascript" level="DEBUG" />
<!--
<logger name="io.ebean" level="DEBUG"/>
<logger name="io.ebeaninternal" level="DEBUG"/>
<logger name="io.ebean.SQL" level="DEBUG"/>
<logger name="io.ebean.SUM" level="DEBUG"/>
-->
</configuration>
Env
Problem
The thread stack
You can see my reactor thread is waiting for the logger.error method.
The full thread stack is in the added file. stack1.txt
the jcmd thread dump info(jcmd Thread.dump_to_file ):
thread_jcmdaa.txt
thread_jcmdab.txt