数据库查询监视器用于监控任何给定数据库的单个查询或一组查询。此基于SQL的查询监视器允许用户监控该特定查询的状态。
要创建一个新的数据库查询监视器,请按照以下给定的步骤进行操作:
从企业版Admin Server,数据库查询监控仅支持以下数据库类型 -MySQL,Oracle,DB2,MsSQL,Sybase,PostgreSQL,SAP HANA和SAP MaxDB 是不支持的。
您可以启用一个链接来配置告警(该链接将出现在数据库查询监视器页面中每个表的右上角)。使用链接,用户可以为表中的任何属性设置预定义阈值。
这是启用数据库查询监视器的配置告警模板的方法:
数据库查询监视器用于监控任何给定数据库的单个查询或一组特定查询。
使用单个查询或一组给定的查询,您可以使用Applications Manager数据库查询监视器来监控任何给定数据库的状态。查询是找出数据库是否已24x7全天候运行的最佳方法。在诸如在线商店之类的企业中,有许多用于电子商务的应用程序和数据库。在这种环境中的任何中断都可能仅意味着一件事:损失收入。
通过设置轮询间隔,可以自动执行单个查询或一组查询。通过固定轮询间隔,用户可以自动执行此过程,并在轮询结束时获得结果。结果包括执行时间(查询提供结果所花费的时间),并且还显示常规轮询间隔期间可能发生的任何错误。这些错误有助于确定数据库可能发生的任何问题。
让我们考虑一个例子。许多企业环境运行关键应用程序,这些应用程序需要24x7全天候运行。让我们假设,此类应用程序的状态保存在 "APPLICATION_STATUS" 表中。使用数据库查询监视器,用户将能够向该数据库发送一组选择的查询,以查明它们是否可运行。
|-----------------------------------------------------------|
| APPLICATIONS_STATUS |
|-----------------------------------------------------------|
| APPLICATIONS_NAME | Status |
|-----------------------------------------------------------|
| PURCHASE | OK |
| CRM | CRITICAL |
| PAYROLL | OK |
| LEADS | OK |
|-----------------------------------------------------------|
选择 * APPLICATIONS_STATUS
通过使用数据库查询监视器执行上述命令,用户将获得正在运行的应用程序列表及其状态。用户可以识别状态为'严重' 的应用程序,然后通过在Applications Manager中配置告警来执行必要的操作。此操作可以采用创建故障工单或执行脚本来纠正问题的形式。
数据库查询监视器还可用于识别链接到多个数据库网络中的任何瓶颈,并通过识别存在问题的正确数据库来帮助消除它们。由于应用程序之一或数据资源清单在问题,因此可能出现瓶颈问题。使用数据库查询监视器,用户可以执行一组给定的查询并分析结果,从而清楚地表明引起这种情况的错误。结果包括执行时间(查询生成结果所花费的时间)。如果执行时间高于某个预定阈值,则问题出在数据库上,或者如果结果低于预定阈值,则问题出在其他地方。
数据库查询监视器当前支持以下数据库的查询:
Applications Manager还提供了按属性类型比较输出中各种列值的功能。提供了启用或禁用报告的选项。
注意:请注意,查询数量限制为五个查询。输出中显示的总行数限制为50行。
这是数据库查询监视器下与Oracle数据库类型兼容的JDBC URL的列表: |
我们为数据库查询监视器中支持的所有数据库添加了对存储过程的支持。我们支持仅返回一个结果集的存储过程。
要启用存储过程,请转到管理 → 性能轮询 → 优化数据收集 → 脚本/数据库查询监视器,然后选择为数据库查询监视器启用存储过程监控。
查询应该在一行中,最多2000个字符。请注意,在一台监视器中查询的数量限制为五个查询。另外请注意,查询的分隔符是换行符。输出中显示的总行数限制为50行。
如果结果中有一列以上,我们建议您在监视器中将一列字符串值设置为主键的值。
查询应包含一个标识符。对于涉及计数的查询,我们建议您有一个虚拟列并将其用作关键值。
我们来看下面的例子:
从提示中选择 'count' 作为值,选择count(*) 作为alert_count;
在上面的查询中,我们的标识符是 alert_count,并且设置了一个虚拟主列,称为value。在轮询期间无论何时执行此查询,我们都会根据关键值选择存储实际的计数值。在这种情况下,关键值是 alert_count。
.您可以为计数属性配置告警,然后定义阈值。
查询应该在一行中,最多2000个字符。请注意,在一台监视器中查询的数量限制为五个查询。另外,请注意,查询的分隔符是换行符。输出中显示的总行数限制为50行。
如果结果中有一列以上,我们建议您在监视器中将一列字符串值设置为主键的值。
对于涉及计数的查询,我们建议您有一个虚拟列并将其用作关键值。
让我们以应用程序的某些待处理任务为例,该任务存储在 app_pending_tasks 表中,并且您要监控该应用程序的待处理任务数。
通常,我们将如下所示构成查询:
从app_pending_tasks中选择count(*)
上面查询的问题是它没有标识符。相反,您可以按如下所示形成查询。
对于MySQL, Oracle, Sybase:
---------------------------------
选择 'Number of Pending Tasks', 将 count(*) 作为 app_pending_tasks中的 totalcount
将 'Number of Pending Tasks' 作为主要列。
对于MS SQL, PostgreSQL, Db2:
---------------------------------
选择 'Number of Pending Tasks' 作为 NumberOfPendingTasks, 将 count(*) 作为来自 app_pending_tasks的 totalcount
将'Number of Pending Tasks' 作为主要列。
现在,您可以通过分配阈值来生成告警并生成 'totalcount '的报告。