Asynchronous Transactions

FusionReactor: Use it every day to solve knotty problems or help guide tuning efforts
Maven Surefire Stack Trace Problem

FusionReactor is able to track asynchronous requests made with several different libraries, examples of which include:

 

  • Redisson
  • MongoDB
  • Kafka Java Clients
  • OkHttp
  • Apache HttpClient

How FusionReactor Displays this Information

The response to the asynchronous request is tracked with ‘Callback’ as the subflavour. This is attached as a linked transaction (indicated by the small linked chain icon) and can be viewed by clicking the drop down arrow on the request transaction. The callback transaction is also posted to the history list as a Root Transaction.

Some important things to note with asynchronous transactions:

 

  • The callback may be attached to the request after the request has already finished
  • The callback is usually tracked on a different thread than the request
  • The actual time taken to perform the request is tracked on the response

Asynchronous Transactions, FusionReactor

An example of asynchronous transactions in FusionReactor. This is a Redis GET command using the Redisson Java Client, triggered by a WebRequest to a JSP file.