Perhaps I should point out in the article that the filter with the current implementation works correctly for blocking resource endpoints (on executor-thread) but not for Uni endpoints (on vert.x-eventloop-thread), and in fact, in this case, it doesn't trace the request body.
Following is the evidence in the logs.
2026-04-14 16:55:30,542 INFO [com.example.filter.RequestAuditFilter] (executor-thread-2) AUDIT LOG:
{
"item" : "Laptop",
"price" : 1000
}
2026-04-14 16:55:30,544 INFO [com.example.filter.TraceIdFilter] (executor-thread-1) TraceIdFilter LOG: ec31b406-3f21-4be4-ab2b-004f263dfd63
2026-04-14 16:55:37,881 INFO [com.example.filter.TraceIdFilter] (vert.x-eventloop-thread-0) TraceIdFilter LOG: 9766e7f1-5008-4fc7-bd9e-e9c840b02063
A while ago I created a similar project that used JAX-RS filters for request and response tracking, adding the X-Correlation-ID header, using the Quarkus eventBus to then decide where to store the requests. The project on GitHub https://github.com/amusarra/eventbus-logging-filter-jaxrs
Hi Markus.
Perhaps I should point out in the article that the filter with the current implementation works correctly for blocking resource endpoints (on executor-thread) but not for Uni endpoints (on vert.x-eventloop-thread), and in fact, in this case, it doesn't trace the request body.
Following is the evidence in the logs.
2026-04-14 16:55:30,542 INFO [com.example.filter.RequestAuditFilter] (executor-thread-2) AUDIT LOG:
{
"item" : "Laptop",
"price" : 1000
}
2026-04-14 16:55:30,544 INFO [com.example.filter.TraceIdFilter] (executor-thread-1) TraceIdFilter LOG: ec31b406-3f21-4be4-ab2b-004f263dfd63
2026-04-14 16:55:37,881 INFO [com.example.filter.TraceIdFilter] (vert.x-eventloop-thread-0) TraceIdFilter LOG: 9766e7f1-5008-4fc7-bd9e-e9c840b02063
Yep. Thankfully there’s your amazing open source project to cover that. I can’t really cover all angles in these should articles.
Thanks for your reply and appreciation of my Open Source project which addresses the topic to be production-ready.
A while ago I created a similar project that used JAX-RS filters for request and response tracking, adding the X-Correlation-ID header, using the Quarkus eventBus to then decide where to store the requests. The project on GitHub https://github.com/amusarra/eventbus-logging-filter-jaxrs