At the heart of FusionAnalytics is the wealth of information gathered and transferred from FusionReactor. This instrumentation includes requests, SQL statements, response times, CPU and memory information, as well as URL parameters, Heap memory usage and JMX statistics. FusionAnalytics takes all of this information and builds a series of combined visual perspectives, allowing you to visualize all transactions, SQL queries, data transfer, server events etc. taking place over time, so you can build a complete historical view of what happened on your server. This data is essential to support investigative analysis, continuous server analysis and application improvement. With over 80 different analytic views and reports, FusionAnalytics gives you unlimited insight into exactly what's happening on your server.
FusionAnalytics Perspectives – The World of Deep Server Analysis
Server Perspective
Overview
Default perspective, which provides instant insight into server utilization (highlights last 3 hours of server activity)
- Breakdown server utilization by hostname (per project/customer/language)
- Total Response Size
- Average Execution Time - per site
- Total Execution Time
FR System Metrics
Shows a combined view of 6 graphs, including Request Load, Request Time, JDBC Load, JDBC Request Time, Memory Demand, and CPU.
FusionAnalytics DataCollector (FADC)
FADC is responsible for gathering information, transforming it, and writing it to the FusionAnalytics database. The DataCollector provides fine-grained control over what raw information is loaded, and how it is transformed. It is also responsible for aggregating data to speed up analytics queries.
FusionAnalytics DataServices (FADS)
FADS hosts Analytics Applications, supplying services like caching, persistent storage, database connections and reporting. The DataServer is responsible for communicating with the AIR Desktop, answering queries for analytical information, and managing authentication and sessions.
Request Detail
Shows all the details of the actual request, including URL, Start/Finish time, Status code, execution time, thread-ID, request method, memory metrics (at time of execution) etc.
Request Perspectives
Most Popular Requests
See a full breakdown of all the URL's which have been requested during the selected time period. A pie chart indicates percentage wise, which is the most popular.
Request Detail – Request DB Details
Shows all of the details of the selected request. This information is broken down into different tabbed views, containing the Request details and various DB Request details.
In this view, we see a complete breakdown of ALL the select statements which are contained within one single request thread.
Bell Curve of Request Performance
The request bell curve shows the Normal Distribution curve of request performance for the selected requests in the current TimeLine. Changing the zoom granularity i.e. showing fewer requests will cause the bell curve to be immediately recalculated, showing the normal distribution for the currently 'visible' requests.
Longest Request Execution Time
Using this view we can categorize server usage per URL. Finding a slow-running page or most frequently requested page is not enough. Only by taking into account both average execution time and page view count can a picture of total resource usage is built up. Detailed analysis can then be performed to identify key locations for optimization. For example, drilling into a request to the most resource intensive URL (easily found through the right-button menu) reveals outline details such as start time and stream metrics like client download speed.
Highest DB Row Count by Request
Use this view to determine how many rows are being returned by a request. This is critical in performance tuning request & bandwidth, so as to not return more rows than necessary.
Time-Line of Requests
Request time-line view gives an amazing visualization of all requests running across time. It can be used to identify bottlenecks e.g. it can identify whether additional requests (and/or DB queries) are running at the same time to help you identify DB dead-lock issues.
If you mouse over a request, then you will see all the details of that request.
Request Status Code
Use the Request Status code perspective so perform break-down analysis by finding all the pages that result (say) in a HTTP 500 (error) status code.
Database Perspectives
DB Request Grid
This perspective shows a breakdown of all the requests which have taken place over the selected time period. Details include, time when the query ran, SQL query string, rows returned, DB Execution time etc.
DB Request Details
See the spread of DB queries over the lifetime of a request. Exceptions and other details are automatically highlighted when placing the mouse on a section of the graph
Request Breakdown
Request breakdown view then shows us where the request time is being spent. In this view 27% is being spent in query execution time.
DB Breakdown
From within a request, you can select the DB Breakdown tab, which shows us where the DB time is being spent on a query by query basis. Mousing over a segment of the pie chart will reveal the actual SQL statement being called.
Memory & CPU Perspectives
Process and System CPU Usage
Graph indicates the percentage of CPU being used by the process (across time).
Memory Highest Usage
Determine at what point the system used the maximum amount of memory. For each point, FusionAnalytics also shows how much Process CPU and System CPU was being used.
Log & Events
Crash Protection
Crash protection events, show the date and time, along with the crash protection Type and notification entry for CP events coming from FusionReactor.
Annotations
Annotations are configurable text elements which are extracted from the log files. When a log string includes the word ERROR, then this line is extracted out of the log and an entry (along with a time stamp) will be made in the annotations file. This makes it possible to very quickly get an overview of specific issues which have occurred, without going through the complete log file.







