К сожалению, я попадаю в тупик во время инициализации класса, поэтому я вижу, как застряло приложение (не всегда, но легче воспроизвести в режиме отладки). < /P>
Я вижу следующие стеки (некоторые классы с измененным названием «Не обнаруживают».
Код: Выделить всё
"main" #1 prio=5 os_prio=0 cpu=5781.25ms elapsed=2470.51s tid=0x00000132576c02d0 nid=0x8930 in Object.wait() [0x0000001149cfd000]
java.lang.Thread.State: RUNNABLE
at reactor.netty.tcp.TcpClientSecure.(TcpClientSecure.java:29)
- waiting on the Class initialization monitor for reactor.util.Loggers
at reactor.netty.tcp.SslProvider.defaultClientProvider(SslProvider.java:110)
at reactor.netty.http.client.HttpClientSecure.(HttpClientSecure.java:68)
at reactor.netty.http.client.HttpClient.secure(HttpClient.java:1421)
at com.my.test.project.HttpClientHelper.createHttpClient(HttpClientHelper.java:31)
at com.my.test.project.Main.main(Main.java:199)
Locked ownable synchronizers:
- None
< /code>
и еще один: < /p>
"AppIdSupplier-0" #22 daemon prio=5 os_prio=0 cpu=1140.62ms elapsed=2461.80s tid=0x000001324eec6c50 nid=0x85b4 in Object.wait() [0x000000114bbf7000]
java.lang.Thread.State: RUNNABLE
at reactor.netty.http.client.HttpClient.secure(HttpClient.java:1421)
- w a i t i n g o n t h e C l a s s i n i t i a l i z a t i o n m o n i t o r f o r r e a c t o r . n e t t y . h t t p . c l i e n t . H t t p C l i e n t S e c u r e < b r / > a t c o m . m y . t e s t . p r o j e c t . H t t p C l i e n t H e l p e r . c r e a t e H t t p C l i e n t ( H t t p C l i e n t H e l p e r . j a v a : 3 1 ) < b r / > a t c o m . m y . t e s t . p r o j e c t . C u s t o m A p p e n d e r . c r e a t e A p p e n d e r ( C u s t o m A p p e n d e r . j a v a : 7 8 ) < b r / > a t j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( j a v a . b a s e @ 1 7 . 0 . 1 3 / N a t i v e M e t h o d ) < b r / > a t j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( j a v a . b a s e @ 1 7 . 0 . 1 3 / N a t i v e M e t h o d A c c e s s o r I m p l . j a v a : 7 7 ) < b r / > a t j d k . i n t e r n a l . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( j a v a . b a s e @ 1 7 . 0 . 1 3 / D e l e g a t i n g M e t h o d A c c e s s o r I m p l . j a v a : 4 3 ) < b r / > a t j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( j a v a . b a s e @ 1 7 . 0 . 1 3 / M e t h o d . j a v a : 5 6 9 ) < b r / > a t o r g . a p a c h e . l o g g i n g . l o g 4 j . c o r e . c o n f i g . p l u g i n s . u t i l . P l u g i n B u i l d e r . b u i l d ( P l u g i n B u i l d e r . j ava:142)
at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1164)
at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:1085)
at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:1077)
at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:681)
at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:264)
at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:313)
at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:631)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:713)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:735)
at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:260)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:154)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:46)
at org.apache.logging.log4j.LogManager.getContext(LogManager.java:197)
at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:136)
at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:58)
at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:46)
at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:32)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:432)
at reactor.util.Loggers$Slf4JLoggerFactory.apply(Loggers.java:210)
at reactor.util.Loggers$Slf4JLoggerFactory.apply(Loggers.java:206)
at reactor.util.Loggers.useSl4jLoggers(Loggers.java:176)
at reactor.util.Loggers.resetLoggerFactory(Loggers.java:72)
at reactor.util.Loggers.(Loggers.java:56)
at reactor.core.publisher.Hooks.(Hooks.java:629)
at java.lang.Class.forName0(java.base@17.0.13/Native Method)
at java.lang.Class.forName(java.base@17.0.13/Class.java:467)
at com.microsoft.applicationinsights.agent.internal.classicsdk.TelemetryClientClassFileTransformer.transform(TelemetryClientClassFileTransformer.java:69)
at java.lang.instrument.ClassFileTransformer.transform(java.instrument@17.0.13/ClassFileTransformer.java:244)
at sun.instrument.TransformerManager.transform(java.instrument@17.0.13/TransformerManager.java:188)
at sun.instrument.InstrumentationImpl.transform(java.instrument@17.0.13/InstrumentationImpl.java:541)
at sun.nio.ch.SelectorProviderImpl.openServerSocketChannel(java.base@17.0.13/SelectorProviderImpl.java:102)
at java.nio.channels.ServerSocketChannel.open(java.base@17.0.13/ServerSocketChannel.java:176)
at sun.nio.ch.PipeImpl.createListener(java.base@17.0.13/PipeImpl.java:222)
at sun.nio.ch.PipeImpl$Initializer$LoopbackConnector.run(java.base@17.0.13/PipeImpl.java:127)
at sun.nio.ch.PipeImpl$Initializer.run(java.base@17.0.13/PipeImpl.java:85)
at sun.nio.ch.PipeImpl$Initializer.run(java.base@17.0.13/PipeImpl.java:67)
at java.security.AccessController.executePrivileged(java.base@17.0.13/AccessController.java:807)
at java.security.AccessController.doPrivileged(java.base@17.0.13/AccessController.java:569)
at sun.nio.ch.PipeImpl.(java.base@17.0.13/PipeImpl.java:198)
at sun.nio.ch.WEPollSelectorImpl.(java.base@17.0.13/WEPollSelectorImpl.java:78)
at sun.nio.ch.WEPollSelectorProvider.openSelector(java.base@17.0.13/WEPollSelectorProvider.java:33)
at java.nio.channels.Selector.open(java.base@17.0.13/Selector.java:295)
at io.netty.channel.epoll.Native.(Native.java:66)
at io.netty.channel.epoll.Epoll.(Epoll.java:42)
at java.lang.Class.forName0(java.base@17.0.13/Native Method)
at java.lang.Class.forName(java.base@17.0.13/Class.java:375)
at reactor.netty.resources.DefaultLoopEpoll.(DefaultLoopEpoll.java:111)
at reactor.netty.resources.DefaultLoopNativeDetector.(DefaultLoopNativeDetector.java:35)
at reactor.netty.resources.LoopResources.hasNativeSupport(LoopResources.java:299)
at reactor.netty.resources.DefaultLoopResources.onClient(DefaultLoopResources.java:144)
at com.microsoft.applicationinsights.agent.internal.httpclient.LazyHttpClient.init(LazyHttpClient.java:113)
at com.microsoft.applicationinsights.agent.internal.httpclient.LazyHttpClient.getDelegate(LazyHttpClient.java:75)
- locked (a java.lang.Object)
at com.microsoft.applicationinsights.agent.internal.httpclient.LazyHttpClient.send(LazyHttpClient.java:145)
at com.microsoft.applicationinsights.agent.internal.telemetry.AppIdSupplier$GetAppIdTask.run(AppIdSupplier.java:121)
at java.util.concurrent.Executors$RunnableAdapter.call(java.base@17.0.13/Unknown Source)
at java.util.concurrent.FutureTask.run(java.base@17.0.13/Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(java.base@17.0.13/Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@17.0.13/Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@17.0.13/Unknown Source)
at java.lang.Thread.run(java.base@17.0.13/Thread.java:840)
Locked ownable synchronizers:
- (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
- (a java.util.concurrent.ThreadPoolExecutor$Worker)
В основном проблема, насколько я вижу, заключается в том, что со стороны Appinsights Попробуйте создать http clinet, который создает плагин, которые подводятся, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, которые есть, что есть, что есть, что есть, что есть, что есть, что есть, что есть на подключаемых плагинах. сторона у нас есть httpclient, которая должна загружать реактор. Очевидно, это раздражающая проблема, но мне не кажется, что это то, что происходит супер редко.
Подробнее здесь: https://stackoverflow.com/questions/796 ... ialization