Foxhound now supports target databases that use SQL Anywhere 16, as well as target databases running in an OnDemand 1.0 cloud environment.
The new Connection History
page shows the performance of a single connection over time.
The Connection History page is available for target databases running on SQL Anywhere 9 and later.
It shows the same data as the connection section of the Sample History page,
except it shows only one connection instead of many, and multiple samples instead of only one sample per connection.
The Monitor and Sample History pages are now simpler and easier to read because all the information
about a blocked connection is now found in one place.
All except for one column, that is: the Blocked by Transaction Running Time (the Transaction Running
Time of the other connection) was removed because was easily confused with the Transaction Running Time
of the blocked connection.
The Blocked by Transaction Running Time can be determined by looking at the details for that other
connection, which can be displayed by clicking on the Blocked By: link.
2. New Features
The new Change Target Settings
page lets you set RememberLastPlan, RememberLastStatement and RequestTiming.
The new Change Target Settings popup window lets you change target server options on the fly,
to control the level of detail available for Foxhound to display: RememberLastPlan, RememberLastStatement and RequestTiming.
You can open this popup via links on the Monitor, Sample History and Monitor Options pages.
The Monitor and Sample History pages have been enhanced to display the machine or host name used for the target database,
as well as the SQL Anywhere server and database names.
These fields have been added as part of the support for OnDemand 1.0 environments where it's important to
know which target database is which when there are many hundreds spread across different servers and hosts.
The Alert email subject has been simplified and expanded:
Alert #n title - "name / machine / server / database"
The first line in the email body now looks like this:
Foxhound Alert #n went into effect for database "name(id) / machine / server / database" at yyyy-mm-dd hh:nn:ss:
The new OS User
column has been added to help identify connections: Conn #, ID, OS User, IP, Name.
Many applications use the same database user id (ID) for all connections so it's hard to tell who's doing what.
The new OS User column has been added to help with that.
The new Busy, Wait, Idle
columns have been added for each connection.
The cumulative Busy, Wait, Idle percentage columns have been added to the Monitor and Sample History pages to show how each connection has spent the time since it was established:
Busy is the percentage of time the connection was busy processing requests,
Wait is the percentage of time the connection was waiting for
atomic access to a resource,
I/O to complete
a lock to be acquired, and/or
the server to process requests.
Idle is the percentage of time the connection was neither busy nor waiting.
The Parent, Child Conns column set show the numbers of parent and child (internal) connections to target databases running on SQL Anywhere 12 or later.
Child Conns is a new column, and a separate entry has been added to the peaks row.
The new total Waiting Time
column has been added to the Foxhound Monitor.
A new Waiting Time column has been added to the Locks Held, Conns Blocked, Waiting Time column set in the sample section of the Monitor and Sample History pages.
It contains the total time all current connections were blocked or forced to wait during the previous interval.
The new Waiting Time column is calculated from the existing Waiting Time column in the connection section,
but rather than show the cumulative waiting time since the connections started, the new Waiting Time column
shows the total time spent waiting during the previous sample interval.
Waiting Time is a new column, and a separate entry has been added to the peaks row.
The new Last Plan Text
column has been added to the connection section.
The Last Plan Text line has been added to the connection section of the Monitor and Sample History display pages,
and to the new Connection History page.
The "Favorable? xxx" field on the Monitor and Sample History pages shows whether or not the target server is gathering extra diagnostic data that Foxhound can display.
The "xxx" string is made up of Y, N and/or - characters, where - means "unknown". The three characters correspond to these target server settings:
RememberLastPlan, RememberLastStatement and RequestTiming.
The "Favorable?" field is also a link that lets you open the new Change Target Settings popup window.
You can now specify Purge after [xx] day(s)
instead of being limited to 1 day, 1 week, 1 month or 1 year.
The Purge section of the Foxhound Options page now gives you complete freedom in setting the thresholds for deleting data.
Purge all sample data enabled: [x] after [xx] day(s)
Purge uninteresting connection data enabled: [x] after [xx] day(s)
The Monitor and Sample History page now display the Purge field to let you know how soon your data's going to be deleted.
CPU Time calculations
have been improved for connections using intra-query parallelism.
The CPU Time is no longer displayed as zero for a connection making heavy use of intra-query parallelism.
When a connection makes use of the intra-query parallelism feature, it spawns a number of internal child connections which do most of the work;
e.g., one INT: EXCHANGE child connection for each available processor.
SQL Anywhere tends to report the total CPU time used by all the child connections as the ApproximateCPUTime value for each child connection in use,
and almost none for the parent connection. This inflates the amount of CPU time used by each child connection without reporting any CPU usage
by the parent connection.
In an attempt to make sense of this behavior, Foxhound now calculates the average non-zero ApproximateCPUTime for the child connections
and reports it as as the CPU time for the parent connection.
The inflated values reported by SQL Anywhere for each child connection are still shown by Foxhound; only the parent connection CPU time is adjusted.
One consequence of this improvement is that AutoDrop #5 CPU Usage now works on parent connections using intra-query parallelism whereas before it did not.
Note that the AutoDrop process is never performed on a child connection or any other internal connection that isn't directly associated with a client application.
The separate Req, Commits and Bytes In/Out columns have been gathered into the new connection-level
Volume... Req, Commits, Bytes columns.
The new Connection Id String
can be used to uniquely identify connections in adhoc queries; e.g., '1-1-20140504073924-692'.
A new emergency patch process is built in to Foxhound for fixing bugs without running a full upgrade.
An "Emergency Patch" process has been built into Foxhound whereby SQL patch scripts may be
provided in the future and automatically applied to the Foxhound database at startup time.
Alert #30. Database read-only. The target database has changed from accepting updates to read-only processing.
Alert #31. Database updatable. The target database has changed from read-only processing to accepting updates.
Alert #32. Rollback log usage. The total rollback log space used by all connections has been 1G or larger for 10 or more recent samples.
Alert #33. Uncommitted operations. The total number of uncommitted operations for all connections has reached 1,000,000 or more during 10 or more recent samples.
Alert #34. Long uncommitted. The number of uncommitted operations has reached 10 or more while the transaction running time has reached 1m or more for at least one connection.
Alert #12 HA mode change has been removed and replaced by Alert #30 and #31 for the following reasons:
An Alert #12 was issued for non-HA databases when they are restarted with dbsrv16 -r for read-only operations,
an Alert #12 all-clear never appeared for a non-HA database, and
an Alert #12 appeared exactly once for a non-HA database when it changed from updatable to read-only.
For a new installation of Foxhound 3, the five new Alerts are all enabled by default.
For an upgrade from an existing installation of Foxhound 2 or earlier, the new Alerts are disabled
on the Monitor Options page for all existing target databases (to avoid surprises) as well as the "Default Settings",
but they are enabled in the "Factory Settings" and "Extreme Settings".
After an upgrade
if you want to enable the new Alerts for an existing target database, you will have to use the Monitor Options page to set that up, and
if you want to enable the new Alerts by default for new target databases, you will have to use the Monitor Options page to modify the "Default Settings".
The new DB File and Used
columns have been added to the Foxhound Monitor.
Foxhound now keeps track of the amount of disk space allocated to the SYSTEM DBSPACE (the DB File column) and the percentage of that space used to store data (the Used column).
The new Hide Details and Show Details
buttons let you reduce scrolling on the Sample History and Connection History pages.
Buttons have been added to the connection section of the Sample History page as well as the Connection History page
to hide and show the following lines for each connection:
AutoDrop Result:
Blocked By:
Block Reason:
Locked Row Query:
Last Statement:
Last Plan Text:
The new Show More and Show Less
buttons let you expand and contract the Last Statement and Last Plan Text connection data.
Buttons have been added to the Last Statement and Last Plan Text connection-level fields to Show More and Show Less of the data:
The display starts off in "space saving" mode:
Last Statement: Show More select "COUNT_BIG"() from "SYSCOLUMN" as "A" cross join "SYSCOLUMN" as "B" cross join "...
Last Plan Text: Show More ( Plan ( SingleRowGroupBy ( Exchange [ 8 ] ( SingleRowGroupBy ( Nested...
When you Show More all the data is displayed:
Last Statement: Show Less
select "COUNT_BIG"()
from "SYSCOLUMN" as "A"
cross join "SYSCOLUMN" as "B"
cross join "SYSCOLUMN" as "C"
Last Plan Text: Show Less
( Plan
( SingleRowGroupBy
( Exchange [ 8 ]
( SingleRowGroupBy
( NestedLoopsJoin
( NestedLoopsJoin
( ParallelTableScan ( ISYSTABCOL col ) )
( TableScan ( ISYSTABCOL col ) )
)
( TableScan ( ISYSTABCOL col ) )
)
)
)
)
)
Duplicate Foxhound sampling sessions. There is more than one Foxhound connection to this target database.
This can happen when two different Foxhound connection strings are created pointing to the same target database,
or a ODBC DSN is used as well as a Foxhound connection string. This is almost always a mistake, and it can lead to multiple Alert email
messages when the duplicate sampling sessions all detect the same condition; e.g., Alert #1 Database unresponsive.
The Foxhound option to show the Help frame
is turned back on when Foxhound is upgraded, as a reminder that new Help content is available.
Descriptive text has been added to all menu items on the
Monitor Options page.
The Peaks since
timestamp has radically abbreviated to reduce horizontal scrolling.
There's no more "Can't open Message window log file" message when starting Foxhound.
All the desktop shortcuts that start the Foxhound database have been modified to run the dbping.exe utility
before running dbsrv16.exe. If the dbping utility determines that that the Foxhound database is already running,
it doesn't bother running dbsrv16 and skips straight to launching Foxhound in the browser... not only is
the whole process much faster, it eliminates the annoying error message "Can't open Message window log file".
The default connection string for starting the Adhoc Schema database has been
renamed to "Foxhound 3 Adhoc Schema - autostart and connect".
You can select this connection string and click on the Display Schema button to see
all the views and tables that are available for adhoc reporting.
The name has been changed to include "Foxhound 3" to differentiate this
database from earlier versions of Foxhound.
If the current copy of Foxhound was upgraded from Foxhound version 2, the previous
Adhoc Schema connection string was renamed to "old Foxhound 2 Adhoc Schema - autostart and connect"
during the upgrade process.
The handling of the diagnostic text files produced during the Foxhound Post Setup process has been improved.
The Extended Edition of Foxhound no longer limits the number of separate copies of the Foxhound database
that may be created and started using separate instances of SQL Anywhere on the same local network.
This eliminates the previous limit of 1,000 target databases that may be monitored (10 copies of Foxhound x 100 target databases per copy).
Note: Here's what the End User License Agreement has to say...
In the case of the Extended Edition, an unlimited number of copies of the Foxhound database may be created and started using separate instances of SQL Anywhere on the same local network, with the requirement that a separate Extended Edition registration key be purchased for each multiple of 10 copies of Foxhound started.
Some Help topics previously found only in the
Foxhound FAQ have been moved to the Help.
In particular, all links from the Help pages to the FAQ pages have been
eliminated by "bringing home" those topics to the Help.
The Foxhound FAQ exists in one location only (the web at Foxhound 3.0 FAQ),
while the Help exists in three locations:
in the Foxhound database for display in the Foxhound Help frame,
as a separate set of local HTML files for display via All Programs - Foxhound 3 - Help, and
The Cumulative CPU Time and Total Waits columns have been removed from connection-level displays.
These numbers proved to be of little use so they were removed
to make room for other numbers.
However, the property values on which they
were based are still available for adhoc reporting.
The Client Requests, Time columns have been removed from connection-level displays.
The Client Requests column (based on the RequestsReceived property) has been removed from the
connection section of the Monitor and Sample History pages in order to reduce confusion with
the server Req column, and the Time column (based on the ReqTimeActive property) has been removed
because it is not directly related to client requests.
Both property values are still available for adhoc reporting using the sample_connection view, and
the ReqTimeActive property is now used in the calculation of the Busy portion of the new Busy, Wait, Idle columns.
The Total, Current Prepares and Rollbacks columns have been removed from connection-level displays.
These numbers proved to be of little use so they were removed
to make room for other numbers.
However, the property values on which they
were based are still available for adhoc reporting.
The Bytes In / Out columns have been removed from connection-level displays and summarized in
Volume... Req, Commits, Bytes.
Alert #11 was formerly described as HA failover - The high availability target database server has switched over to [server2].
It is now described as ServerName change - The real server name has changed to [server2], possibly because of an HA failover or OnDemand move.
The reason for this change is that it is possible for a target database to be shut down on purpose and
restarted with a different server name without High Availability being involved or a failover occurring.
For example, when a database is running in a volatile OnDemand cloud environment it is quite likely that
it may be moved from one server to another.
The alert description has been changed to stick to the facts, that PROPERTY ( 'ServerName' ) has changed
which may or may not be the result of an HA failover or an OnDemand database move to a different server.
The Waiting Req column has been renamed to
Unsch Req
to reduce confusion with SQL Anywhere documentation.
The Monitor and Sample History pages now show the title "Unsch Req" instead of "Waiting Req" for the columns based on the UnschReq property.
This has been done to reduce confusion between this and other properties which use the word "waiting" in their descriptions...
and to reflect the fact that "unscheduled requests" is common parlance when talking about this property.
The data remains unchanged, only the titles are affected.
Previously, the sort order of the connections section on the Monitor page could be changed
by clicking anywhere on the Last Statement line.
That behavior has now changed so that you must click the "Last Statement" title text
to change the sort order. Clicking on the Last Statement data value has no effect.
The security rules
are different for connecting to SQL Anywhere 16 target databases.
The new role-based security model introduced by SQL Anywhere 16 affects how Foxhound connects to those databases.
For example, the Foxhound connection to a SQL Anywhere 16 target database must use a user id with the MONITOR
system privilege in order to gather information about all the connections to that database.
Without the MONITOR privilege, Foxhound will only be able to display information about its own connection.
The dbsrv16 -ufd restart
option has been added to the desktop shortcuts to keep Foxhound running.
Foxhound is no longer being extensively tested on Windows XP or IE8.
The Rollbacks column has been removed from database-level displays.
This number proved to be of little use so it was removed
to make room for other numbers.
However, the property value on which it
was based is still available for adhoc reporting.
The Throughput... Commits
column has been rounded so rates like 0.099/s are displayed as 0.1/s, because the extra precision was not helpful.
5. Bug Fixes
Support for Snapshot Isolation
has been added, thus eliminating the fatal "Cannot convert 'Snapshot' to a decimal" error.
Previously Foxhound expected the Isolation Level to be a numeric value.
This error has now been fixed.
The "Column '@alert11_actual_current_ServerName' not found" error has been fixed.
After an Alert #11 HA failover (now Servername changed) was issued, an attempt to use the Monitor Options
page resulted in the error message "Column '@alert11_actual_current_ServerName' not found".
When sampling was started for a database running in an OnDemand cloud environment
an invalid Alert #9 was immediately issued: "Arbiter unreachable. The high availability
target database has become disconnected from the arbiter server."
This error has now been fixed.
The ALTER MATERIALIZED VIEW statement has been moved after CREATE INDEX on the
Display Schema page.
Previously an ALTER MATERIALIZED VIEW IMMEDIATE REFRESH statement would be generated ahead of a CREATE UNIQUE INDEX statement,
which is the wrong order for execution.
The email status is no longer displayed as "Email sent, status unknown." before the attempt to send an email is actually made.
The popup tips for several
Alert and
AutoDrop criteria
fields on the Monitor Options page have been changed to "Percent, 1 to 100".
The minimum input value for the AutoDrop #3 Long transaction
duration field on the Monitor Options pages has been changed to 1.0s.
Bad input values entered on the Monitor Options page for integer
Alert and
AutoDrop criteria
fields are now silently changed to the minimum allowed values.
The Foxhound Options - Purge Run
report no longer displays 2 as the number of Orphan/Old Sample Set Rows Deleted when no change is reported in the total number of rows.
The Start Foxhound via Chrome shortcut no longer has trouble finding Chrome.
The No Transaction Log curiosity message
is no longer displayed for read-only databases.
An error message is displayed instead of suppressing the sample when Foxhound
can't call sa_locks()
to diagnose a blocked connection.
The handling of invalid SQL Anywhere property values coming from target databases has been improved.
Heartbeat durations
are no longer rounded upwards; instead, values between .001s and 0.099s are changed to 0.1s to distinguish them from 0s.
Foxhound no longer tries to AutoDrop
the same connection more than once.
A dropped connection may keep running for a while as SQL Anywhere rolls back
its work even though the client application has been disconnected.
For that reason Foxhound will not try to AutoDrop a connection more than once.
The CPOOL=NO connection parameter has been added to the connection string Foxhound uses to
connect to target databases.
This does not affect target databases running on SQL Anywhere 11 or earlier, but it does help prevent problems
when sampling is stopped and restarted on target databases running on SQL Anywhere 12 and later.
Previously Foxhound was unable to read the startup.txt file when started as a service.
This error has now been fixed.
Safe Mode startup
now marks all timed out sampling sessions as no longer timed out, just stopped.
Safe Mode startup is supposed to stop all sampling sessions in such a way the can only be restarted manually.
Previously Foxhound did not clear the timed out status of a stopped sampling session when Foxhound was started in Safe Mode.
That meant when Foxhound was restarted in non-Safe Mode it would automatically restart the timed out sampling session
when the timeout retry period passed, thus defeating one of the reasons for using Safe Mode startup in the first place.
The same three global checkboxes (Enable Emails, Enable Schedules and Enable Autodrop) can be updated
by the user in two different places: the Global Overrides sections of the Foxhound Options and Monitor Options pages.
Previously, switching back and forth (e.g., saving a change on one page and then clicking Save on the other page)
could result in the wrong checkbox value being saved and/or displayed.
Every page has a menu line, even the Foxhound Menu :)
The New Menu link
opens the Foxhound Menu page in a new browser window or tab.
This link appears on every Foxhound page to make it easy to look at multiple databases at the same time.
The Foxhound Options link
opens the Foxhound Options page in a new browser window or tab.
The Monitor Options link
opens the Monitor Options page in a new browser window or tab.
That page lets you enable and disable different alerts,
change the conditions under which alerts are issued
and manage multiple Monitor sessions using a tab-delimited file of connection strings.
The
button is a context-sensitive link to this Help topic.
This button appears in many locations, each of them a link to a different Help topic in this frame.
Tip:
To hide the Help for every new page, see the Show Help section on the Foxhound Options page.
The About link
opens the About Foxhound page in a new browser window or tab.
The AutoStop=NO; AutoStart=NO; ConnectionName=Foxhound-pnnn values override
any values specified inside the DSN. The nnn value will be a number 001, 002, etc.
If you want AutoStop and/or AutoStart processing,
use the String tab to connect instead of the DSN tab.
The User Id: and Password: fields
are optional; you don't need to fill
them in if values are stored in the DSN itself.
Check Include system tables
if you want the Display Schema page to include the
SQL Anywhere catalog tables and views; e.g., ISYSTAB and SYSTABLE.
The button
connects to the target database and opens the Display Schema page in the current browser window or tab.
The button
opens the Monitor Database page in the current browser window or tab. If a sampling session already exists
for this DSN, sample data from that session will be displayed. If not, Foxhound will start a new sampling session
and display that data.
The button
tells Foxhound to include non-SQL Anywhere DSNs in the Choose a DSN: drop-down, and
excludes them again.
The button
starts the Windows ODBC Data Source Administrator program so you can edit and create DSNs.
This button is disabled if the Foxhound engine is not running locally.
Foxhound can only use the ODBC DSNs that are stored on the same
machine that's running the Foxhound engine, so that's
where you have to go to run the ODBC Administrator.
This button may not work properly if the Foxhound engine is running as a service on the
local computer. In general, services cannot launch interactive user interfaces; e.g.,
the ODBC Administrator interface.
The String tab
lets you pick a target database by specifying the SQL Anywhere connection string.
Foxhound always uses ODBC to connect to the target database, but that doesn't mean you need to create a DSN,
and this tab makes a DSN-less connection possible.
... but, if you always use DSNs to connect to your database, you probably don't need to use the String tab at all.
The Choose a connection string: drop-down list
lets you pick which connection string you want to use.
Connections strings are stored in the Foxhound database, and several samples are delivered in the initial setup.
The Enter or edit the connection string... box
lets you create, edit and delete your connection strings.
The Name: field
lets you specify a name to uniquely identify this connection string in the Foxhound
database. Connection string names are separate from DSN names so you can use the same names if you want.
The String: field
lets you fill in the connection parameters.
Foxhound changes the default settings for AutoStop and AutoStart from YES to NO,
and provides a default connection string name, by appending the following connection parameters
to the end of the string you provide (where nnn is a number 001, 002, etc):
If you provide different values for these parameters in the string you provide, your values
will be used because that's the way connection strings are processed: the first value for any
parameter is the one that is used.
However, that rule does not apply if you specify a DSN=xxx parameter and code your connection
parameter values inside the DSN: the values specified in the outer connection string, including
the values appended by Foxhound will be used instead.
Tip:
Foxhound comes with several pre-defined connection strings, and later upgrades may add more.
Feel free to delete or edit these strings as you wish; depending on how your computer is set
up you may have to change some of them so they will work properly.
Tip:
To see all the views and tables available for adhoc reporting,
select "Foxhound 3 Adhoc Schema - autostart and connect" and
click on the Display Schema button.
The button
clears the Name: and String: fields.
The button
displays several examples of connection parameters,
and hides them again. Click on an example to paste it into the String: field.
The button
saves the String: field in the Foxhound database with Name: as the identifier. This will do an update
or insert depending on whether Name: already exists or not.
The button
deletes the connection string identified by Name: from the Foxhound database.
Tip:
To rename an existing connection string, type the new Name and Save the string, then Choose and Delete
the string with the old name.
The Password: field
is optional; you don't need to fill it in if your
connection string includes a value.
Check Include system tables
if you want the Display Schema page to include the
SQL Anywhere catalog tables and views; e.g., ISYSTAB and SYSTABLE.
The button
connects to the target database and opens the Display Schema page in the current browser window or tab.
The button
saves the connection string and then opens the Monitor Database page in the current browser window or tab.
If a sampling session already exists for this connection string, sample data from that session will be displayed. If not,
Foxhound will start a new sampling session and display that data.
The Monitor tab
lists all the sampling sessions that have been created.
When this tab is displayed, it is refreshed every 10 seconds with the most recent data.
It is also refreshed whenever you switch to it from the DSN or String tab.
The button
starts all the sampling sessions in the list that aren't already running.
If there are a large number of sampling sessions, it might take a while
for them to all start.
The Start All Sampling button will not affect
any sampling sessions that have a Sample Schedule in effect. If sampling is under the
control of a Sample Schedule, you can't stop and start sampling manually, you
have to adjust (or turn off) the schedule on the Monitor Options page.
The button
stops all the sampling sessions in the list that are currently running.
The Stop All Sampling button will not affect
any sampling sessions that have a Sample Schedule in effect. If sampling is under the
control of a Sample Schedule, you can't stop and start sampling manually, you
have to adjust (or turn off) the schedule on the Monitor Options page.
The button
immediately updates the information displayed on this tab without
waiting for the regular refresh.
If the display is paused but sampling sessions are running,
you can press Refresh Display to show the most recent information
without restarting the automatic refresh process.
The (number) in parentheses in the Refresh Display button
tells you how many times this page has been refreshed.
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 sampling sessions are
running and you press Disable Refresh and later press
Enable Refresh, the displayed data "catches up" with the most
recent information.
The Show Monitor... column
displays the DSN: and String: names used to identify the sampling sessions.
You can click on one of these links to open the Monitor Database page
in a new browser window or tab.
If the SET OPTION PUBLIC.global_database_id statement has been used on a target database
to set the GlobalDBId property to a non-default value, that value will
be shown in (parentheses) after the DSN: or String: name.
This makes it easier to tell different remote databases apart
in a replicating (SQL Remote) or synchronizing (MobiLink) environment.
Each History link in the Show... column
lets you open the History page for that database in a new browser window or tab.
Each Options link in the Show... column
lets you open the Monitor Options page for that database in a new browser window or tab.
The Active Alerts column
shows how many Alerts are currently in effect (not yet All Clear or Cancelled)
for this database. Values in this column are links that let you jump down to the
corresponding Active Alerts... section at the bottom of this page.
The Sampling column
tells you whether the sampling session is Running or Stopped.
The Status column
tells you if everything is OK with the sampling session, or what kind of problem occurred.
A dash "-" is displayed when the session was stopped with the Stop button.
Heartbeat, Conns, Unsch Req:
The Heartbeat column
shows the elapsed time for the most recent "heartbeat" or "canarian" query SELECT * FROM DUMMY.
This number should be very small, and is often displayed as 0s or 0.1s.
The Conns column
shows how many connections existed, with Foxhound itself counting as 1.
This number is based on the ConnCount property, and it may differ slightly from
the number of connections shown in the connections detail section at the bottom
of the Monitor page because the ConnCount property and connection details are recorded
at slightly different points in time.
The Unsch Req column
shows the number of requests that were
waiting to be processed.
This number is based on the UnschReq property.
Locks Held, Conns Blocked:
Locks Held is the total number of locks held by all
connections, and
Conns Blocked is the number of connections that
were blocked.
These numbers are based on the LockCount and BlockedOn
properties. The Conns Blocked column will be empty if
connection details are not being recorded; see Foxhound
Options - Connection sampling threshold.
The CPU Time column
shows the percent used during the preceding interval.
This number is based on the following properties:
NumLogicalProcessorsUsed,
NumProcessorsAvail,
NumProcessorsMax and
ProcessCPU.
The Temp Space column
shows the total amount of temporary space used by all the connections.
Temporary pages are used for many purposes, most often to hold intermediate
results during query processing. Even if there is no temporary file, as with
an in-memory no write database, temporary space is allocated and used by the engine.
This column is based on the PageSize and TempFilePages properties.
Disk Reads, Writes:
Disk Reads is the number of pages that have been
read from disk in the previous interval, and
Disk Writes is the number of modified pages
that have been written to disk
in the previous interval.
These numbers are based on the DiskRead and DiskWrite
properties.
The Stop link
lets you stop the sampling session. This doesn't delete the session, it
just suspends the sampling process.
The "...Sample Schedule in effect" link
may appear instead of Stop, Start and Delete. If sampling is under the
control of a Sample Schedule, you can't stop and start sampling manually, you
have to adjust (or turn off) the schedule on the Monitor Options page.
The Cancel link
may appear instead of Stop.
The Cancel 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
or the connection timeout period is exceeded. See the Foxhound Options page for more information on connection timeouts.
The Start link
tells Foxhound to try to start the sampling session.
The Delete link
will delete the sampling session. This takes effect immediately, and
is permanent; the sample data is no longer available for display.
Also see the Foxhound Options page for more information on purging old sample data.
Note: The phrase "is permanent" means there is no "cancel" or "undo" facility. It doesn't mean you can't
ever gather samples for this database again; you just have click on the Monitor Database button to start another sample session.
Each database with one or more Alerts in effect (not yet All Clear or Cancelled)
will have a corresponding Active Alerts... section at the bottom
of this page. Each Alert has a link to open a History page for this database
showing the corresponding Alert entry.