我要求客户写一个软件(控制台应用程序或服务),它将存放在服务器上并监控一般性能(CPU使用率,内存使用量和磁盘使用情况)并报告任何长时间的用量很高。
这在C#/ .NET中是否可行?
答案 0 :(得分:2)
您可以使用System.Management
命名空间发布WMI个查询并报告结果。
提供对Windows Management Instrumentation(WMI)基础结构中配备的系统,设备和应用程序的丰富管理信息和管理事件的访问。应用程序和服务可以使用从ManagementObjectSearcher和ManagementQuery派生的类来查询有趣的管理信息(例如磁盘上剩余多少可用空间,当前CPU利用率是多少,某个应用程序连接到哪个数据库等等) ,或使用ManagementEventWatcher类订阅各种管理事件。可访问的数据可以来自分布式环境中的托管和非托管组件。
另见MSDN杂志文章:
WMI and .NET: System.Management Lets You Take Advantage of WMI APIs within Managed Code