自定义SQL Server性能计数器

Ste*_*utt 5 sql-server monitoring perfmon performancecounter sql-server-2008

我需要为系统运行状况检查和监视创建多个计数器.由于有许多用于记录,报告和警告Windows Perfmon数据的工具,我希望将该数据发布为Perfmon计数器.

某些值需要来自SQL Server 2008数据库,例如,用作队列的表中的记录数以及表中最旧记录的年龄.虽然它看起来像这样可以通过使用来实现SQL Server中,用户可设置对象和存储过程sp_user_counter1sp_user_counter10这限制了我在每个服务器只有10个计数器,计数器名称和说明不能自定义,以反映计数器是什么.

如果不创建我们自己的应用程序来创建Perfmon计数器,还有其他方法可以在SQL Server中创建计数器吗?如果没有,是否有任何工具/项目允许使用SQL查询创建自定义计数器?

小智 0

我认为专门使用 SQL Server 处理自定义 perfmon 数据的唯一方法是使用十个 sp_user_counterX 存储过程。我做了一些搜索,搜索中出现的唯一结果就是这些存储过程。

我确实有另一个建议,但需要一些编码。本文介绍了如何创建一个小型应用程序(无论是服务还是控制台应用程序),该应用程序允许您根据需要创建任意数量的性能计数器。您可以使用它来创建您自己的计数器。

在我们的组织中,我们使用 Idera Diagnostic Manager,我们发现它非常有用,因为我们可以使用内置指标来监控我们的服务器并创建我们自己的计数器。我们发现它工作得很好,虽然它的价格相当高,但它是我所知道的唯一不需要 SQL 服务器上任何代理的监控工具。