Monday, July 20, 2009

Comparing Database Monitors

When the next Beta of Foxhound is released (soon, soon), the SQL Anywhere Monitor will have some competition in the area of email alerts.

Here's how the two products compare as far as features are concerned:



Basic Features


SQL Anywhere MonitorFoxhound Database Monitor
Can monitor both SQL Anywhere and MobiLink servers.
Limited to monitoring SQL Anywhere target databases.
Limited to SQL Anywhere Version 11 target servers running Version 10 or 11 databases.
Can monitor Version 5, 6, 7, 8, 9, 10 and 11 databases and servers.
Multiple adjustable sampling intervals are supported, with a 10 second minimum. The defaults are 30 seconds, 5 minutes and 30 minutes for High, Medium and Low.
There's only one sampling interval, and it's fixed at 10 seconds.
Stores sample data in a dedicated Version 11 database.
Stores sample data in a dedicated Version 11 database.
Uses SQL Anywhere's built in HTTP server (port 4950) with an Adobe Flash browser interface.
Uses SQL Anywhere's built in HTTP server (port 80) with a standard HTML and JavaScript browser interface; e.g., select and copy to clipboard is supported.
Measurements shown via graphs that scroll to the right.
Measurements shown via text that scrolls up.
Separate tabs and graphs for separate measurements.
One combined display for all measurements.
- not supported -
Peak measurements are recorded, and measurements approaching the peaks are color highlighted.
- not supported -
Detailed measurements for each connection are displayed.
Basic information about each blocked connection is displayed: the connection numbers for the blocked and blocking connections.
Additional information about each blocked connection is displayed, including the SQL text for the blocked statement and for a SELECT statement you can run to find the locked row.
The GUI refresh interval defaults to 1 minute and cannot be set any faster than 30 seconds.
The GUI refresh interval is fixed at 10 seconds.
The GUI requires a login in addition to the user ids and passwords required to monitor to the target databases.
The Foxhound GUI itself requires no login... just the user ids and passwords for the target databases.
Detailed connection parameters (user id, password, host, server, database and/or port) must be provided for each target database.
ODBC DSNs may be chosen from the list of existing User and System DSNs. DSN-less connection strings may also be used.
Maintenance will be performed daily at [00] : [00]
The maintenance schedule is internally determined.
Scheduled backup via "Back up the SQL Anywhere Monitor data to the following directory: [ ]"
Backup is manual via desktop shortcut.
Yes/No: Take a daily average values older than [2 weeks] (or 1 week, 1 month, 6 months, 1 year)
- not supported -
Yes/No: Delete values older than [1 month] (or 1 week, 2 weeks, 6 months, 1 year)
Purge sample data: after 1 day, 1 week, 1 month, 1 year, never purge.
Yes/No: Delete old values when the total disk space becomes greater than (MB): [10240]
- not supported -
Yes/No: Allow anyone read-only access to the SQL Anywhere Monitor.
- not supported -



Alert Processing


SQL Anywhere MonitorFoxhound Database Monitor
Alerts are point-in-time events.
Alerts are conditions that go into and out of effect.
Detection of individual alert conditions can be enabled and disabled.
Detection of individual alert conditions can be enabled and disabled.
- not supported -
"All clear" messages are displayed and emails are sent when alerts are no longer in effect. Cancellation messages are also displayed when criteria change while alerts are in effect.
Alerts which are no longer in effect must be cleared manually via the "Mark Resolved" or "Delete" buttons.
Alerts are automatically cleared when the "all clear" and "cancelled" conditions are met.
Most alerts are issued as soon as the criteria are met.
A waiting period is part of the criteria for most alerts, with 10 samples being the most common default. The waiting period directly affects how long a condition must exist before an alert is issued, and indirectly affects how long the condition must remain resolved before an all clear is issued.
Alert messages are displayed on a separate tab.
Alerts and all clear messages are displayed in multiple locations and formats, both separate from and together with other measurements in the main monitor display.
Alerts will be repeatedly sent for a condition that persists, although the frequency can be controlled: Alerts for the same condition that occur with 5 minutes (the default) are suppressed. Other intervals may be chosen: 1 minute, 1 hour, 2 hours, 6 hours, 24 hours.
Alert messages are displayed and emails are sent ONLY when the alert goes into effect.
Can send alert emails via SMTP and MAPI.
SMTP only.
Sensible "factory setting" defaults are provided for all alert criteria.
Sensible "factory setting" defaults are provided for all alert criteria.
Changes to alert criteria must be made manually for each database.
Manually-entered alert criteria may be copied from one database to another via "Save Settings as Default" and "Restore Default Settings"
- not supported -
The original Foxhound alert criteria may be restored via "Restore Factory Settings".
- not supported -
The "Use Extreme Settings" button may be used to force the detection of more alerts, sooner, for testing purposes.
Yes/No: Suppress unsubmitted error report alerts from resources.
- not supported -



