Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error transforming FacesServlet #979

Closed
eyalkoren opened this issue Nov 23, 2020 · 21 comments
Closed

Error transforming FacesServlet #979

eyalkoren opened this issue Nov 23, 2020 · 21 comments
Assignees
Labels
Milestone

Comments

@eyalkoren
Copy link
Contributor

eyalkoren commented Nov 23, 2020

Our Jetty 9.4 tests started failing recently, apparently following the latest 9.4 release.
Reproducing it locally, I got the following retransformation-related error:

[jetty] 2020-11-23 06:33:15,578 [Attach Listener] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Error invoking java.lang.instrument.Instrumentation#retransformClasses
[jetty] java.lang.IllegalStateException: Error invoking java.lang.instrument.Instrumentation#retransformClasses
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher$ForJava6CapableVm.retransformClasses(AgentBuilder.java:6916) ~[?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRetransformation.doApply(AgentBuilder.java:7187) ~[?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector.apply(AgentBuilder.java:7032) [?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.apply(AgentBuilder.java:4868) [?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$Default.doInstall(AgentBuilder.java:9502) [?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$Default.installOn(AgentBuilder.java:9423) [?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator.installOn(AgentBuilder.java:11025) [?:?]
[jetty] at co.elastic.apm.agent.bci.ElasticApmAgent.initInstrumentation(ElasticApmAgent.java:261) [?:?]
[jetty] at co.elastic.apm.agent.bci.ElasticApmAgent.initInstrumentation(ElasticApmAgent.java:164) [?:?]
[jetty] at co.elastic.apm.agent.bci.ElasticApmAgent.initialize(ElasticApmAgent.java:150) [?:?]
[jetty] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
[jetty] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) ~[?:?]
[jetty] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
[jetty] at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
[jetty] at co.elastic.apm.agent.bci.AgentMain.init(AgentMain.java:119) [elastic-apm-agent-b41211a1ba26a466d8245d6f0fdbe7fa.jar:?]
[jetty] at co.elastic.apm.agent.bci.AgentMain.agentmain(AgentMain.java:69) [elastic-apm-agent-b41211a1ba26a466d8245d6f0fdbe7fa.jar:?]
[jetty] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
[jetty] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) ~[?:?]
[jetty] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
[jetty] at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
[jetty] at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513) [?:?]
[jetty] at sun.instrument.InstrumentationImpl.loadClassAndCallAgentmain(InstrumentationImpl.java:535) [?:?]
[jetty] Caused by: java.lang.InternalError
[jetty] at sun.instrument.InstrumentationImpl.retransformClasses0(Native Method) ~[?:?]
[jetty] at sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:167) ~[?:?]
[jetty] at jdk.internal.reflect.GeneratedMethodAccessor46.invoke(Unknown Source) ~[?:?]
[jetty] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
[jetty] at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
[jetty] at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher$ForJava6CapableVm.retransformClasses(AgentBuilder.java:6908) ~[?:?]
[jetty] ... 21 more

After some investigation, it seemed that this error occurs in the attempt to retransform the javax.faces.webapp.FacesServlet class that comes from the myfaces 2.2.12 jar. Upgrading to 2.3.2 seems to solve the issue, so I am not digging further into it at the moment, although the retransformation error remains.

The original and transformed bytecode can be found in FacesServlet_bytecode.zip. A quick look didn't reveal anything to me.
We are applying this advice as well as these two.

I hope this provides enough info in order to find the problem.

@raphw
Copy link
Owner

raphw commented Nov 27, 2020

Thanks for the well-formed report, first of all, this makes it easy to look at.

I went through the class files and there is nothing changed in the shape of the class what should make this a straight-forward retransform case. I assume that there is something burried in the class file upgrade, though. The original file looks a bit fishy, for example, I do not know why the lcd_w instruction is used in the class initializer on a non-wide index, and javap does not show me some of the field references correctly but does so in the transformed version.

My best guess is that there is some accidental sanitation happening through ASM which sets of the JVMs check for the transformed class file. Am I understanding you correctly that this is going away by itself in newer versions of the library? I am not quite sure I follow on although the retransformation error remains.

It would be interesting to build the exact source that renders the problem with an up-to-date JDK javac to see if this issue does not occur with that version in such a case.

@eyalkoren
Copy link
Contributor Author

Am I understanding you correctly that this is going away by itself in newer versions of the library? I am not quite sure I follow on although the retransformation error remains.

Sorry, indeed misleading, let me retry - yes, this error does not occur with the newer version of the library. What I meant to say is that upgrading it in our tests was good enough for our immediate purpose, however I was not able to find the root cause of the BCI-related error. So, if someone uses the older version of this library, they will get this error, hence this issue 🙂

It would be interesting to build the exact source that renders the problem with an up-to-date JDK javac to see if this issue does not occur with that version in such a case.

Not sure what you want to try, but let me know if I can assist with anything.
Thanks!

@raphw
Copy link
Owner

raphw commented Nov 29, 2020

Could you attach the working class files similarly to the non-working ones?

@eyalkoren
Copy link
Contributor Author

Sure, there it is - FacesServlet_2_3_2_bytecode.zip

@raphw
Copy link
Owner

raphw commented Dec 2, 2020

Likely this is related to the increment in the class file version. There is nothing particularly different in the two versions besides the first one being compiled with Java 6 and the other one with Java 8. I assume that if you skipped your patch to 7, it would work.

This besides the class file upgrade being allowed. I think something interfers with the validation check when comparing the class file. The compilation results are still odd, the wide bytecodes disappeared in the new version however. I am guessing now but it's probably the strangeness of the Eclipse Java compiler I am seeing here. I am just guessing but I think the removal of the wide byte code through ASM fails some transformation compatibility check. I will try to reconstruct a few scenarios next week, but if I am write there is little I can do (but patch the verifier in OpenJDK if I can pin it down to that, and then the question would be if this got backported anyways).

@eyalkoren
Copy link
Contributor Author

The weird thing is that it was triggered by the release of the latest Jetty 9.4, or the one before (less likely).

@raphw
Copy link
Owner

raphw commented Dec 8, 2020

That does not make much sense to me either, there's nothing in the changesets even remotely related. I wonder how Jetty gets built, though. Maybe it's the compiler being used that causes the problem.

@eyalkoren
Copy link
Contributor Author

Maybe it's the compiler being used that causes the problem.

However the problem is with a class that is compiled separately and which we haven't changed.

I also couldn't find anything related in these commits, but then I realized that what has changed is not only the Jetty version, but the Jetty Docker image that was created to package it. It uses OpenJDK Runtime Environment (build 15.0.1+9-18) and it seems that it recently migrated from JDK 14 to 15, so I believe we hit the first image that runs on 15.

Given the original bytecode, the applied instrumentations and the exact JVM, I hope this is reproducible. Do you think you can pinpoint the exact BCI issue given those?

@raphw
Copy link
Owner

raphw commented Dec 9, 2020

That makes it much more likely, at least.

If I understand it correctly now: using 15.0.1+9-18, the instrumentation fails every time? Is there some code that I can run (in Docker) to reproduce this behavior even?

@eyalkoren
Copy link
Contributor Author

If I understand it correctly now: using 15.0.1+9-18, the instrumentation fails every time?

Yes. If you run our Jetty 9.4 integration test with myfaces-impl 2.2.12 it would fail.

However, that's not very convenient for debugging purposes. I think that if you use 15.0.1+9-18 and our agent to instrument the javax.faces.webapp.FacesServlet class that comes from the myfaces 2.2.12 jar, this should be reproduced.
If you write a test that tries to load this class you will likely need some additional dependencies, but I assume you have your methods to only apply instrumentation to the bytecode without actually resolving the class.

Please let me know if there's anything else I can provide to assist with reproduction.

@raphw
Copy link
Owner

raphw commented Dec 13, 2020

Would I be seeing an exception? I am running the following trivial progam:

public class Samle {
  public static void main(String[] args) throws Exception {
    Class.forName("javax.faces.webapp.FacesServlet", true, Sample.class.getClassLoader());
  }
}

with dependencies:

<dependency>
  <groupId>org.apache.myfaces.core</groupId>
  <artifactId>myfaces-api</artifactId>
  <version>2.2.12</version>
</dependency>
<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>4.0.1</version>
</dependency>

The Java version I am running:

openjdk version "15.0.1" 2020-10-20
OpenJDK Runtime Environment (build 15.0.1+9-18)
OpenJDK 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing)

But nothing obvious seems to be wrong.

@eyalkoren
Copy link
Contributor Author

Did you attach our agent when running it or did you apply the instrumentation otherwise?

@raphw
Copy link
Owner

raphw commented Dec 20, 2020

Yes, I get this output, maybe I am doing it wrong? I just downloaded the agent from Central.

WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
2020-12-20 20:15:59,558 [main] INFO  co.elastic.apm.agent.util.JmxUtils - Found JVM-specific OperatingSystemMXBean interface: com.sun.management.OperatingSystemMXBean
2020-12-20 20:15:59,589 [main] INFO  co.elastic.apm.agent.configuration.StartupInfo - Starting Elastic APM 1.19.0 as Bar on Java 15.0.1 Runtime version: 15.0.1+9-18 VM version: 15.0.1+9-18 (Oracle Corporation) Linux 5.4.0-58-generic
2020-12-20 20:15:59,590 [main] INFO  co.elastic.apm.agent.configuration.StartupInfo - VM Arguments: [-javaagent:/home/rafael/Downloads/elastic-apm-agent-1.19.0.jar, -Dco.elastic.apm.agent.shaded.bytebuddy.dump=/home/rafael/dump, -javaagent:/home/rafael/IDE/idea-IU-192.5728.98/lib/idea_rt.jar=41545:/home/rafael/IDE/idea-IU-192.5728.98/bin, -Dfile.encoding=UTF-8]
2020-12-20 20:15:59,590 [main] WARN  co.elastic.apm.agent.configuration.StartupInfo - To enable all features and decrease startup time, please configure application_packages
2020-12-20 20:16:00,326 [main] INFO  co.elastic.apm.agent.impl.ElasticApmTracer - Tracer switched to RUNNING state
2020-12-20 20:16:00,375 [elastic-apm-server-healthcheck] WARN  co.elastic.apm.agent.report.ApmServerHealthChecker - Elastic APM server http://localhost:8200/ is not available (Connection refused)
2020-12-20 20:16:00,382 [elastic-apm-remote-config-poller] ERROR co.elastic.apm.agent.configuration.ApmServerConfigurationSource - Connection refused
2020-12-20 20:16:05,360 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.impl.ElasticApmTracer - Tracer switched to STOPPED state
2020-12-20 20:16:05,361 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.ApmServerReporter - dropped events because of full queue: 0
2020-12-20 20:16:05,365 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Reported events: 0
2020-12-20 20:16:05,366 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Dropped events: 0
2020-12-20 20:16:05,366 [elastic-apm-circuit-breaker] INFO  co.elastic.apm.agent.impl.circuitbreaker.CircuitBreaker - Stopping the Circuit Breaker thread.

I added a sleep in the method to make sure it's running through.

@eyalkoren
Copy link
Contributor Author

Looks like your setup is good.

Please set -Delastic.apm.log_level=DEBUG as well, as we may log transformation errors only at this level.
In addition, it will log which instrumentations are being applied, so if you see a Method match for instrumentation ServletInstrumentation: ... line for FacesServlet you can be sure the instrumentation was applied for it (although I see you added the configuration for dumpling the bytecode so you should know that already).

@raphw
Copy link
Owner

raphw commented Dec 21, 2020

Full output:

WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
2020-12-21 23:50:06,049 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-configuration-reloader` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:06,070 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 12:cpuset:/
2020-12-21 23:50:06,071 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 11:perf_event:/
2020-12-21 23:50:06,071 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 10:blkio:/user.slice
2020-12-21 23:50:06,071 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 9:freezer:/
2020-12-21 23:50:06,071 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 8:devices:/user.slice
2020-12-21 23:50:06,071 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 7:rdma:/
2020-12-21 23:50:06,072 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 6:hugetlb:/
2020-12-21 23:50:06,072 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 5:net_cls,net_prio:/
2020-12-21 23:50:06,072 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 4:cpu,cpuacct:/user.slice
2020-12-21 23:50:06,073 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 3:memory:/user.slice/user-1000.slice/user@1000.service
2020-12-21 23:50:06,073 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 2:pids:/user.slice/user-1000.slice/user@1000.service
2020-12-21 23:50:06,073 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 1:name=systemd:/user.slice/user-1000.slice/user@1000.service/gnome-launched-jetbrains-idea.desktop-3634.scope
2020-12-21 23:50:06,074 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - Could not parse container ID from '/proc/self/cgroup' line: 0::/user.slice/user-1000.slice/user@1000.service/gnome-launched-jetbrains-idea.desktop-3634.scope
2020-12-21 23:50:06,074 [main] DEBUG co.elastic.apm.agent.impl.payload.SystemInfo - container ID is null
2020-12-21 23:50:06,103 [main] INFO  co.elastic.apm.agent.util.JmxUtils - Found JVM-specific OperatingSystemMXBean interface: com.sun.management.OperatingSystemMXBean
2020-12-21 23:50:06,137 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-log-shipper` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:06,138 [main] INFO  co.elastic.apm.agent.configuration.StartupInfo - Starting Elastic APM 1.19.0 as Bar on Java 15.0.1 Runtime version: 15.0.1+9-18 VM version: 15.0.1+9-18 (Oracle Corporation) Linux 5.4.0-58-generic
2020-12-21 23:50:06,138 [main] INFO  co.elastic.apm.agent.configuration.StartupInfo - VM Arguments: [-javaagent:/home/rafael/Downloads/elastic-apm-agent-1.19.0.jar, -Dco.elastic.apm.agent.shaded.bytebuddy.dump=/home/rafael/dump, -Delastic.apm.log_level=DEBUG, -javaagent:/home/rafael/IDE/idea-IU-192.5728.98/lib/idea_rt.jar=36493:/home/rafael/IDE/idea-IU-192.5728.98/bin, -Dfile.encoding=UTF-8]
2020-12-21 23:50:06,139 [main] DEBUG co.elastic.apm.agent.configuration.StartupInfo - log_level: 'DEBUG' (source: Java System Properties)
2020-12-21 23:50:06,139 [main] WARN  co.elastic.apm.agent.configuration.StartupInfo - To enable all features and decrease startup time, please configure application_packages
2020-12-21 23:50:06,140 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - No plugins dir
2020-12-21 23:50:06,351 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-type-cache-pool-cleaner` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:06,352 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.ApacheHttpClientInstrumentation
2020-12-21 23:50:06,391 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.ApacheHttpAsyncClientInstrumentation
2020-12-21 23:50:06,405 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.ApacheHttpAsyncClientRedirectInstrumentation
2020-12-21 23:50:06,412 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.LegacyApacheHttpClientInstrumentation
2020-12-21 23:50:06,420 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ElasticApmApiInstrumentation$StartTransactionInstrumentation
2020-12-21 23:50:06,427 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ElasticApmApiInstrumentation$StartTransactionWithRemoteParentInstrumentation
2020-12-21 23:50:06,433 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ElasticApmApiInstrumentation$CurrentTransactionInstrumentation
2020-12-21 23:50:06,438 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ElasticApmApiInstrumentation$CurrentSpanInstrumentation
2020-12-21 23:50:06,443 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ElasticApmApiInstrumentation$CaptureExceptionInstrumentation
2020-12-21 23:50:06,448 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.TransactionInstrumentation$SetUserInstrumentation
2020-12-21 23:50:06,452 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.TransactionInstrumentation$EnsureParentIdInstrumentation
2020-12-21 23:50:06,468 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.TransactionInstrumentation$SetResultInstrumentation
2020-12-21 23:50:06,475 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.TransactionInstrumentation$AddCustomContextInstrumentation
2020-12-21 23:50:06,482 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$SetNameInstrumentation
2020-12-21 23:50:06,492 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$SetTypeInstrumentation
2020-12-21 23:50:06,499 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$SetTypesInstrumentation
2020-12-21 23:50:06,504 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$DoCreateSpanInstrumentation
2020-12-21 23:50:06,512 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$SetStartTimestampInstrumentation
2020-12-21 23:50:06,526 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$EndInstrumentation
2020-12-21 23:50:06,531 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$EndWithTimestampInstrumentation
2020-12-21 23:50:06,536 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$CaptureExceptionInstrumentation
2020-12-21 23:50:06,540 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$GetIdInstrumentation
2020-12-21 23:50:06,545 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$GetTraceIdInstrumentation
2020-12-21 23:50:06,550 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$AddStringLabelInstrumentation
2020-12-21 23:50:06,558 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$AddNumberLabelInstrumentation
2020-12-21 23:50:06,564 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$AddBooleanLabelInstrumentation
2020-12-21 23:50:06,568 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$ActivateInstrumentation
2020-12-21 23:50:06,572 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$IsSampledInstrumentation
2020-12-21 23:50:06,581 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$InjectTraceHeadersInstrumentation
2020-12-21 23:50:06,588 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.CaptureExceptionInstrumentation
2020-12-21 23:50:06,593 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.ApiScopeInstrumentation
2020-12-21 23:50:06,597 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.CaptureTransactionInstrumentation
2020-12-21 23:50:06,605 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.CaptureSpanInstrumentation
2020-12-21 23:50:06,613 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.TracedInstrumentation
2020-12-21 23:50:06,620 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.AbstractSpanInstrumentation$LegacyCaptureExceptionInstrumentation
2020-12-21 23:50:06,623 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$SetNameInstrumentation
2020-12-21 23:50:06,626 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$SetTypeInstrumentation
2020-12-21 23:50:06,628 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$DoCreateSpanInstrumentation
2020-12-21 23:50:06,634 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$EndInstrumentation
2020-12-21 23:50:06,637 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$CaptureExceptionInstrumentation
2020-12-21 23:50:06,639 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$GetIdInstrumentation
2020-12-21 23:50:06,645 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$GetTraceIdInstrumentation
2020-12-21 23:50:06,649 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$AddTagInstrumentation
2020-12-21 23:50:06,651 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$ActivateInstrumentation
2020-12-21 23:50:06,654 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.pluginapi.LegacySpanInstrumentation$IsSampledInstrumentation
2020-12-21 23:50:06,658 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.asynchttpclient.AbstractAsyncHttpClientInstrumentation$AsyncHttpClientInstrumentation
2020-12-21 23:50:06,663 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.bootdelegation.BootstrapDelegationClassLoaderInstrumentation
2020-12-21 23:50:06,663 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.errorlogging.Slf4jLoggerErrorCapturingInstrumentation
2020-12-21 23:50:06,668 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.errorlogging.Log4j2LoggerErrorCapturingInstrumentation
2020-12-21 23:50:06,672 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grails.GrailsTransactionNameInstrumentation
2020-12-21 23:50:06,675 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.HttpClientInstrumentation
2020-12-21 23:50:06,679 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.HttpClientAsyncInstrumentation
2020-12-21 23:50:06,683 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.httpclient.HttpRequestHeadersInstrumentation
2020-12-21 23:50:06,685 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.concurrent.ExecutorInstrumentation$ExecutorRunnableInstrumentation
2020-12-21 23:50:06,690 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.concurrent.ExecutorInstrumentation$ExecutorCallableInstrumentation
2020-12-21 23:50:06,693 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.concurrent.ExecutorInstrumentation$ExecutorInvokeAnyAllInstrumentation
2020-12-21 23:50:06,698 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.concurrent.ExecutorInstrumentation$ForkJoinPoolInstrumentation
2020-12-21 23:50:06,702 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.concurrent.ForkJoinTaskInstrumentation
2020-12-21 23:50:06,705 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jaxrs.JaxRsTransactionNameInstrumentation
2020-12-21 23:50:06,706 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jaxws.JaxWsTransactionNameInstrumentation
2020-12-21 23:50:06,708 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.ConnectionInstrumentation
2020-12-21 23:50:06,710 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$ExecuteWithQueryInstrumentation
2020-12-21 23:50:06,713 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$ExecuteUpdateWithQueryInstrumentation
2020-12-21 23:50:06,716 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$ExecuteUpdateNoQueryInstrumentation
2020-12-21 23:50:06,719 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$AddBatchInstrumentation
2020-12-21 23:50:06,721 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$ExecuteBatchInstrumentation
2020-12-21 23:50:06,724 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jdbc.StatementInstrumentation$ExecutePreparedStatementInstrumentation
2020-12-21 23:50:06,727 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.jedis.JedisInstrumentation
2020-12-21 23:50:06,727 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.jedis.JedisSpanNameInstrumentation
2020-12-21 23:50:06,728 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce34StartSpanInstrumentation
2020-12-21 23:50:06,728 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce34StopSpanInstrumentation$OnComplete
2020-12-21 23:50:06,728 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce34StopSpanInstrumentation$OnCompleteExceptionally
2020-12-21 23:50:06,728 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce34StopSpanInstrumentation$OnCancel
2020-12-21 23:50:06,729 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce5StartSpanInstrumentation
2020-12-21 23:50:06,729 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce5StopSpanInstrumentation$OnComplete
2020-12-21 23:50:06,729 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce5StopSpanInstrumentation$OnCompleteExceptionally
2020-12-21 23:50:06,729 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.lettuce.Lettuce5StopSpanInstrumentation$OnCancel
2020-12-21 23:50:06,729 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.redis.redisson.RedisConnectionInstrumentation
2020-12-21 23:50:06,730 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jms.JmsMessageProducerInstrumentation$JmsMessageProducerNoDestinationInstrumentation
2020-12-21 23:50:06,730 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jms.JmsMessageProducerInstrumentation$JmsMessageProducerWithDestinationInstrumentation
2020-12-21 23:50:06,730 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jms.JmsMessageConsumerInstrumentation$ReceiveInstrumentation
2020-12-21 23:50:06,730 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jms.JmsMessageConsumerInstrumentation$SetMessageListenerInstrumentation
2020-12-21 23:50:06,731 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jms.JmsMessageListenerInstrumentation
2020-12-21 23:50:06,731 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jsf.JsfLifecycleInstrumentation$JsfLifecycleExecuteInstrumentation
2020-12-21 23:50:06,731 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.jsf.JsfLifecycleInstrumentation$JsfLifecycleRenderInstrumentation
2020-12-21 23:50:06,731 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.hibernatesearch.HibernateSearch5Instrumentation
2020-12-21 23:50:06,733 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchClientSyncInstrumentation
2020-12-21 23:50:06,734 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchClientAsyncInstrumentation
2020-12-21 23:50:06,734 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.es.restclient.v6_4.ElasticsearchClientSyncInstrumentation
2020-12-21 23:50:06,734 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.es.restclient.v6_4.ElasticsearchClientAsyncInstrumentation
2020-12-21 23:50:06,734 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ServerCallListenerInstrumentation$FinalMethodCall
2020-12-21 23:50:06,736 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ServerCallListenerInstrumentation$NonFinalMethodCall
2020-12-21 23:50:06,738 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ServerCallHandlerInstrumentation
2020-12-21 23:50:06,741 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ServerCallInstrumentation
2020-12-21 23:50:06,743 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ChannelInstrumentation
2020-12-21 23:50:06,745 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.grpc.ClientCallImplInstrumentation$Start
2020-12-21 23:50:06,746 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.KafkaProducerInstrumentation
2020-12-21 23:50:06,747 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.KafkaConsumerInstrumentation
2020-12-21 23:50:06,747 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.KafkaProducerHeadersInstrumentation
2020-12-21 23:50:06,747 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.ConsumerRecordsIteratorInstrumentation
2020-12-21 23:50:06,747 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.ConsumerRecordsRecordsInstrumentation
2020-12-21 23:50:06,748 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.kafka.ConsumerRecordsRecordListInstrumentation
2020-12-21 23:50:06,748 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.mongoclient.ConnectionCommandInstrumentation
2020-12-21 23:50:06,748 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.mongoclient.ConnectionInstrumentation
2020-12-21 23:50:06,748 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.okhttp.OkHttpClientInstrumentation
2020-12-21 23:50:06,751 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.okhttp.OkHttp3ClientInstrumentation
2020-12-21 23:50:06,754 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.okhttp.OkHttpClientAsyncInstrumentation
2020-12-21 23:50:06,756 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.okhttp.OkHttp3ClientAsyncInstrumentation
2020-12-21 23:50:06,758 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanInstrumentation$FinishInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanInstrumentation$LogInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanInstrumentation$TagInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanInstrumentation$SetOperationName
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanInstrumentation$GetTraceContextInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmSpanBuilderInstrumentation$CreateSpanInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ScopeManagerInstrumentation$ActivateInstrumentation
2020-12-21 23:50:06,759 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ScopeManagerInstrumentation$CurrentSpanInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ScopeManagerInstrumentation$CurrentTraceContextInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ApmScopeInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.SpanContextInstrumentation$BaggageItemsInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.SpanContextInstrumentation$ToTraceIdInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.SpanContextInstrumentation$ToSpanIdInstrumentation
2020-12-21 23:50:06,760 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ExternalSpanContextInstrumentation$ToTraceIdInstrumentation
2020-12-21 23:50:06,761 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ExternalSpanContextInstrumentation$ToSpanIdInstrumentation
2020-12-21 23:50:06,761 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.opentracing.impl.ElasticApmTracerInstrumentation
2020-12-21 23:50:06,761 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.ServletInstrumentation
2020-12-21 23:50:06,763 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.ServletVersionInstrumentation$Init
2020-12-21 23:50:06,764 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.ServletVersionInstrumentation$Service
2020-12-21 23:50:06,765 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.FilterChainInstrumentation
2020-12-21 23:50:06,768 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.AsyncInstrumentation$StartAsyncInstrumentation
2020-12-21 23:50:06,769 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.AsyncInstrumentation$AsyncContextInstrumentation
2020-12-21 23:50:06,772 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.servlet.RequestStreamRecordingInstrumentation
2020-12-21 23:50:06,777 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.micrometer.MicrometerInstrumentation
2020-12-21 23:50:06,779 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.resttemplate.SpringRestTemplateInstrumentation
2020-12-21 23:50:06,781 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.springwebmvc.SpringTransactionNameInstrumentation
2020-12-21 23:50:06,783 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.springwebmvc.ServletWrappingControllerServiceNameInstrumentation
2020-12-21 23:50:06,784 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.springwebmvc.ViewRenderInstrumentation
2020-12-21 23:50:06,788 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.springwebmvc.SpringServiceNameInstrumentation
2020-12-21 23:50:06,790 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.springwebmvc.ExceptionHandlerInstrumentation
2020-12-21 23:50:06,792 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.urlconnection.HttpUrlConnectionInstrumentation$CreateSpanInstrumentation
2020-12-21 23:50:06,795 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.urlconnection.HttpUrlConnectionInstrumentation$DisconnectInstrumentation
2020-12-21 23:50:06,796 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.urlconnection.SSLContextInstrumentation
2020-12-21 23:50:06,798 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.scheduled.ScheduledTransactionNameInstrumentation
2020-12-21 23:50:06,801 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.scheduled.TimerTaskInstrumentation
2020-12-21 23:50:06,804 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.quartzjob.JobTransactionNameInstrumentation
2020-12-21 23:50:06,806 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.process.ProcessStartInstrumentation
2020-12-21 23:50:06,808 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.process.ProcessExitInstrumentation$WaitFor
2020-12-21 23:50:06,810 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.process.ProcessExitInstrumentation$Destroy
2020-12-21 23:50:06,812 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applying instrumentation co.elastic.apm.agent.process.CommonsExecAsyncInstrumentation
2020-12-21 23:50:06,815 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Applied 148 advices
2020-12-21 23:50:06,854 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation CreateSpanInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class java.net.HttpURLConnection
2020-12-21 23:50:06,857 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ForkJoinTaskInstrumentation: (is(class java.util.concurrent.ForkJoinTask) and not(isInterface())) matches class java.util.concurrent.ForkJoinTask
2020-12-21 23:50:06,858 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ForkJoinPool
2020-12-21 23:50:06,862 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation BootstrapDelegationClassLoaderInstrumentation: ((((((not(name(startsWith(java.))) and not(name(startsWith(jdk.)))) and not(name(startsWith(com.sun.)))) and not(name(startsWith(sun.)))) and not(name(contains(Bootstrap)))) and hasSuperType(erasure(is(class java.lang.ClassLoader)))) and not(isInterface())) matches class co.elastic.apm.agent.bci.classloading.ExternalPluginClassLoader
2020-12-21 23:50:06,918 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$NamedDaemonThreadPoolExecutor
2020-12-21 23:50:06,933 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$1
2020-12-21 23:50:06,933 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ScheduledThreadPoolExecutor
2020-12-21 23:50:06,941 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ThreadPoolExecutor
2020-12-21 23:50:06,941 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.AbstractExecutorService
2020-12-21 23:50:07,049 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation CreateSpanInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class java.net.HttpURLConnection
2020-12-21 23:50:07,049 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation DisconnectInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class java.net.HttpURLConnection
2020-12-21 23:50:07,085 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ForkJoinTaskInstrumentation: (is(class java.util.concurrent.ForkJoinTask) and not(isInterface())) matches class java.util.concurrent.ForkJoinTask
2020-12-21 23:50:07,098 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ForkJoinTaskInstrumentation: ((name(equals(fork)) and returns(erasure(is(class java.util.concurrent.ForkJoinTask)))) and not(isAbstract())) matches public final java.util.concurrent.ForkJoinTask java.util.concurrent.ForkJoinTask.fork()
2020-12-21 23:50:07,111 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ForkJoinPool
2020-12-21 23:50:07,111 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ForkJoinPool
2020-12-21 23:50:07,111 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ForkJoinPool
2020-12-21 23:50:07,111 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ForkJoinPoolInstrumentation: ((hasSuperType(erasure(is(class java.util.concurrent.ForkJoinPool))) and ((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$)))))) and not(isInterface())) matches class java.util.concurrent.ForkJoinPool
2020-12-21 23:50:07,131 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ForkJoinPoolInstrumentation: (((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask)))))) or ((name(equals(submit)) and returns(erasure(is(class java.util.concurrent.ForkJoinTask)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) or ((name(equals(invoke)) and returns(erasure(is(class java.lang.Object)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) and not(isAbstract())) matches public java.lang.Object java.util.concurrent.ForkJoinPool.invoke(java.util.concurrent.ForkJoinTask)
2020-12-21 23:50:07,135 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ForkJoinPoolInstrumentation: (((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask)))))) or ((name(equals(submit)) and returns(erasure(is(class java.util.concurrent.ForkJoinTask)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) or ((name(equals(invoke)) and returns(erasure(is(class java.lang.Object)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) and not(isAbstract())) matches public void java.util.concurrent.ForkJoinPool.execute(java.util.concurrent.ForkJoinTask)
2020-12-21 23:50:07,138 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public void java.util.concurrent.ForkJoinPool.execute(java.lang.Runnable)
2020-12-21 23:50:07,140 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorCallableInstrumentation: ((((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable)))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.ForkJoinTask java.util.concurrent.ForkJoinPool.submit(java.util.concurrent.Callable)
2020-12-21 23:50:07,142 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ForkJoinPoolInstrumentation: (((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask)))))) or ((name(equals(submit)) and returns(erasure(is(class java.util.concurrent.ForkJoinTask)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) or ((name(equals(invoke)) and returns(erasure(is(class java.lang.Object)))) and hasParameter(hasTypes(erasures(containing(is(class java.util.concurrent.ForkJoinTask))))))) and not(isAbstract())) matches public java.util.concurrent.ForkJoinTask java.util.concurrent.ForkJoinPool.submit(java.util.concurrent.ForkJoinTask)
2020-12-21 23:50:07,144 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.ForkJoinTask java.util.concurrent.ForkJoinPool.submit(java.lang.Runnable)
2020-12-21 23:50:07,146 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.ForkJoinTask java.util.concurrent.ForkJoinPool.submit(java.lang.Runnable,java.lang.Object)
2020-12-21 23:50:07,150 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((name(startsWith(invoke)) and (name(endsWith(Any)) or name(endsWith(All)))) and isPublic()) and hasParameter(hasTypes(with(0 matches erasure(is(interface java.util.Collection)))))) and isOverriddenFrom(erasure(is(interface java.util.concurrent.ExecutorService)))) and not(isAbstract())) matches public java.util.List java.util.concurrent.ForkJoinPool.invokeAll(java.util.Collection)
2020-12-21 23:50:07,163 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation BootstrapDelegationClassLoaderInstrumentation: ((((((not(name(startsWith(java.))) and not(name(startsWith(jdk.)))) and not(name(startsWith(com.sun.)))) and not(name(startsWith(sun.)))) and not(name(contains(Bootstrap)))) and hasSuperType(erasure(is(class java.lang.ClassLoader)))) and not(isInterface())) matches class co.elastic.apm.agent.bci.classloading.ExternalPluginClassLoader
2020-12-21 23:50:07,172 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$NamedDaemonThreadPoolExecutor
2020-12-21 23:50:07,172 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$NamedDaemonThreadPoolExecutor
2020-12-21 23:50:07,173 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$NamedDaemonThreadPoolExecutor
2020-12-21 23:50:07,182 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$1
2020-12-21 23:50:07,182 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$1
2020-12-21 23:50:07,182 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class co.elastic.apm.agent.util.ExecutorUtils$1
2020-12-21 23:50:07,188 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ScheduledThreadPoolExecutor
2020-12-21 23:50:07,188 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ScheduledThreadPoolExecutor
2020-12-21 23:50:07,189 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ScheduledThreadPoolExecutor
2020-12-21 23:50:07,196 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public void java.util.concurrent.ScheduledThreadPoolExecutor.execute(java.lang.Runnable)
2020-12-21 23:50:07,198 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.ScheduledThreadPoolExecutor.submit(java.lang.Runnable)
2020-12-21 23:50:07,199 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorCallableInstrumentation: ((((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable)))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.ScheduledThreadPoolExecutor.submit(java.util.concurrent.Callable)
2020-12-21 23:50:07,200 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.ScheduledThreadPoolExecutor.submit(java.lang.Runnable,java.lang.Object)
2020-12-21 23:50:07,202 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorCallableInstrumentation: ((((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable)))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.ScheduledFuture java.util.concurrent.ScheduledThreadPoolExecutor.schedule(java.util.concurrent.Callable,long,java.util.concurrent.TimeUnit)
2020-12-21 23:50:07,203 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.ScheduledFuture java.util.concurrent.ScheduledThreadPoolExecutor.schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)
2020-12-21 23:50:07,207 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ThreadPoolExecutor
2020-12-21 23:50:07,207 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ThreadPoolExecutor
2020-12-21 23:50:07,207 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.ThreadPoolExecutor
2020-12-21 23:50:07,216 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public void java.util.concurrent.ThreadPoolExecutor.execute(java.lang.Runnable)
2020-12-21 23:50:07,222 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorRunnableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.AbstractExecutorService
2020-12-21 23:50:07,222 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorCallableInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.AbstractExecutorService
2020-12-21 23:50:07,222 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((((((hasSuperType(erasure(name(equals(java.util.concurrent.Executor)))) and not(name(equals(org.apache.felix.resolver.ResolverImpl$DumbExecutor)))) and not(name(contains(jetty)))) and not(name(contains(tomcat)))) and not(name(contains(jboss)))) and not(name(contains(undertow)))) and not(name(contains(netty)))) and not(name(startsWith(com.hazelcast)))) and not((name(contains($Proxy)) or name(contains($$))))) and not(isInterface())) matches class java.util.concurrent.AbstractExecutorService
2020-12-21 23:50:07,229 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.AbstractExecutorService.submit(java.lang.Runnable,java.lang.Object)
2020-12-21 23:50:07,231 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorRunnableInstrumentation: ((((((name(equals(execute)) and returns(erasure(is(void)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable)))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable))))))) or ((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(class java.lang.Object))))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.lang.Runnable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.AbstractExecutorService.submit(java.lang.Runnable)
2020-12-21 23:50:07,232 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorCallableInstrumentation: ((((name(equals(submit)) and returns(erasure(hasSuperType(erasure(is(interface java.util.concurrent.Future)))))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable)))))) or ((name(equals(schedule)) and returns(erasure(is(interface java.util.concurrent.ScheduledFuture)))) and hasParameter(hasTypes(erasures(containing(is(interface java.util.concurrent.Callable), is(long), is(class java.util.concurrent.TimeUnit))))))) and not(isAbstract())) matches public java.util.concurrent.Future java.util.concurrent.AbstractExecutorService.submit(java.util.concurrent.Callable)
2020-12-21 23:50:07,234 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((name(startsWith(invoke)) and (name(endsWith(Any)) or name(endsWith(All)))) and isPublic()) and hasParameter(hasTypes(with(0 matches erasure(is(interface java.util.Collection)))))) and isOverriddenFrom(erasure(is(interface java.util.concurrent.ExecutorService)))) and not(isAbstract())) matches public java.util.List java.util.concurrent.AbstractExecutorService.invokeAll(java.util.Collection) throws java.lang.InterruptedException
2020-12-21 23:50:07,235 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((name(startsWith(invoke)) and (name(endsWith(Any)) or name(endsWith(All)))) and isPublic()) and hasParameter(hasTypes(with(0 matches erasure(is(interface java.util.Collection)))))) and isOverriddenFrom(erasure(is(interface java.util.concurrent.ExecutorService)))) and not(isAbstract())) matches public java.util.List java.util.concurrent.AbstractExecutorService.invokeAll(java.util.Collection,long,java.util.concurrent.TimeUnit) throws java.lang.InterruptedException
2020-12-21 23:50:07,238 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((name(startsWith(invoke)) and (name(endsWith(Any)) or name(endsWith(All)))) and isPublic()) and hasParameter(hasTypes(with(0 matches erasure(is(interface java.util.Collection)))))) and isOverriddenFrom(erasure(is(interface java.util.concurrent.ExecutorService)))) and not(isAbstract())) matches public java.lang.Object java.util.concurrent.AbstractExecutorService.invokeAny(java.util.Collection) throws java.lang.InterruptedException,java.util.concurrent.ExecutionException
2020-12-21 23:50:07,239 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ExecutorInvokeAnyAllInstrumentation: (((((name(startsWith(invoke)) and (name(endsWith(Any)) or name(endsWith(All)))) and isPublic()) and hasParameter(hasTypes(with(0 matches erasure(is(interface java.util.Collection)))))) and isOverriddenFrom(erasure(is(interface java.util.concurrent.ExecutorService)))) and not(isAbstract())) matches public java.lang.Object java.util.concurrent.AbstractExecutorService.invokeAny(java.util.Collection,long,java.util.concurrent.TimeUnit) throws java.lang.InterruptedException,java.util.concurrent.ExecutionException,java.util.concurrent.TimeoutException
2020-12-21 23:50:07,319 [main] DEBUG co.elastic.apm.agent.bci.IndyPluginClassLoaderFactory - Creating plugin class loader for null containing [co.elastic.apm.agent.bci.classloading.LookupExposer]
2020-12-21 23:50:07,320 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation BootstrapDelegationClassLoaderInstrumentation: ((((((not(name(startsWith(java.))) and not(name(startsWith(jdk.)))) and not(name(startsWith(com.sun.)))) and not(name(startsWith(sun.)))) and not(name(contains(Bootstrap)))) and hasSuperType(erasure(is(class java.lang.ClassLoader)))) and not(isInterface())) matches class co.elastic.apm.agent.bci.classloading.IndyPluginClassLoader
2020-12-21 23:50:07,330 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-server-healthcheck` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,333 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-remote-config-poller` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,334 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation CreateSpanInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class sun.net.www.protocol.http.HttpURLConnection
2020-12-21 23:50:07,334 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation DisconnectInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class sun.net.www.protocol.http.HttpURLConnection
2020-12-21 23:50:07,350 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation CreateSpanInstrumentation: ((((name(equals(connect)) and hasParameter(ofSize(0))) or (name(equals(getOutputStream)) and hasParameter(ofSize(0)))) or (name(equals(getInputStream)) and hasParameter(ofSize(0)))) and not(isAbstract())) matches public void sun.net.www.protocol.http.HttpURLConnection.connect() throws java.io.IOException
2020-12-21 23:50:07,356 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation CreateSpanInstrumentation: ((((name(equals(connect)) and hasParameter(ofSize(0))) or (name(equals(getOutputStream)) and hasParameter(ofSize(0)))) or (name(equals(getInputStream)) and hasParameter(ofSize(0)))) and not(isAbstract())) matches public synchronized java.io.OutputStream sun.net.www.protocol.http.HttpURLConnection.getOutputStream() throws java.io.IOException
2020-12-21 23:50:07,359 [main] DEBUG co.elastic.apm.agent.impl.circuitbreaker.GCStressMonitor - Registering a heap memory pool (G1 Eden Space) for stress monitoring
2020-12-21 23:50:07,359 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation CreateSpanInstrumentation: ((((name(equals(connect)) and hasParameter(ofSize(0))) or (name(equals(getOutputStream)) and hasParameter(ofSize(0)))) or (name(equals(getInputStream)) and hasParameter(ofSize(0)))) and not(isAbstract())) matches public synchronized java.io.InputStream sun.net.www.protocol.http.HttpURLConnection.getInputStream() throws java.io.IOException
2020-12-21 23:50:07,360 [main] DEBUG co.elastic.apm.agent.impl.circuitbreaker.GCStressMonitor - Registering a heap memory pool (G1 Old Gen) for stress monitoring
2020-12-21 23:50:07,361 [main] DEBUG co.elastic.apm.agent.impl.circuitbreaker.SystemCpuStressMonitor - Successfully obtained reference to the getSystemCpuLoad method of this JVM's OperatingSystemMXBean implementation
2020-12-21 23:50:07,362 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-circuit-breaker` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,362 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-weak-map-cleaner` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,363 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-shared` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,363 [main] DEBUG co.elastic.apm.agent.jmx.JmxMetricTracker - Deferring initialization of JMX metric tracking until capture_jmx_metrics is set.
2020-12-21 23:50:07,364 [main] DEBUG co.elastic.apm.agent.util.ExecutorUtils - A new thread named `elastic-apm-sampling-profiler` was created. The original context class loader of this thread (jdk.internal.loader.ClassLoaders$AppClassLoader@659e0bfd) has been overridden
2020-12-21 23:50:07,368 [main] INFO  co.elastic.apm.agent.impl.ElasticApmTracer - Tracer switched to RUNNING state
2020-12-21 23:50:07,369 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation DisconnectInstrumentation: ((name(equals(disconnect)) and hasParameter(ofSize(0))) and not(isAbstract())) matches public void sun.net.www.protocol.http.HttpURLConnection.disconnect()
2020-12-21 23:50:07,376 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation ServletInstrumentation: ((not(isInterface()) and hasSuperType(erasure(name(equals(javax.servlet.Servlet))))) and not(isInterface())) matches class javax.faces.webapp.FacesServlet
2020-12-21 23:50:07,376 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation Init: ((not(isInterface()) and hasSuperType(erasure(name(equals(javax.servlet.Servlet))))) and not(isInterface())) matches class javax.faces.webapp.FacesServlet
2020-12-21 23:50:07,376 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation Service: ((not(isInterface()) and hasSuperType(erasure(name(equals(javax.servlet.Servlet))))) and not(isInterface())) matches class javax.faces.webapp.FacesServlet
2020-12-21 23:50:07,387 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation CreateSpanInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class javax.net.ssl.HttpsURLConnection
2020-12-21 23:50:07,387 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Type match for instrumentation DisconnectInstrumentation: ((hasSuperType(erasure(is(class java.net.HttpURLConnection))) and not(name(equals(sun.net.www.protocol.https.HttpsURLConnectionImpl)))) and not(isInterface())) matches class javax.net.ssl.HttpsURLConnection
2020-12-21 23:50:07,389 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation Init: ((name(equals(init)) and hasParameter(hasTypes(with(0 matches erasure(name(equals(javax.servlet.ServletConfig))))))) and not(isAbstract())) matches public void javax.faces.webapp.FacesServlet.init(javax.servlet.ServletConfig) throws javax.servlet.ServletException
2020-12-21 23:50:07,390 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation ServletInstrumentation: (((name(equals(service)) and hasParameter(hasTypes(with(0 matches erasure(name(equals(javax.servlet.ServletRequest))))))) and hasParameter(hasTypes(with(1 matches erasure(name(equals(javax.servlet.ServletResponse))))))) and not(isAbstract())) matches public void javax.faces.webapp.FacesServlet.service(javax.servlet.ServletRequest,javax.servlet.ServletResponse) throws java.io.IOException,javax.servlet.ServletException
2020-12-21 23:50:07,391 [main] DEBUG co.elastic.apm.agent.bci.ElasticApmAgent - Method match for instrumentation Service: (((name(equals(service)) and hasParameter(hasTypes(with(0 matches erasure(name(equals(javax.servlet.ServletRequest))))))) and hasParameter(hasTypes(with(1 matches erasure(name(equals(javax.servlet.ServletResponse))))))) and not(isAbstract())) matches public void javax.faces.webapp.FacesServlet.service(javax.servlet.ServletRequest,javax.servlet.ServletResponse) throws java.io.IOException,javax.servlet.ServletException
2020-12-21 23:50:07,399 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.report.ApmServerHealthChecker - Starting healthcheck to http://localhost:8200/
2020-12-21 23:50:07,399 [elastic-apm-remote-config-poller] DEBUG co.elastic.apm.agent.configuration.ApmServerConfigurationSource - Reloading configuration from APM Server http://localhost:8200/config/v1/agents
2020-12-21 23:50:07,415 [elastic-apm-server-healthcheck] DEBUG co.elastic.apm.agent.bci.IndyPluginClassLoaderFactory - Creating plugin class loader for null containing [co.elastic.apm.agent.urlconnection.SSLContextInstrumentation, co.elastic.apm.agent.urlconnection.HttpUrlConnectionInstrumentation, co.elastic.apm.agent.urlconnection.HttpUrlConnectionInstrumentation$DisconnectInstrumentation, co.elastic.apm.agent.urlconnection.HttpUrlConnectionInstrumentation$CreateSpanInstrumentation, co.elastic.apm.agent.urlconnection.UrlConnectionPropertyAccessor, co.elastic.apm.agent.urlconnection.package-info, co.elastic.apm.agent.bci.classloading.LookupExposer]
2020-12-21 23:50:07,428 [elastic-apm-server-healthcheck] WARN  co.elastic.apm.agent.report.ApmServerHealthChecker - Elastic APM server http://localhost:8200/ is not available (Connection refused)
2020-12-21 23:50:07,432 [elastic-apm-remote-config-poller] DEBUG co.elastic.apm.agent.report.ApmServerClient - Exception while interacting with APM Server, trying next one.
2020-12-21 23:50:07,432 [elastic-apm-remote-config-poller] ERROR co.elastic.apm.agent.configuration.ApmServerConfigurationSource - Connection refused
2020-12-21 23:50:07,432 [elastic-apm-remote-config-poller] DEBUG co.elastic.apm.agent.configuration.ApmServerConfigurationSource - Scheduling next remote configuration reload in 300s
2020-12-21 23:50:12,409 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.impl.ElasticApmTracer - Tracer switched to STOPPED state
2020-12-21 23:50:12,409 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.ApmServerReporter - dropped events because of full queue: 0
2020-12-21 23:50:12,420 [elastic-apm-server-reporter] DEBUG co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Receiving SHUTDOWN event (sequence 0)
2020-12-21 23:50:12,420 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Reported events: 0
2020-12-21 23:50:12,420 [elastic-apm-init-instrumentation-shutdown-hook] INFO  co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Dropped events: 0
2020-12-21 23:50:12,437 [elastic-apm-init-instrumentation-shutdown-hook] DEBUG co.elastic.apm.agent.bci.MatcherTimerLifecycleListener - Total time spent matching: 184,228,851ns
| Advice name                                        | Type ns         | Method ns       |
| ExecutorInstrumentation$ExecutorRunnableInstrumentation |      21,282,949 |       5,474,699 |
| BootstrapDelegationClassLoaderInstrumentation      |       8,085,435 |          14,054 |
| ExecutorInstrumentation$ExecutorInvokeAnyAllInstrumentation |       3,046,348 |       4,651,514 |
| ConnectionInstrumentation                          |       6,906,235 |               0 |
| Slf4jLoggerErrorCapturingInstrumentation           |       5,956,833 |               0 |
| ForkJoinTaskInstrumentation                        |       4,822,838 |         608,103 |
| ExecutorInstrumentation$ExecutorCallableInstrumentation |       3,224,104 |       1,854,289 |
| ViewRenderInstrumentation                          |       4,910,070 |               0 |
| ServletVersionInstrumentation$Init                 |       4,493,279 |         350,725 |
| ExecutorInstrumentation$ForkJoinPoolInstrumentation |       2,521,762 |       2,183,592 |
| HttpUrlConnectionInstrumentation$CreateSpanInstrumentation |       2,704,207 |       1,635,381 |
| HttpClientInstrumentation                          |       3,009,759 |               0 |
| ServletVersionInstrumentation$Service              |       2,543,766 |         333,540 |
| HttpUrlConnectionInstrumentation$DisconnectInstrumentation |       1,839,591 |         587,690 |
| ServletInstrumentation                             |       1,786,672 |         421,236 |
| ApacheHttpClientInstrumentation                    |       2,146,207 |               0 |
| LegacyApacheHttpClientInstrumentation              |       2,069,104 |               0 |
| MicrometerInstrumentation                          |       1,729,326 |               0 |
| SSLContextInstrumentation                          |       1,166,840 |               0 |
| StatementInstrumentation$ExecuteWithQueryInstrumentation |       1,146,259 |               0 |
| Log4j2LoggerErrorCapturingInstrumentation          |       1,074,544 |               0 |
| Lettuce34StartSpanInstrumentation                  |       1,051,321 |               0 |
| StatementInstrumentation$ExecuteUpdateWithQueryInstrumentation |       1,030,373 |               0 |
| JedisInstrumentation                               |         964,860 |               0 |
| StatementInstrumentation$ExecuteUpdateNoQueryInstrumentation |         960,355 |               0 |
| StatementInstrumentation$ExecuteBatchInstrumentation |         945,129 |               0 |
| ApacheHttpAsyncClientInstrumentation               |         925,801 |               0 |
| CommonsExecAsyncInstrumentation                    |         897,732 |               0 |
| ProcessExitInstrumentation$WaitFor                 |         893,533 |               0 |
| Lettuce34StopSpanInstrumentation$OnComplete        |         865,347 |               0 |
| StatementInstrumentation$AddBatchInstrumentation   |         851,920 |               0 |
| StatementInstrumentation$ExecutePreparedStatementInstrumentation |         843,007 |               0 |
| JmsMessageProducerInstrumentation$JmsMessageProducerNoDestinationInstrumentation |         839,529 |               0 |
| CaptureExceptionInstrumentation                    |         837,376 |               0 |
| JobTransactionNameInstrumentation                  |         834,800 |               0 |
| SpringRestTemplateInstrumentation                  |         832,143 |               0 |
| KafkaProducerInstrumentation                       |         791,882 |               0 |
| CaptureTransactionInstrumentation                  |         785,499 |               0 |
| SpringServiceNameInstrumentation                   |         787,951 |               0 |
| ProcessExitInstrumentation$Destroy                 |         768,933 |               0 |
| ApacheHttpAsyncClientRedirectInstrumentation       |         768,936 |               0 |
| ServerCallListenerInstrumentation$FinalMethodCall  |         759,230 |               0 |
| HttpRequestHeadersInstrumentation                  |         740,363 |               0 |
| ProcessStartInstrumentation                        |         739,426 |               0 |
| ElasticApmApiInstrumentation$StartTransactionInstrumentation |         738,410 |               0 |
| HttpClientAsyncInstrumentation                     |         734,158 |               0 |
| JaxRsTransactionNameInstrumentation                |         726,321 |               0 |
| ElasticsearchClientSyncInstrumentation             |         715,546 |               0 |
| JmsMessageConsumerInstrumentation$SetMessageListenerInstrumentation |         698,951 |               0 |
| FilterChainInstrumentation                         |         697,467 |               0 |
| AbstractSpanInstrumentation$LegacyCaptureExceptionInstrumentation |         697,216 |               0 |
| ConnectionInstrumentation                          |         691,526 |               0 |
| LegacySpanInstrumentation$SetNameInstrumentation   |         687,678 |               0 |
| Lettuce34StopSpanInstrumentation$OnCancel          |         686,723 |               0 |
| KafkaConsumerInstrumentation                       |         686,276 |               0 |
| ServerCallListenerInstrumentation$NonFinalMethodCall |         685,058 |               0 |
| Lettuce34StopSpanInstrumentation$OnCompleteExceptionally |         679,189 |               0 |
| AbstractSpanInstrumentation$GetIdInstrumentation   |         677,313 |               0 |
| TimerTaskInstrumentation                           |         674,372 |               0 |
| SpanContextInstrumentation$ToSpanIdInstrumentation |         673,246 |               0 |
| Lettuce5StopSpanInstrumentation$OnComplete         |         669,850 |               0 |
| ConnectionCommandInstrumentation                   |         668,855 |               0 |
| ElasticApmApiInstrumentation$StartTransactionWithRemoteParentInstrumentation |         664,872 |               0 |
| SpringTransactionNameInstrumentation               |         663,519 |               0 |
| ElasticsearchClientAsyncInstrumentation            |         655,565 |               0 |
| KafkaProducerHeadersInstrumentation                |         653,696 |               0 |
| AbstractSpanInstrumentation$SetNameInstrumentation |         643,065 |               0 |
| ExternalSpanContextInstrumentation$ToTraceIdInstrumentation |         641,021 |               0 |
| LegacySpanInstrumentation$ActivateInstrumentation  |         637,350 |               0 |
| JmsMessageProducerInstrumentation$JmsMessageProducerWithDestinationInstrumentation |         630,756 |               0 |
| JsfLifecycleInstrumentation$JsfLifecycleExecuteInstrumentation |         629,828 |               0 |
| ServletWrappingControllerServiceNameInstrumentation |         628,419 |               0 |
| HibernateSearch5Instrumentation                    |         618,434 |               0 |
| ScopeManagerInstrumentation$CurrentTraceContextInstrumentation |         618,315 |               0 |
| CaptureSpanInstrumentation                         |         613,788 |               0 |
| SpanContextInstrumentation$BaggageItemsInstrumentation |         610,880 |               0 |
| RedisConnectionInstrumentation                     |         610,104 |               0 |
| JedisSpanNameInstrumentation                       |         606,962 |               0 |
| JaxWsTransactionNameInstrumentation                |         606,306 |               0 |
| ExceptionHandlerInstrumentation                    |         605,516 |               0 |
| AbstractAsyncHttpClientInstrumentation$AsyncHttpClientInstrumentation |         601,766 |               0 |
| LegacySpanInstrumentation$CaptureExceptionInstrumentation |         601,513 |               0 |
| ScopeManagerInstrumentation$CurrentSpanInstrumentation |         599,906 |               0 |
| LegacySpanInstrumentation$IsSampledInstrumentation |         598,248 |               0 |
| ExternalSpanContextInstrumentation$ToSpanIdInstrumentation |         594,018 |               0 |
| AsyncInstrumentation$AsyncContextInstrumentation   |         593,644 |               0 |
| TracedInstrumentation                              |         592,887 |               0 |
| AbstractSpanInstrumentation$EndInstrumentation     |         586,220 |               0 |
| Lettuce5StopSpanInstrumentation$OnCancel           |         584,714 |               0 |
| ServerCallInstrumentation                          |         583,673 |               0 |
| ElasticsearchClientAsyncInstrumentation            |         583,080 |               0 |
| OkHttp3ClientAsyncInstrumentation                  |         581,623 |               0 |
| JmsMessageConsumerInstrumentation$ReceiveInstrumentation |         576,917 |               0 |
| JmsMessageListenerInstrumentation                  |         574,296 |               0 |
| LegacySpanInstrumentation$SetTypeInstrumentation   |         571,399 |               0 |
| LegacySpanInstrumentation$GetIdInstrumentation     |         571,015 |               0 |
| ApmSpanInstrumentation$LogInstrumentation          |         570,305 |               0 |
| ScopeManagerInstrumentation$ActivateInstrumentation |         568,809 |               0 |
| OkHttpClientInstrumentation                        |         567,885 |               0 |
| LegacySpanInstrumentation$GetTraceIdInstrumentation |         566,152 |               0 |
| Lettuce5StartSpanInstrumentation                   |         564,456 |               0 |
| AbstractSpanInstrumentation$CaptureExceptionInstrumentation |         562,810 |               0 |
| ElasticsearchClientSyncInstrumentation             |         562,709 |               0 |
| ConsumerRecordsIteratorInstrumentation             |         560,037 |               0 |
| ApmSpanInstrumentation$GetTraceContextInstrumentation |         558,605 |               0 |
| TransactionInstrumentation$SetResultInstrumentation |         556,751 |               0 |
| ConsumerRecordsRecordsInstrumentation              |         554,368 |               0 |
| ApmSpanBuilderInstrumentation$CreateSpanInstrumentation |         552,331 |               0 |
| GrailsTransactionNameInstrumentation               |         550,491 |               0 |
| AbstractSpanInstrumentation$SetTypesInstrumentation |         545,883 |               0 |
| AbstractSpanInstrumentation$AddBooleanLabelInstrumentation |         543,496 |               0 |
| ApmSpanInstrumentation$FinishInstrumentation       |         541,526 |               0 |
| AbstractSpanInstrumentation$InjectTraceHeadersInstrumentation |         540,314 |               0 |
| AbstractSpanInstrumentation$SetTypeInstrumentation |         540,339 |               0 |
| JsfLifecycleInstrumentation$JsfLifecycleRenderInstrumentation |         537,187 |               0 |
| OkHttpClientAsyncInstrumentation                   |         536,681 |               0 |
| ScheduledTransactionNameInstrumentation            |         536,346 |               0 |
| TransactionInstrumentation$SetUserInstrumentation  |         535,126 |               0 |
| ServerCallHandlerInstrumentation                   |         531,013 |               0 |
| AsyncInstrumentation$StartAsyncInstrumentation     |         530,849 |               0 |
| AbstractSpanInstrumentation$DoCreateSpanInstrumentation |         527,577 |               0 |
| AbstractSpanInstrumentation$EndWithTimestampInstrumentation |         526,343 |               0 |
| LegacySpanInstrumentation$EndInstrumentation       |         524,384 |               0 |
| Lettuce5StopSpanInstrumentation$OnCompleteExceptionally |         521,690 |               0 |
| ElasticApmApiInstrumentation$CurrentTransactionInstrumentation |         516,350 |               0 |
| TransactionInstrumentation$EnsureParentIdInstrumentation |         515,825 |               0 |
| ElasticApmApiInstrumentation$CurrentSpanInstrumentation |         509,526 |               0 |
| AbstractSpanInstrumentation$GetTraceIdInstrumentation |         508,417 |               0 |
| LegacySpanInstrumentation$AddTagInstrumentation    |         502,330 |               0 |
| RequestStreamRecordingInstrumentation              |         493,444 |               0 |
| ApiScopeInstrumentation                            |         493,592 |               0 |
| SpanContextInstrumentation$ToTraceIdInstrumentation |         492,212 |               0 |
| ClientCallImplInstrumentation$Start                |         490,793 |               0 |
| AbstractSpanInstrumentation$AddStringLabelInstrumentation |         485,938 |               0 |
| ChannelInstrumentation                             |         485,603 |               0 |
| LegacySpanInstrumentation$DoCreateSpanInstrumentation |         485,232 |               0 |
| AbstractSpanInstrumentation$AddNumberLabelInstrumentation |         485,150 |               0 |
| AbstractSpanInstrumentation$ActivateInstrumentation |         482,522 |               0 |
| OkHttp3ClientInstrumentation                       |         478,937 |               0 |
| ApmSpanInstrumentation$TagInstrumentation          |         473,189 |               0 |
| ApmSpanInstrumentation$SetOperationName            |         470,717 |               0 |
| ElasticApmApiInstrumentation$CaptureExceptionInstrumentation |         464,409 |               0 |
| ApmScopeInstrumentation                            |         464,017 |               0 |
| ElasticApmTracerInstrumentation                    |         453,988 |               0 |
| AbstractSpanInstrumentation$SetStartTimestampInstrumentation |         444,723 |               0 |
| ConsumerRecordsRecordListInstrumentation           |         442,044 |               0 |
| AbstractSpanInstrumentation$IsSampledInstrumentation |         439,435 |               0 |
| TransactionInstrumentation$AddCustomContextInstrumentation |         431,155 |               0 |

2020-12-21 23:50:12,444 [elastic-apm-circuit-breaker] INFO  co.elastic.apm.agent.impl.circuitbreaker.CircuitBreaker - Stopping the Circuit Breaker thread.

@eyalkoren
Copy link
Contributor Author

Well, what can I say - you use the same JDK and apply the same instrumentations to the same bytecode...
You seem to have dumped the bytecode to /home/rafael/dump. Can you compare the bytecode you get to the one I provided?

One last thing to check before we decide it is rare enough to keep on digging - our test, where this is reproducible, attaches the agent remotely whereas you attach it in the command line. Maybe it is not the bytecode, but something else with regards to the transformation. If possible, please try to do a longer sleep and attach it remotely, hopefully this will reproduce the issue. If it still doesn't and the bytecode you get is the same, let's drop this.

Thanks for all your efforts in trying to sort this out!

@raphw
Copy link
Owner

raphw commented Dec 22, 2020

I have it reproduced using a dynamic attachment and will be looking into it.

@raphw
Copy link
Owner

raphw commented Dec 22, 2020

So far I have validated: the class files' transformation results is identical for both the dynamic and static transformations yield the exact same result such that the only conclusion can be that the JVM detects an incompatible change in one of the class files. This is normally a modifier change or an added, removed method which I cannot detect. So far I could also validate that this has nothing to do with the ldc_w instruction (which ASM dissolves implicitly when passing things through its visitor) or with the class file version update.

@raphw
Copy link
Owner

raphw commented Dec 22, 2020

The bootstrap methods seem to trip off the verifier which is likely a bug in the verifier. The class file is strange enough (the field references are missing in the original class file, apparently this is a class file dialect that is legal but so uncommon that even I have never seen it), and I assume the bug is related to this.

If it's not a big problem, I would let it slide. I don't think this is something to be seen a lot.

@eyalkoren
Copy link
Contributor Author

Yeah, I believe it is good enough as long as it is restricted to this class. The fact is that a later version of this class did not cause the issue.
Closing this issue. Thanks a lot for your investigation!
Do you think it worth opening an OpenJDK bug for this?

@raphw
Copy link
Owner

raphw commented Dec 23, 2020

I'd say it's worth looking into, especially since you can provide a reproduction. But I expect they'll say that the class file upgrade is unintended use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants