Install & Configure
The idea of installing FusionReactor can be daunting for some administrators. Don’t panic!
Install the JDBC wrapper on all your datasources. We have a handy tool to help you JDBC Wrapper Tool
After configuring the JDBC wrapper, enable the JDBC logging option.
FusionReactor log files are rotated on a file-size basis. If you have a busy server you should increase the file-size of the logs to retain a longer period of data.
Logging can be increased by the number of log files stored OR the size of each log file.
- When you wish to log more data, increase the size of individual log files, not the number of log files stored. This reduces the load required to rotate log files improving performance!
Visit the FusionReactor Support Page for additional User Guides, Knowledge Base Search, Online Forum and more!
Watch requests run – in real time
Using "Running Requests", select "5s" or less from the "Refresh every…" drop down in the top right corner of the page.
Watch the requests coming through and make sure they’re getting processed.
- The oldest and thus longest running request will be at the bottom of page.
Using the magnifying glass icon, view a Java stack trace of the request.
- This tells you exactly what line of code the request is running at that point in time. You can click the refresh button (in the top right) on this page to update the stack trace.
If you refresh the stack trace a few times (maybe 5 or more) and the stack trace does not change, it is likely the request is stuck at that line of code. Review the code. Would you expect the server to be stuck on that line for a long time? (eg Are you waiting for results from a DB call or CFHTTP/webservice request?)
Use the "System Metrics" to identify the problem
Is the problem thread bound?
- Can often be identified by the number of running requests at or close to maximum simultaneous request count
Is the problem DB bound?
- High JDBC Request/sec level (requires knowledge of normal operating levels)
- High avg JDBC time (requires knowledge of normal operating levels)
Is the problem heap memory bound?
- Can be seen in FR graphs as "used memory" very close to "allocated memory" level AND allocated level very close to max level
Is the problem system memory bound?
- Can sometimes be identified through allocated memory NOT close to maximum allowed but "out of memory" errors occur
Application server CPU bound
- High instance CPU level (almost 100% almost all of the time)
Check client variable storage purges
Another process using all the CPU time?
- High system CPU level with low instance CPU level. Another process is taking all the CPU power.
Use "top" (*nix) or "Task Manager" (Windows) to see which process is using the CPU.
Check virus scanner configuration
Could it be time to move to a dedicated DB server?
Logs, logs and more logs
FusionReactor, ColdFusion and the JVM log a lot of information to disk.
FusionReactor
<FusionReactor>/instance/<instance name>/log
ColdFusion
<ColdFusion>/logs
<JRun4>/servers/<instance name>/<instance name>-ear/<instance name>-war\WEB-INF\cfusion\logs
JVM
<ColdFusion>/runtime/logs
<JRun4>/logs
Get familiar with their locations so you know where to look for more detailed error messages when there’s a problem.
Even if you have to restart ColdFusion, you can still review past metrics by looking at the FusionReactor log files.
You can use our new tool FusionAnalytics.
Request history by return code
If a customer calls saying they had an error page, do you know what’s happened? Do you know the details of their request? Could you find the error without any code alterations?
At the bottom of the "System metrics" page you can access the request history by return code. Codes in the 500’s are problems you should investigate.
Know your system!
Continuous server analysis is your best friend when fire-fighting problems.
If you "know" the normal operating trends of your server (Request, DB, Memory, CPU) then you will stand a much better chance of knowing what’s happening.
Request content capture
Having difficulty reproducing an error? Need to be able to see HTTP requests headers, HTTP response headers AND response content?
Enabling Request Content Capture for a short period of time can help speed your diagnosis. (Requests → Request Settings → Request Content Capture)
Enabling this feature can use a lot of disk space very quickly even on a quiet server as every response is stored on the disk.
Flash Remoting (AMF Protocol) Support
Ever wondered what’s being passed in your remote calls?
Enable Flash Remoting Support (Requests → Request Settings → Flash Remoting Support → AMF Decoding) allows FusionReactor to see what methods and parameters are being requested on your server.

