Help for Foxhound Beta 1.08.3243a

Table of Contents    [RisingRoad]


3. The Monitor Database Page

The Monitor Database page shows current server and database-level performance statistics for the target database, as well as information about current connections.

3.1 The Monitor Database Menu

3.2 The Monitor Control Panel

3.3 The Monitor Status Area

3.4 Most Recent Sample

3.5 Peaks

3.6 Recent Samples

3.7 Blocked Connections

3.8 Connections


3.1 The Monitor Database Menu    [Top]

The « Back to Menu link displays the main "Foxhound for SQL Anywhere" menu page in the current browser window or tab.

The DSN: / Connection String: title shows the name of the DSN or Connection String that you used to connect to the target database. This identifies the "current target database", a term used in this Help.

The History link opens the History page in a new browser window or tab.

The Schema link opens the Display Schema page in a new browser window or tab.

The New Menu link opens the main "Foxhound for SQL Anywhere" menu page in a new browser window or tab.

The Foxhound Options link opens the Foxhound Options page in a new browser window or tab.

The link is a context-sensitive link to this Help topic.

The About link opens the About Foxhound page in a new browser window or tab.

The button hides this Help frame from view, and brings it back.


3.2 The Monitor Control Panel    [Top]

The Display: status shows whether or not this page is being refreshed every 10 seconds.

The button stops the Monitor page from being refreshed every 10 seconds, and the button starts it again. Neither button affects the background sampling process one way or the other. For example, if the sampling session is running and you press Pause Display and later press Run Display, the displayed data "catches up" with the most recent sample.

The button immediately updates the information displayed on this page without waiting for the regular refresh. If the display is paused but the sampling session is running, you can press Refresh Display to show the most recent sample without restarting the automatic refresh process.

The (number) in parentheses after the Refresh Display button tells you how many times this page has been refreshed.

The Sampling: status shows whether or not the sampling session is running in the background.

The button lets you stop the sampling session. This doesn't delete the session, it just suspends the sampling process.

The button may appear instead of Stop Sampling. The Cancel Request button lets you stop further attempts to start or re-start the sampling session. If Foxhound can't connect to the target database, it will keep trying forever, unless you press Cancel Request or the connection timeout period is exceeded. See the Foxhound Options page for more information on connection timeouts.

The button tells Foxhound to try to start the sampling session.

The button immediately and permanently deletes Foxhound's current record of peak sample values for this target database, causing the Peaks since section to disappear. The recording of peak values will automatically restart with the next successful sample, and the Peaks since section will reappear. The Reset Peaks button has no effect on the sample data itself, just the record of peak values.

Note: The phrase "permanently deletes" means there is no "cancel" or "undo" facility. It doesn't mean you can't ever see peaks again; in fact, new values usually reappear with the next refresh.


3.3 The Monitor Status Area    [Top]

The two-line date/time at the left tells you when this page was displayed.

The Status: message tells you whether the sampling process is running OK, or some other condition has been detected.

Server version: tells you what version of SQL Anywhere software is being used to run the target database.

Database file version: tells you what version of SQL Anywhere software was used to create the target database.

Using n CPUs / Was using n CPUs tells you how many CPUs are being used to run the target database.

The Running for / Was running for field tells you how long the target server has been running. For example, 32d 7h 38m 23s means "32 days, 7 hours, 38 minutes and 23 seconds".

The Started at date/time tells you when the target server was started.

SPs OK: YYY, NNN or some combination of Ys and Ns indicates whether or not Foxhound has deployed, and is using, these three stored procedure on the target database: rroad_connection_properties, rroad_database_properties and rroad_engine_properties.

The Database file: field is the full file specification for the target database.


3.4 Most Recent Sample    [Top]

The Most Recent Sample section shows the most recent successful sample, if there is one. A "successful sample" is one that actually shows performance data rather than a message like "Database server not found".

The Most Recent Sample section consists of 5 or 6 lines:

The rest of the color highlighting in this section is controlled by values in the Peaks section below it, as follows:

The Most Recent Sample column shows the date/time that Foxhound recorded the most recent successful sample.

The Interval column shows the actual time interval between the previous sample and this one. Foxhound tries to record a new sample every 10 seconds but the actual interval can vary. A very long interval like 1h 19m 48s may indicate the computer was in standby mode.

Heartbeat, Sample Times:

The Conns column shows how many connections existed, with Foxhound itself counting as 1. This number is based on the ConnCount property.

The Executing, Idle, Waiting Conns columns show how many connections were executing, idle or waiting. These numbers are based on the ReqStatus and RequestTiming properties.

The Req column shows how many times the server has started processing a new request or resumed processing an existing request, during the preceding interval (+nnn) and since the target server was started. This number is based on the Req property.

Active Req, Max Req, Waiting Req:

These numbers are based on the ActiveReq, MultiProgrammingLevel, Threads and UnschReq properties.

Locks Held, Conns Blocked:

These numbers are based on the LockCount and BlockedOn properties.

The CPU Time column shows three values:

These numbers are based on the following properties: NumLogicalProcessorsUsed, NumProcessorsAvail, NumProcessorsMax and ProcessCPU.

The Temp File column shows the total amount of temporary file space used by all the connections. It is based on the PageSize and TempFilePages properties.

Cache Panics, Low Memory, Satisfaction:

These numbers are based on the CacheHits, CachePanics, CacheRead and QueryLowMemoryStrategy properties.

The Active I/Os column shows the number of file I/O requests that had not yet been completed. It is based on the CurrIO property.

Checkpoint, Recovery Urgency:

These numbers are based on the CheckpointUrgency and RecoveryUrgency properties, and they are used by the target server to help decide when to take a checkpoint. They both increase monotonically until a checkpoint is taken, then drop to zero.

Checkpoints, Commits, Rollbacks:

These numbers are based on the Chkpt, Commit and Rlbk properties.

The DB File Frags column is the number of file fragments in the SYSTEM dbspace file. It is based on the DBFileFragments property.

Disk Reads, Writes:

These numbers are based on the DiskRead and DiskWrite properties.

The Log Writes column shows the number of pages that have been written to the transaction log, in the previous interval (top number +nn) and since the server started (nn). This is based on the LogWrite property.

Index Adds, Lookups, Satisfaction:

These numbers are based on the IndAdd, IndLookup and FullCompare properties.

Full Index Comps shows how many times additional information had to be obtained from the table data in order to satisfy an index lookup, in the previous interval (top number +nn) and since the server started (nn). This number is based on the FullCompare property.

Bytes In / Out:

These numbers are based on the BytesReceived and BytesSent properties.


3.5 Peaks    [Top]

The Peaks section consists of a single line of peak values, where "peak" means "largest" for most values, and "smallest" for the Cache Satisfaction and Index Satisfaction percentages.

You can click on an individual peak value to open the History page in a separate browser window or tab, scrolled to the sample holding that peak value. If a peak isn't shown as a hyperlink, the corresponding sample data has been deleted by the background purge process. See the Foxhound Options page for more information on purging sample data.

Some peak values are displayed as rates (e.g., bytes per second nn/s) rather than counts or amounts like nnk. The reason for this is that the interval between samples can vary, and a true comparison of "larger versus smaller" should take that into account. For example, a server that sent Bytes Out of 5M in an 8 second interval was actually busier than one that sent 6M in a 12 second interval (as far as Bytes Out was concerned).

Peak values are used to control almost all of the color highlighting in the other sections (Most Recent Sample and Recent Samples) above and below the Peaks section, as follows:

The Peaks since timestamp identifies the earliest sample that was used to compute peak values.

The Heartbeat, Sample Times peaks

The Conns peak shows the largest number of connections that existed. This number is based on the ConnCount property.

The Executing, Idle, Waiting Conns peaks show the largest numbers of connections that were executing, idle or waiting. These numbers are based on the ReqStatus and RequestTiming properties.

The Req peak shows highest rate at which the server started processing a new request or resumed processing an existing request. This number based on the Req property.

Active Req, Max Req, Waiting Req peaks:

These numbers are based on the ActiveReq, MultiProgrammingLevel, Threads and UnschReq properties.

Locks Held, Conns Blocked peaks:

These numbers are based on the LockCount and BlockedOn properties.