Alert Conditions


SQL Anywhere MonitorFoxhound Database Monitor
(a) Availability Alert - Database Down
Alert #1. Foxhound has been unable to gather samples for [1m] or longer.
- not supported -
Alert #2. The heartbeat time has been [1.0s] or longer for [10] or more recent samples.
- not supported -
Alert #3. The sample time has been [10.0s] or longer for [10] or more recent samples.
(b) Alert when CPU use reaches [90] % for two collection intervals in a row.
Alert #4. The CPU time has been [90]% or more for [10] or more recent samples.
(c) Alert when memory usage reaches [85] % of the maximum cache size.
Alert #19. The cache has reached [100] % of its maximum size for [10] or more recent samples.
- not supported -
Alert #20. The cache satisfaction (hits/reads) has fallen to [50] % or lower for [10] or more recent samples.
(d) Alert when free disk space per dbspace is less than [1024] MB on the disk.
Alert #5. The free disk space on the drive holding the main database file has fallen below [1GB].
Alert #6. The free disk space on the drive holding the temporary file has fallen below [1GB].
Alert #7. The free disk space on the drive holding the transaction log file has fallen below [1GB].
Alert #8. The free disk space on one or more drives holding other database files has fallen below [1GB].
- not supported -
Alert #13. There are [1000] or more fragments in the main database file.
(e) Alert when a connection has been blocked for longer than [10] seconds.
Alert #23. The number of blocked connections has reached [10] or more during [10] or more recent samples.
- not supported -
Alert #24. At least one single connection has blocked [5] or more other connections during [10] or more recent samples.
- not supported -
Alert #25. The number of locks has reached [1,000,000] or more during [10] or more recent samples.
(f) Alert when the number of connections in use reaches [85] % of the license limit.
Alert #26. The number of connections has reached [1000] or more for [10] or more recent samples.
(g) Alert when a query has run for longer than [10] seconds.
- not supported -
- not supported -
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.
- not supported -
Alert #28. The transaction running time has reached [1m] or more for at least one connection during [10] or more recent samples.
- not supported -
Alert #21. The total temporary file space used by all connections has been [1G] or larger for [10] or more recent samples.
- not supported -
Alert #22. At least one single connection has used [500M] or more of temporary file space during [10] or more recent samples.
(h) Alert when a connection attempt fails.
- not supported -
(i) Alert when the arbiter or partner server is disconnected.
Alert #9. The high availability target database has become disconnected from the arbiter server.
Alert #10. The high availability target database has become disconnected from the partner database.
- not supported -
Alert #11. The high availability target database server has switched over to [server2].
- not supported -
Alert #12. The high availability target database has changed from [read only] to [updatable].
(j) Alert when the number of unscheduled requests reaches [5]
Alert #14. The number of requests waiting to be processed has reached [5] or more for [10] or more recent samples.
- not supported -
Alert #15. The current number of incomplete file I/O operations has reached [10] or more for [10] or more recent samples.
- not supported -
Alert #16. There have been [1000] or more disk and log I/O operations per second for [10] or more recent samples.
- not supported -
Alert #17. The Checkpoint Urgency has been [100] % or more for [10] or more recent samples.
- not supported -
Alert #18. The Recovery Urgency has been [1000] % or more for [10] or more recent samples.

No comments: