是否有人使用 Cacti 来监控 SQL 服务器计数器(磁盘队列长度、i/o 请求等)。如果是,你是如何做到这一点的?基本上,我在我的 SQL Server 上收集了许多性能计数器。我需要一种方法来创建图表并对我收集的数据进行切片和切块?如果您知道任何其他图形解决方案,请告诉我?
问问题
5718 次
2 回答
5
是的,做了几次:
http://docs.cacti.net/usertemplate:host:microsoft:sqlserver
它真的很好用。您需要访问权限才能创建登录名。这是您运行的非侵入性脚本:
/* SQL 2005/2008 */
USE [master]
GO
CREATE LOGIN [cactistats] WITH PASSWORD=SomePassword, DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
EXEC sys.sp_addsrvrolemember @loginame = N'cactistats', @rolename = N'processadmin'
GO
CREATE USER [cactistats] FOR LOGIN [cactistats] WITH DEFAULT_SCHEMA=[dbo]
GO
GRANT SELECT ON [sys].[dm_os_performance_counters] TO [cactistats]
GO
/* END */
一旦它运行并且您根据安装文档添加了脚本,您将能够绘制 SQL 指标图表。
麦克风
于 2012-12-16T16:41:18.513 回答
0
此答案是对正确标记答案的补充。
如果你需要监控一个特定的sql server 实例,那么你需要编辑这个脚本文件
/usr/share/cacti/site/scripts/ss_win_mssql.php
并更改行:
if (! $link = mssql_connect($host.':'.$port, $username, $password) )
到
$host = ($port == '1433' ? $host : $host.':'.$port);
if (! $link = mssql_connect($host, $username, $password) )
return;
并在创建图表时设置主机名和实例,如下所示:
于 2017-03-28T16:07:37.627 回答