The CPU Time peak shows the largest percentage of CPU time used during a single interval. This number is based on the following properties: NumLogicalProcessorsUsed, NumProcessorsAvail, NumProcessorsMax and ProcessCPU.

The Temp File peak shows the largest amount of temporary file space used by all the connections. It is based on the PageSize and TempFilePages properties.

Cache Panics, Low Memory, Satisfaction peaks:

These numbers are based on the CacheHits, CachePanics, CacheRead and QueryLowMemoryStrategy properties.

The Active I/Os peak shows the highest number of file I/O requests that had not yet been completed. It is based on the CurrIO property.

Checkpoint, Recovery Urgency peaks:

These numbers are based on the CheckpointUrgency and RecoveryUrgency properties.

Checkpoints, Commits, Rollbacks peaks:

These numbers are based on the Chkpt, Commit and Rlbk properties.

The DB File Frags peak is the largest number of file fragments in the SYSTEM dbspace file. It is based on the DBFileFragments property.

Disk Reads, Writes peaks:

These numbers are based on the DiskRead and DiskWrite properties.

The Log Writes peak shows the highest rate at which pages that have been written to the transaction log. This is based on the LogWrite property.

Index Adds, Lookups, Satisfaction peaks:

These numbers are based on the IndAdd, IndLookup and FullCompare properties.

Full Index Comps shows the highest rate at which additional information had to be obtained from the table data in order to satisfy an index lookup. This number is based on the FullCompare property.

Bytes In / Out peaks:

These numbers are based on the BytesReceived and BytesSent properties.


3.6 Recent Samples    [Top]

The Recent Samples section shows the most recent 10 samples, with many of the data values shown as rates instead of counts.

The color highlighting in this section is controlled by values in the Peaks section above it, as follows:

The Recent Samples column shows when the sample was recorded.

The Interval column shows the actual time interval between the previous sample and this one. Foxhound tries to record a new sample every 10 seconds but the actual interval can vary.

Heartbeat, Sample Times:

The Conns column shows how many connections existed, with Foxhound itself counting as 1. This number is based on the ConnCount property.

The Executing, Idle, Waiting Conns columns show how many connections were executing, idle or waiting. These numbers are based on the ReqStatus and RequestTiming properties.

The Req column shows the rate at which the server started processing a new request or resumed processing an existing request during the preceding interval. This number is based on the Req property.

Active Req, Max Req, Waiting Req:

These numbers are based on the ActiveReq, MultiProgrammingLevel, Threads and UnschReq properties.

Locks Held, Conns Blocked:

These numbers are based on the LockCount and BlockedOn properties.

The CPU Time column shows the percentage of CPU time used during the preceding interval. This number is based on the following properties: NumLogicalProcessorsUsed, NumProcessorsAvail, NumProcessorsMax and ProcessCPU.

The Temp File column shows the total amount of temporary file space used by all the connections. It is based on the PageSize and TempFilePages properties.

Cache Panics, Low Memory, Satisfaction:

These numbers are based on the CacheHits, CachePanics, CacheRead and QueryLowMemoryStrategy properties.

The Active I/Os column shows the number of file I/O requests that had not yet been completed. It is based on the CurrIO property.

Checkpoint, Recovery Urgency:

These numbers are based on the CheckpointUrgency and RecoveryUrgency properties, and they are used by the target server to help decide when to take a checkpoint. They both increase monotonically until a checkpoint is taken, then drop to zero.

Checkpoints, Commits, Rollbacks:

These numbers are based on the Chkpt, Commit and Rlbk properties.

The DB File Frags column is the number of file fragments in the SYSTEM dbspace file. It is based on the DBFileFragments property.

Disk Reads, Writes:

These numbers are based on the DiskRead and DiskWrite properties.

The Log Writes column shows the rate at which pages were written to the transaction log in the previous interval. This is based on the LogWrite property.

Index Adds, Lookups, Satisfaction:

These numbers are based on the IndAdd, IndLookup and FullCompare properties.

Bytes In / Out:

These numbers are based on the BytesReceived and BytesSent properties.


3.7 Blocked Connections    [Top]

The Monitor page displays up to 10 blocked connections; to see more switch to the History page.

