很难找到计数器,以便使用perfmon获取服务的状态。有可能吗?我们需要监视Nagios中服务的状态,但是唯一的远程访问是通过Perfmon。
发布于 2011-10-25 15:35:08
没有用于服务的性能计数器。对于一种一次性操作,您可以监视服务正在调用的进程的计数器,例如进程的私有字节或线程数。
由于进程id将在每次重新启动时更改,因此您需要相应地调整您的监视。但是,它将作为一个快速和肮脏的解决方案,除非您有更强大的地方。
发布于 2011-10-25 12:53:10
performance用于度量机器的性能指标,而不是服务的状态。
虽然我知道您希望在Perfmon中监视此状态,但我不认为它是适合您的工具。如果您可以进入services.msc,您可以导航到该服务的“恢复”选项卡。在这里,您可以选择服务器对服务可能处于的不同状态的反应方式。例如,您可以选择在第一次失败时重新启动服务,并运行一个脚本,在服务的第二次和第三次失败时给您发电子邮件,等等。
发布于 2015-06-22 17:35:02
您可以相当容易地编写powershell脚本(甚至小的C#代码集)来创建自定义的WindowsPerformance计数器。在这些程序中,您可以输入所选择的任何数据(比如数字服务状态指示器?),在任何似乎足够的中间位置输入数据,如果perfmon是导出数据的唯一简单方法(我曾经遇到过相同的奇怪问题,但它是一个与Nagios不同的监视应用程序),这是非常方便的。
遗憾的是,我正在度假,只有这可怜的iphone,所以我想我将不得不返回并粘贴在一个示例脚本时,我可以。
不过,你可以快速、轻松地搜索大量的powershell/C#解决方案,这就是我或多或少不得不这么做的原因。尽管如此,我想你还是得想个办法,让它滑过6个月的qa周期。
https://serverfault.com/questions/324588
复制相似问题