The agent is generating Skipjndierror in messages in autoprobe logs for EJB2StubTracing and EJB3StubTracing, there are over 10 million entries
This situation impacts JVM startup and actual performance
Here are some examples of the messages in the Autoprobe log
...
********************************************************************************
A problem occurred while processing com/abc/noos/data/Port$: Invalid class file
*********************************************************************************
com.wily.diagnos.cmp.classfile.DGInvalidClassFileException: Invalid class file
at com.wily.diagnos.personality.java.classfile.DGMethod.<init>(DGMethod.java:79)
at com.wily.diagnos.personality.java.classfile.DGClass.<init>(DGClass.java:303)
at com.wily.diagnos.personality.java.compiler.DGStreamSingleCompiler.doNewModeledClass(DGStreamSingleCompiler.java:66)
at com.wily.diagnos.cmp.batch.ASingleCompiler.compileOneClass(ASingleCompiler.java:87)
at com.wily.diagnos.personality.java.JavaPersonality$JavaClassCompiler.compileOneClass(JavaPersonality.java:173)
at com.wily.introscope.autoprobe.AutoProbeTransformer.transform(AutoProbeTransformer.java:1496)
at com.wily.introscope.autoprobe.AutoProbeTransformer.transform(AutoProbeTransformer.java:1435)
at com.wily.introscope.agent.transformer.TransformerAdministrator.doTransformClass(TransformerAdministrator.java:600)
at com.wily.introscope.agent.transformer.TransformerAdministrator.transformClass(TransformerAdministrator.java:570)
...
Using directives list file /export2/Introscope/websphere.unix/core/config/hotdeploy/jndierrorskip.pbd
Starting file dump for /export2/Introscope/websphere.unix/core/config/hotdeploy/jndierrorskip.pbd
> SkipClass: com.ibm.ws.scheduler.calendar.DefaultUserCalendarBean
>
> SkipClass: com.ibm.workplace.wcm.util.scheduler.ejb.EJBSchedulerBean
>
> SkipClass: com.ibm.ws.scheduler.calendar.DefaultUserCalendarBean
>
> SkipClass: com.ibm.workplace.wcm.util.scheduler.ejb.EJBSchedulerBean
>
> SkipClass: com.ibm.ws.scheduler.calendar.DefaultUserCalendarBean
>
> SkipClass: java.lang.Object
> SkipIfInheritedForFlag: java.lang.Object EJB2StubTracing
> SkipIfInheritedForFlag: java.lang.Object EJB3StubTracing
>
> SkipClass: java.lang.Class
> SkipIfInheritedForFlag: java.lang.Class EJB2StubTracing
> SkipIfInheritedForFlag: java.lang.Class EJB3StubTracing
>
> SkipClass: java.lang.Class
> SkipIfInheritedForFlag: java.lang.Class EJB2StubTracing
> SkipIfInheritedForFlag: java.lang.Class EJB3StubTracing
>
> SkipClass: java.lang.Class
> SkipIfInheritedForFlag: java.lang.Class EJB2StubTracing
> SkipIfInheritedForFlag: java.lang.Class EJB3StubTracing
...
APM Java Agent 10.7.x
Remove the jndierrorskip.pbd and skip offending class by package prefix:
1. Remove the jndierrorskip.pbd
Location is defined in the introscope.agent.skipjndierror.location=
2. Skip offending classes by package prefix.
In this example, there is only 1 problematic class:
>> A problem occurred while processing com/example1/example2/data/Port$: Invalid class file
To solve the issue you still the prefix as below:
a) Create a test.pbd with below line:
SkipPackagePrefix: com.ephox.noos.data
b) add test.pbd to directivesFiles as below:
introscope.autoprobe.directivesFile=websphere-typical.pbl,hotdeploy,test.pbd
c) Restart the jvm