The Blocked Statement column contains the SQL statement the blocked connection was trying to execute. This column is based on the LastStatement property.

The Waiting Time is the length of time the blocked connection has been waiting for the blocked statement to execute. This number is based on the LastReqTime property.

The Reason... column describes what kinds of locks are causing the block. This value is based on columns returned by sa_locks.

The Locked Row Query... is a SELECT statement you can copy and paste into dbisql to find the row in the target database that is locked. This column is based on the LockName property and the sa_locks.row_identifier column.

The Blocked Connection... columns identify the connection that is blocked by a lock:

These columns are based on the Userid, Number, NodeAddress and Name properties.

The Blocked by... columns identify the connection that is holding the lock causing the block:

These columns are based on the Userid, Number, NodeAddress and Name properties.

The Blocked by Transaction Running Time is the length of time a transaction has been running on the blocking connection. This number is based on the TransactionStartTime property.


3.8 Connections    [Top]

The Monitor page displays up to 100 current connections; to see more switch to the History page.

If you add up the connection-level figures like "Req" you might not get the same number as shown in the server-level "Req" column. That is because the connection-level and server-level statistics are captured at slightly different times, and one value might lag behind the other.

The User Id / Conn # / IP Addr / Conn Name columns identify each connection:

These columns are based on the Userid, Number, NodeAddress and Name properties.

The Req column shows how many times the server has started processing a new request or resumed processing an existing request for this connection since it started. This number is based on the Req property.

The Current Req Status shows whether this connection was Idle, Waiting for thread, Waiting for I/O, Waiting for shared resource, Blocked by lock or Executing. This column is based on the ReqStatus property.

The Blocked by Conn # column shows the connection number of the connection that is blocking this one. This column is based on the BlockedOn property.

The Locks Held, Conns Blocked columns show how many locks are held and how many other connections are blocked by this connection. These columns are based on the LockCount and BlockedOn properties.

The CPU Time column shows how much CPU time has been used by this connection since it started. This number is based on the ApproximateCPUTime property.

Temp File, Rollback Log, Uncommitted:

These numbers are based on the TempFilePages, RollbackLogPages and UncommitOp properties. properties.

Low Memory, Cache Satisfaction:

These numbers are based on the QueryLowMemoryStrategy, CacheHits and CacheRead properties.

Time Connected is the elapsed time since this connection was established. This number is based on the LoginTime property.

The Total Waits, Waiting Time columns show how many times and for how long this connection has been blocked or forced to wait. These numbers are based on the following properties: ReqCountBlockContention, ReqCountBlockIO, ReqCountBlockLock, ReqCountUnscheduled, ReqTimeBlockContention, ReqTimeBlockIO, ReqTimeBlockLock and ReqTimeUnscheduled.

Transaction Running Time is the length of time a transaction has been running on this connection. This number is based on the TransactionStartTime property.

Time Since Last Request is the elapsed time since the last time a request was started for this connection. This number is based on the LastReqTime property.

The Last Statement... column contains last SQL statement this connection was executing. This column is based on the LastStatement property.

Isolation Level shows the current isolation level for this connection. Note that a connection can change the isolation level dynamically, for any particular query and even for part of a query. This column is based on the IsolationLevel property.

Client Requests, Time:

These numbers are based on the RequestsReceived and ReqTimeActive properties.

Total, Current Prepares:

These numbers are based on the Prepares and PrepStmt properties.

Commits, Rollbacks are the total numbers of commit and rollback requests that have been handled by the server for this connection since it started. These numbers are based on the Commit and Rlbk properties.

Disk Reads, Writes

These numbers are based on the DiskRead and DiskWrite properties.

Log Writes is the total number of pages that have been written to the transaction log for this connection since it started. This number is based on the LogWrite property.

Index Adds, Lookups, Satisfaction:

These numbers are based on the IndAdd, IndLookup and FullCompare properties.

Full Index Comps shows how many times additional information had to be obtained from the table data in order to satisfy an index lookup, for this connection since it started. This number is based on the FullCompare property.

Bytes In / Out:

These numbers are based on the BytesReceived and BytesSent properties.

[Top]



























































[Top]