pmq5205209 commented on issue #2652: skywalking support ibm websphere(was ) 
j9vm 
URL: https://github.com/apache/skywalking/issues/2652#issuecomment-503544716
 
 
   Hi, WuSheng, I had Solved the problem of "java.security.PrivilegedAction". I 
set the agent's owner to the owner of WebSphere. And add "grant codeBase 
"file:${agent_dir}/-" { permission java.security.AllPermission; };" in the file 
of "server.policy". Now skywalking agent can run in WebSphere 6.1 ,7.0, 8.0 
with openjdk 1.6.0 , and Apps run normally.
   But there is still a problem that my websphere plugin cannot work. My agent 
has many plugins , such as websphere plugin and oracle plugin. After the 
WebSphere started, oracle plugin can work well, but  websphere plugin cannot 
work.
   I writed as sample agent and add it to WebSphere.  It intercepted the 
classes I hoped.
   
![图片](https://user-images.githubusercontent.com/19252220/59765438-a6c08b00-92d0-11e9-9173-f7068f5d1e79.png)
   
![图片](https://user-images.githubusercontent.com/19252220/59765613-0a4ab880-92d1-11e9-954e-0a1740a606bc.png)
   However, when I write a plugin to skywalking agent and run in websphere, it 
cannot work.
   
![图片](https://user-images.githubusercontent.com/19252220/59765878-9c52c100-92d1-11e9-90ea-fc9087be788a.png)
   In additon , the log file has nothing with my WebSphere plugin. There is a 
error in my logs.
   WARN 2019-06-19 20:00:34:372 main ProtectiveShieldMatcher :  Byte-buddy 
occurs exception when match type. 
   java.lang.IllegalStateException: Cannot resolve type description for 
com.ibm.ws.runtime.component.Component
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.pool.TypePool$Resolution$Illegal.resolve(TypePool.java:159)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyTypeDescription.delegate(TypePool.java:1407)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType$WithDelegation.getInterfaces(TypeDescription.java:8031)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType.getInterfaces(TypeDescription.java:3636)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection$WithEagerNavigation.getInterfaces(TypeDescription.java:6375)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.HasSuperTypeMatcher.matches(HasSuperTypeMatcher.java:66)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.HasSuperTypeMatcher.matches(HasSuperTypeMatcher.java:31)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Conjunction.matches(ElementMatcher.java:122)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction.matches(ElementMatcher.java:160)
        at 
org.apache.skywalking.apm.agent.core.plugin.match.ProtectiveShieldMatcher.matches(ProtectiveShieldMatcher.java:47)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$ForElementMatchers.matches(AgentBuilder.java:1292)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation$Simple.matches(AgentBuilder.java:9983)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation$Simple.resolve(AgentBuilder.java:9996)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation$Compound.resolve(AgentBuilder.java:10252)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.resolve(AgentBuilder.java:10584)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.doTransform(AgentBuilder.java:10551)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.transform(AgentBuilder.java:10514)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.access$1500(AgentBuilder.java:10280)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$LegacyVmDispatcher.run(AgentBuilder.java:10890)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$LegacyVmDispatcher.run(AgentBuilder.java:10837)
        at 
java.security.AccessController.doPrivileged(AccessController.java:252)
        at 
org.apache.skywalking.apm.dependencies.net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.transform(AgentBuilder.java:10437)
        at 
sun.instrument.TransformerManager.transform(TransformerManager.java:181)
        at 
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:377)
        at java.lang.reflect.Proxy.defineClass0(Native Method)
        at java.lang.reflect.Proxy.getProxyClass(Proxy.java:516)
        at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:593)
        at 
com.ibm.ws.eba.service.damping.GeneralServiceWrapper.getWrappedServiceImpl(GeneralServiceWrapper.java:210)
        at 
com.ibm.ws.eba.service.damping.GeneralServiceWrapper.registerWrappedAliasService(GeneralServiceWrapper.java:74)
        at 
com.ibm.ws.eba.external.framework.LauncherImpl.start(LauncherImpl.java:421)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
        at 
java.security.AccessController.doPrivileged(AccessController.java:280)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
        at 
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284)
        at 
org.eclipse.osgi.framework.util.SecureAction$21.run(SecureAction.java:423)
        at 
java.security.AccessController.doPrivileged(AccessController.java:314)
        at 
org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:421)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106)
        at 
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453)
        at 
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
        at 
org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:457)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
        at 
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:627)
        at java.lang.J9VMInternals.verifyImpl(Native Method)
        at java.lang.J9VMInternals.verify(J9VMInternals.java:85)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:162)
        at java.lang.J9VMInternals.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Class.java:1357)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:151)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:751)
        at 
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284)
        at 
org.eclipse.osgi.framework.util.SecureAction$21.run(SecureAction.java:423)
        at 
java.security.AccessController.doPrivileged(AccessController.java:314)
        at 
org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:421)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106)
        at 
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453)
        at 
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
        at 
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:627)
        at 
org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338)
        at 
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197)
        at 
org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
        at 
org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904)
        at 
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
        at 
org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
        at 
com.ibm.ws.management.bla.registry.RegistryExtensionHelper.getContentHandlers(RegistryExtensionHelper.java:134)
        at 
com.ibm.ws.management.bla.registry.BLARegistryHelper.createSortedContentHandlerList(BLARegistryHelper.java:294)
        at 
com.ibm.ws.management.bla.registry.BLARegistryHelper.getContentHandlers(BLARegistryHelper.java:137)
        at 
com.ibm.ws.management.bla.sync.BLABinaryProcessor.initSyncHandlers(BLABinaryProcessor.java:212)
        at 
com.ibm.ws.management.bla.sync.BLABinaryProcessor.<init>(BLABinaryProcessor.java:189)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:56)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:527)
        at 
com.ibm.ws.management.repository.FileRepository.initialize(FileRepository.java:356)
        at 
com.ibm.ws.management.component.AdminImpl.initializeConfigRepository(AdminImpl.java:1316)
        at 
com.ibm.ws.management.component.AdminImpl.initialize(AdminImpl.java:484)
        at 
com.ibm.ws.runtime.component.ContainerHelper.initWsComponent(ContainerHelper.java:1192)
        at 
com.ibm.ws.runtime.component.ContainerHelper.initializeComponent(ContainerHelper.java:1099)
        at 
com.ibm.ws.runtime.component.ContainerHelper.initializeComponents(ContainerHelper.java:928)
        at 
com.ibm.ws.runtime.component.ContainerImpl.initializeComponents(ContainerImpl.java:776)
        at 
com.ibm.ws.runtime.component.ContainerImpl.initializeComponents(ContainerImpl.java:750)
        at 
com.ibm.ws.runtime.component.ServerImpl.initialize(ServerImpl.java:332)
        at 
com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:336)
        at com.ibm.ws.runtime.WsServerImpl.start(WsServerImpl.java:267)
        at com.ibm.ws.runtime.WsServerImpl.main(WsServerImpl.java:730)
        at com.ibm.ws.runtime.WsServer.main(WsServer.java:59)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:234)
        at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:95)
        at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:76)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at 
org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
        at 
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at org.eclipse.core.launcher.Main.invokeFramework(Main.java:340)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:282)
        at org.eclipse.core.launcher.Main.run(Main.java:981)
        at 
com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:371)
        at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:142)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to