Skip to content

Add vertx-core-4.5.3 AsyncHandlerWrapper instrumentation #1774

@tugcesahin

Description

@tugcesahin

Is your feature request related to a problem? Please describe.

After upgrading Quarkus version from 3.6.8 to 3.8.1 and newrelic-agent and newrelic-api versions from 8.6.0 to 8.9.1, I saw that newrelic-java-agent does not support vertx-core-4.5.3 AsyncHandlerWrapper instrumentation and that causes and started seeing NPE on smallrye health checks. Here the logs:
Message:
Uncaught exception received by Vert.x
stack trace:

java.lang.NullPointerException: Cannot invoke "io.vertx.core.Handler.handle(Object)" because "this.original" is null
	at com.nr.vertx.instrumentation.AsyncHandlerWrapper.handle(AsyncHandlerWrapper.java:32)
	at com.nr.vertx.instrumentation.AsyncHandlerWrapper.handle(AsyncHandlerWrapper.java:14)
	at io.vertx.core.impl.future.FutureImpl$4.onSuccess(FutureImpl.java:176)
	at io.vertx.core.impl.future.FutureBase.lambda$emitSuccess$0(FutureBase.java:60)
	at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:1583)

Feature Description

vertx-core-4.5.3 AsyncHandlerWrapper instrumentation should be added.

Describe Alternatives

A clear and concise description of any alternative solutions or features you've considered. Are there examples you could link us to?

Additional context

Add any other context here.

Priority

Please help us better understand this feature request by choosing a priority from the following options:
Must Have

Metadata

Metadata

Assignees

Labels

3Story Point Estimateapr-jun qtrRepresents proposed work item for the Apr-Jun quarterfeature requestSuggestion for a new product enhancement or change

Type

No type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions