Starting in FusionReactor 5.1.4, we have made two enhancements to the Stack Trace functionality, which is used to by Protection email when generating email notifications, if you're using a Protection mode "with Email Notification."
This functionality is used to generate a 'picture' of the threads running on the system, helpful in troubleshooting issues.
The cost (in CPU terms) of obtaining this trace is not insignificant. When asked for a trace, the JVM examines its thread stack structures in memory, and translates them into human-readable forms. This takes time, and this can become significant on systems with a large number of threads.
Starting in FusionReactor 5.1.4, we have refined how often this is done, as well as the overall efficiency of the collection of the trace.
You should see a radical improvement in performance with Protection (any mode) enabled.
Starting in FusionReactor 5.2.0, in addition to the improvement seen in 5.1.4, you can now also control which threads are traced in a much finer way:
- You can turn off tracing altogether. This removes the CPU-cost of generating thread traces altogether. The generated email won't contain the trace.
- You can only trace threads currently processing Web Request (and other transactions). This will limit the collector to only operate on active threads: all other threads (e.g. JDBC pool managers, skimmers, timers, etc.) won't be traced.
- You can leave trace all threads (the current behavior). This is the most costly option in terms of CPU time required, but provides the most comprehensive picture. You might enable this if you suspect a deadlock, for instance.
This new option can be changed in Protection > Settings > Email Settings.
|Last Updated:||08/Jul/14 11:05 AM|