Contents

Threads in FioranoMQ server, corresponding to each JMS client connection, will be monitored and if they take more than the configured socket time-out value to finish any request from the client application such as produce/consume message, create JMS objects etc, each server thread's stack traces will be dumped which in turn can be used to analyse the reason for time-outs. The parameters related to this feature, which are configurable, are explained as below:
 

    1. EnableThreadDumpMonitoring: Enables the thread dump timer to monitor client connection threads and in case if client request takes more than the socket time-out value before response, threads' stack trace will be dumped in the server log using 'Fiorano.FMQ.Services.ThreadManager' logger at warn level.

      • Type: boolean 
      • Default value: false
         
    2. ThreadDumpTimerMonitorInterval: Threads related to client connections will be monitored in an interval denoted by ThreadDumpTimerMonitorInterval (in millis) if EnableThreadDumpMonitoring is set to 'true'. This value should be greater than 3 milliseconds.

      • Type: long
      • Default value: 2000 milliseconds.
         
    3. ThreadExecutionTimeThreshold: This parameter denotes the threshold on client request execution time. Once this threshold is reached, thread dump timer, if enabled, will dump threads' stacktrace which can be used for analyzing client socket timeout issues. This parameter increases the probability of capturing the threads' stacktrace before the client actually times out.

      • Type: double
      • Default value: 0.9

 

Example

Icon

enableThreadDumpMonitoring = true
threadExecutionTimeThreshold = 0.9
socket timeout of client = 4000 milliseconds

If the client thread takes more than (0.9 * 4000) = 3600 milliseconds to execute any request, then all the threads' stacktrace will be dumped in server.log

Adaptavist ThemeBuilder EngineAtlassian Confluence