Foxhound 1.2 FAQ
Loading
Foxhound 1.2 FAQ Home      Foxhound Home      RisingRoad           Breck.Carter@gmail.com     


Question: Why is Alert #27 - Connection CPU issued when the overall server CPU Time is lower than the Alert 27 threshold?

Answer:

Here is an example of an Alert #27 (Connection CPU) that was displayed when the overall server CPU Time was only 7.2%:

May 13 1:51:54 PM  Alert #27: The approximate CPU time has reached 25% of elapsed time or more for at least one connection during 10 or more recent samples.

Here's the explanation:

  • There were 4 CPUs in use, and Foxhound calculates the overall server CPU Time figure of 7.2% as the fraction of the total CPU capacity available. If only 1 CPU had been used then (all other things being equal) the overall server CPU Time would have been 4 * 7.2 = 28.8%.

  • The "approximate CPU time" referred to in Alert #27 is not the overall server CPU Time, it is the CPU time spent at a connection level.

  • The Alert #27 threshold of 25% is calculated as a fraction of the clock-on-the-wall time, not the total CPU capacity available. It is possible for this number to exceed 100% for two reasons: measurement errors (that's why it is called "approximate"), and intra-query parallelism (where SQL Anywhere uses two or more CPUs to process a single query).

  • It is not necessary for a single connection to exceed the Alert #27 threshold during 10 or more recent samples, it is only necessary for at least one connection to do so during each of the samples. In other words, the heavy CPU usage may be alternating among two or more connections.


This page was last updated on November 14, 2011. Foxhound 1.2 FAQ Home      Foxhound Home      RisingRoad      Breck.Carter@gmail.com