Cra*_* HB 39 monitoring windows-services
我正在寻找一种方法来监视某些Windows服务(在Windows Server 2003上)并在必要时重新启动.这些服务位于不同的服务器上,主要包括SQL Server服务(例如SQL Server代理),还包括一些专有服务.
如果服务已停止,则发送的电子邮件警报也非常有用.
Tom*_*lak 43
Windows中内置了"可能足够"的版本.查看服务属性的"恢复"选项卡,可通过services.msc.
您可以通过以下方式对服务失败:
例如,"运行程序"可能是一个发送邮件的小脚本.
如果您想要一个带有概览仪表板的更大解决方案,那么可以使用大量的系统监控解决方案.例如,想到SolarWinds IPMonitor,或Nagios或Cacti.
gim*_*mel 15
如果您对某些.NET编程感兴趣,System.ServiceProcess命名空间提供了允许您实现,安装和控制Windows服务应用程序的类.
简单的例子,在C#中检查和启动服务:
var srv = new ServiceController("MyService");
Console.WriteLine("MyService Status {0}", srv.Status);
if (srv.Status != ServiceControllerStatus.Running)
srv.Start();
Run Code Online (Sandbox Code Playgroud)
它们可能是一些专用工具,但我只想指出wmic工具.
wmic /node:[hostname] service list
Run Code Online (Sandbox Code Playgroud)
能够列出任何计算机的服务
WMIC SERVICE where caption='TELNET' CALL STARTSERVICE
Run Code Online (Sandbox Code Playgroud)
将重新启动telnet服务.
如果您使用脚本语言(能够发送电子邮件)封装wmic,则可以使用您正在查找的监视工具.