Windows系统监控
来源:互联网 发布:php逗号分割字符串 编辑:程序博客网 时间:2024/06/05 10:53
Windows系统监控
一、 应用框架的选取与介绍
该监控系统使用J-Interop开源框架调用WMI来实现。Windows管理规范(WMI)是微软对来自分布式管理任务组(DMTF)基于Web的企业管理(WBEM)和通用信息模型(CIM)标准的实现。WMI用于访问Windows系统,应用,网络,设备等组件,并管理他们,可以实现对本地或远程操作系统的监控,比较流行的Java调用WMI开源框架有J-Interop,JACOB-Project和J-Integra,而J-Interop是完全免费开源的API,并且它提供了没有任何依赖的纯DCOM桥,完全使用Java编写的没有任何的JNI代码。
二、 环境准备
1. Windows要开启Remote Registry,Remote Procedure Call(RPC)和Windows Management Instrumentation服务,如下图:
图:开启服务
2. 修改安全策略
通过cmd命令行键入secpol.msc来开启本地安全策略,本地安全策略-->安全选项找到网络访问:本地账户的共享和安全模型,将它的安全设置更改为经典。如下图:
图:修改本地安全策略
3. 禁用防火墙
4. WindowsServer 2008和高版本的系统需注册表越狱
找到注册表HKEY_CLASSES_ROOT\CLSID\下面的注册表并更改管理员完全控制
{76A64158-CB41-11D1-8B02-00600806D9B6}的控制权。Windows Server 2008不再给Administrators完全控制权。只能通过SetACL.exe来更改。
a)下载SetACL.exe,下载地址:
https://files.helgeklein.com/downloads/SetACL/current/SetACL%20(executable%20version).zip
b)解压安装,cmd命令行cd到SetACL.exe目录之下,以管理员的身份运行如下代码:
图:注册表越狱
修改成功后管理员的权限显示如下图:
图:修改管理员权限
三、 程序代码
程序代码地址:https://xxsrd.f3322.org/svn/HDZX/Android/DOC/Server
创建WmiService类,如下图
图:创建WmiService类
建立和服务器的连接获取IJIDispatch对像
图:获取IJIDispatch对像
查询部分:
图:查询代码
四、 运行结果
1. cpu使用的情况:
a) WmiService.query("select * fromWin32_PerfFormattedData_PerfOS_Processor");查
询结果如下图:
b) WmiService.query("select * fromWin32_ Processor");(Windows server 2003服务器不适用)
2. 逻辑磁盘可用空间:WmiService.query("select * from Win32_LogicalDisk");
3. 系统服务:WmiService.query("select * from Win32_Service");
4.
物理内存:WmiService.query("select *from Win32_ PhysicalMemory");
5. 可用物理内存:WmiService.query("select * from Win32_OperatingSystem");
6. 网卡信息:WmiService.query("select * from Win32_NetworkAdapter");
7. 进程信息:WmiService.query("select * from Win32_Process");
8. 网络流量:
WmiService.query("select * from Win32_ PerfRawData_Tcpip_NetworkInterface");
五、 注意事项
1. 使用Windows2008 R2,Server 2012 R1和R2及Windows7时需要对注册表进行越狱操作。
2. Windows2003服务器对select * from Win32_Processor查询不支持,可替换为:
select * from Win32_PerfFormattedData_PerfOS_Processor
3. Windows7上启动远程注册表访问
默认情况下,即使启动了远程注册表服务,Windows7任将拒绝远程注册表。解决办法,在计算机上以管理员的身份运行powershell执行Enable-PSRenoting,重启计算机。
4. 防火墙必须允许开启TCP和UDP的端口号
1) TCP端口135(DEC、RPC定位器服务)
2) TCP端口139(NetBIOS会话服务)
3) TCP端口445(Windows共享)
4) C:\WINDOWS\System32\dllhost.exe(随机端口)
5) C:\WINDOWS\System32\javaw.exe(随机端口)
六、 常见错误
1. 错误码:0xC0000034
启动控制面板,打开"管理工具",打开"服务"。在列表中找到Remote Registry(远程注册表服务),启动此项服务。
2.
错误码: 0x8001FFFF
1)关闭防火墙
2)修改编辑注册表HEKY_LOCAL_MACHINE\System\CurrentControlSet\COntrol\Lsa找到或创建注册表LMCompatibilityLevel的值为2,关闭注册表重启计算机。
3)服务器版本过低,对有些查询语句不支持。
3.
错误码:0xC000006D
1)禁用防火墙
2)当端口139(NetBIOS会话服务)和445(Windows共享)不可用会出现该错
3)启动控制面板,进入“管理工具”,然后点击“本地安全策略”。这将打开
“本地安全设置”窗,转到“本地策略”->“安全选项”->“网络访问:本地
账户的共享和安全模型”。更改为“经典”。
4. 错误码:0x00000005
1) 禁用防火墙
2) 更改注册表HEKY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Pollices\System,创建或修改32位DWORD:LocalAccountTokenFilterPolicy的值为1。
3)
Windows2008 R2,Server 2012R1,Win7,Win8,修改默认注册表的权限,请参考本文环境准备中的第四项。
5. 错误码:0x800706BA
1) 关闭防火墙
2) 启动Remote Procedure Call(RCP)服务。
- loadrunner 监控windows系统
- windows服务器系统监控
- Windows系统监控
- Zabbix监控windows系统
- 文件监控系统设计(2)-"Windows 文件监控API"
- Windows平台网络视频监控系统随想
- 监控Windows操作 记录系统动作
- windows系统监控wmic和perfmon
- windows下python监控系统服务
- Python WMI获取Windows系统信息 监控系统
- 用C#开发Windows服务监控系统使用
- 用C#开发Windows服务监控系统使用
- Windows mobile系统状态监控(又名注册表管理)
- Windows下安装Cacti流量与系统资讯监控
- 使用Windows 系统性能监控来报警磁盘空间不足
- 用C#开发Windows服务监控系统使用
- 用C#开发Windows服务监控系统使用
- LR监控windows、linux、UNIX、IBM AIX系统方法
- Android图片加载框架最全解析(三),深入探究Glide的缓存机制
- Day 5 linux基础命令练习二
- 关于反射的补充
- SMBIOS信息概述 – DMI
- PAT-A-1043. Is It a Binary Search Tree (25)
- Windows系统监控
- 【C#
- SSM超详细搭建教程(Spring+SpringMVC+Mybatis)以及集成Redis和Druid
- ”Can't connect to MySQL server on localhost (10061)”
- 初学Android之飞机大战——飞机大战所需素材
- 集合定义
- [BZOJ4719][NOIP2016]天天爱跑步-LCA+树上差分
- java和iOS的DES/EBC/PKCS5Padding
- 内存溢出