com.singularity.ee.agent.appagent.kernel.spi.c java 代理是什么?
What is com.singularity.ee.agent.appagent.kernel.spi.c java agent?
抱歉,如果问题太宽泛,但如果有人可以向我解释什么是 com.singularity.ee.agent.appagent.kernel.spi.c
,它的目的是什么?
我问这个问题是因为我通常将我的 .war
应用程序发送给我们的托管公司,他们会在 tomcat 上继续安装。有 2 个环境 staging
和 preproduction
。
我最近将我的应用程序的 JDK 版本从 7 升级到 11 (adoptOpenjdk) 并将 tomcat 从 7 升级到 8.5 并且托管公司在 [=17= 中安装它时遇到了一些问题] 而他们在 staging
中取得了成功。
当我查看 tomcat 的日志时,我看到了异常:
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Full Agent Registration Info Resolver using node name [PWS]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[DEBUG]: AgentInstallManager - Full Agent Registration Info Resolver finished running
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Agent runtime directory set to [/opt/appdynamics/appagent/ver4.2.6.1]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Agent node directory set to [PWS]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Using Java Agent Version [Server Agent v4.2.6.1 GA #12852 rb165fa8df244b8369ae956b400e2ff834cf44edc 8-4.2.6.next-analytics]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Running IBM Java Agent [No]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Java Agent Directory [/opt/appdynamics/appagent/ver4.2.6.1]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Java Agent AppAgent directory [/opt/appdynamics/appagent/ver4.2.6.1]
Agent Logging Directory [/opt/appdynamics/appagent/ver4.2.6.1/logs/PWS]
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.singularity.ee.agent.configuration.k (file:/opt/appdynamics/appagent/ver4.2.6.1/lib/appagent-boot.jar) to field java.security.AccessControlContext.context
WARNING: Please consider reporting this to the maintainers of com.singularity.ee.agent.configuration.k
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Running obfuscated agent
Could not start Java Agent, Disabling !!!!!com.singularity.ee.agent.appagent.kernel.spi.c: Could not start services ,Please check log files
com.singularity.ee.agent.appagent.kernel.spi.c: Could not start services
at com.singularity.ee.agent.appagent.kernel.l.start(l.java:124)
at com.singularity.ee.agent.appagent.kernel.JavaAgent.initialize(JavaAgent.java:428)
at com.singularity.ee.agent.appagent.kernel.JavaAgent.initialize(JavaAgent.java:242)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.singularity.ee.agent.appagent.AgentEntryPoint.run(AgentEntryPoint.java:481)
Caused by: com.singularity.ee.agent.appagent.kernel.spi.e: Error starting service [TransactionMonitoringService]java.sql.SQLException
at com.singularity.ee.agent.appagent.kernel.qc.a(qc.java:287)
at com.singularity.ee.agent.appagent.kernel.qc.a(qc.java:249)
at com.singularity.ee.agent.appagent.kernel.l.start(l.java:118)
... 7 more
我的问题是:
- 什么是
JavaAgent : com.singularity.ee.agent.appagent
?
- 目的是什么?
- 为什么有人需要使用它?
- 为什么应用程序因为这个代理而在启动时崩溃?
我还查看了代理日志,发现有很多异常,例如:
java.lang.IllegalArgumentException
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:163)
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:150)
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:402)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.d.a(d.java:443)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.d.<init>(d.java:314)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.gb.a(gb.java:372)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.bb.a(bb.java:624)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.bb.a(bb.java:893)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.x.a(x.java:374)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.x.transform(x.java:326)
at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246)
at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188)
at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)
at java.base/java.lang.VMAccess.findClassOrNull(Native Method)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:1026)
at java.base/java.time.format.DateTimeFormatterBuilder.appendText(DateTimeFormatterBuilder.java:794)
at java.base/java.time.format.DateTimeFormatter.<clinit>(DateTimeFormatter.java:1289)
at org.hibernate.type.InstantType.<clinit>(InstantType.java:35)
at org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:60)
at org.hibernate.type.spi.TypeConfiguration.<init>(TypeConfiguration.java:82)
at org.hibernate.boot.internal.BootstrapContextImpl.<init>(BootstrapContextImpl.java:112)
at org.hibernate.boot.internal.MetadataBuilderImpl.<init>(MetadataBuilderImpl.java:124)
at org.hibernate.boot.MetadataSources.getMetadataBuilder(MetadataSources.java:136)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:218)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:167)
at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:32)
at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:89)
at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:166)
at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:141)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:390)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:377)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1804)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1741)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:576)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean[=13=](AbstractBeanFactory.java:320)
at org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda1.0000000034BF6AA0.getObject(Unknown Source)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:853)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:400)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:291)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:629)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:825)
[localhost-startStop-1] 07 Feb 2019 13:44:41,680 ERROR ClassMetaData - Exception java.lang.IllegalArgumentException caught trying to parse class file for java.time.format.DateTimeFormatterBuilder$TextPrinterParser from ClassLoader boot
非常感谢您的澄清。
它是 appdynamics 的 APM 代理。如果你不知道它是什么,我怀疑你需要它。
抱歉,如果问题太宽泛,但如果有人可以向我解释什么是 com.singularity.ee.agent.appagent.kernel.spi.c
,它的目的是什么?
我问这个问题是因为我通常将我的 .war
应用程序发送给我们的托管公司,他们会在 tomcat 上继续安装。有 2 个环境 staging
和 preproduction
。
我最近将我的应用程序的 JDK 版本从 7 升级到 11 (adoptOpenjdk) 并将 tomcat 从 7 升级到 8.5 并且托管公司在 [=17= 中安装它时遇到了一些问题] 而他们在 staging
中取得了成功。
当我查看 tomcat 的日志时,我看到了异常:
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Full Agent Registration Info Resolver using node name [PWS]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[DEBUG]: AgentInstallManager - Full Agent Registration Info Resolver finished running
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Agent runtime directory set to [/opt/appdynamics/appagent/ver4.2.6.1]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: AgentInstallManager - Agent node directory set to [PWS]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Using Java Agent Version [Server Agent v4.2.6.1 GA #12852 rb165fa8df244b8369ae956b400e2ff834cf44edc 8-4.2.6.next-analytics]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Running IBM Java Agent [No]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Java Agent Directory [/opt/appdynamics/appagent/ver4.2.6.1]
[Thread-4] Thu Feb 07 13:44:31 CET 2019[INFO]: JavaAgent - Java Agent AppAgent directory [/opt/appdynamics/appagent/ver4.2.6.1]
Agent Logging Directory [/opt/appdynamics/appagent/ver4.2.6.1/logs/PWS]
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.singularity.ee.agent.configuration.k (file:/opt/appdynamics/appagent/ver4.2.6.1/lib/appagent-boot.jar) to field java.security.AccessControlContext.context
WARNING: Please consider reporting this to the maintainers of com.singularity.ee.agent.configuration.k
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Running obfuscated agent
Could not start Java Agent, Disabling !!!!!com.singularity.ee.agent.appagent.kernel.spi.c: Could not start services ,Please check log files
com.singularity.ee.agent.appagent.kernel.spi.c: Could not start services
at com.singularity.ee.agent.appagent.kernel.l.start(l.java:124)
at com.singularity.ee.agent.appagent.kernel.JavaAgent.initialize(JavaAgent.java:428)
at com.singularity.ee.agent.appagent.kernel.JavaAgent.initialize(JavaAgent.java:242)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.singularity.ee.agent.appagent.AgentEntryPoint.run(AgentEntryPoint.java:481)
Caused by: com.singularity.ee.agent.appagent.kernel.spi.e: Error starting service [TransactionMonitoringService]java.sql.SQLException
at com.singularity.ee.agent.appagent.kernel.qc.a(qc.java:287)
at com.singularity.ee.agent.appagent.kernel.qc.a(qc.java:249)
at com.singularity.ee.agent.appagent.kernel.l.start(l.java:118)
... 7 more
我的问题是:
- 什么是
JavaAgent : com.singularity.ee.agent.appagent
? - 目的是什么?
- 为什么有人需要使用它?
- 为什么应用程序因为这个代理而在启动时崩溃?
我还查看了代理日志,发现有很多异常,例如:
java.lang.IllegalArgumentException
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:163)
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:150)
at com.singularity.asm501.org.objectweb.asm.ClassReader.<init>(ClassReader.java:402)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.d.a(d.java:443)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.d.<init>(d.java:314)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.gb.a(gb.java:372)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.bb.a(bb.java:624)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.bb.a(bb.java:893)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.x.a(x.java:374)
at com.singularity.ee.agent.appagent.services.bciengine.asm501.x.transform(x.java:326)
at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246)
at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188)
at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)
at java.base/java.lang.VMAccess.findClassOrNull(Native Method)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:1026)
at java.base/java.time.format.DateTimeFormatterBuilder.appendText(DateTimeFormatterBuilder.java:794)
at java.base/java.time.format.DateTimeFormatter.<clinit>(DateTimeFormatter.java:1289)
at org.hibernate.type.InstantType.<clinit>(InstantType.java:35)
at org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:60)
at org.hibernate.type.spi.TypeConfiguration.<init>(TypeConfiguration.java:82)
at org.hibernate.boot.internal.BootstrapContextImpl.<init>(BootstrapContextImpl.java:112)
at org.hibernate.boot.internal.MetadataBuilderImpl.<init>(MetadataBuilderImpl.java:124)
at org.hibernate.boot.MetadataSources.getMetadataBuilder(MetadataSources.java:136)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:218)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:167)
at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:32)
at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:89)
at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:166)
at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:141)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:390)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:377)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1804)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1741)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:576)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean[=13=](AbstractBeanFactory.java:320)
at org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda1.0000000034BF6AA0.getObject(Unknown Source)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:853)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:400)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:291)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:629)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:825)
[localhost-startStop-1] 07 Feb 2019 13:44:41,680 ERROR ClassMetaData - Exception java.lang.IllegalArgumentException caught trying to parse class file for java.time.format.DateTimeFormatterBuilder$TextPrinterParser from ClassLoader boot
非常感谢您的澄清。
它是 appdynamics 的 APM 代理。如果你不知道它是什么,我怀疑你需要它。