Hyperic Sigar API 举例

Hyperic HQ是一个开源的IT资源管理框架,支持多种操作系统、Web服务器、应用服务器、数据库等的管理和监控。文章介绍了其安装结构,重点讲解了SIGAR API的用途,提供了下载链接和在Windows、Linux下的使用注意事项,并给出了一段简单的服务状态查询示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hyperic HQ 是什么? 

         Hyperic HQ 是一个开源的(General Public License,GPL授权)IT资源管理框架,让用户使用统一的界面来管理各种不同的IT资源的管理,Hyperic HQ 可以监控和管理:

        ★操作系统:AIX,HP/UX,Linux,Solaris,Windows,Mac OSX,FreeBSD

        ★ Web服务器:Apache,Microsoft IIS,Sun ONE Web Server

        ★ 应用服务器:BEA WebLogic,IBM WebSphere,JBoss,Apache Geronimo,Macromedia ColdFusion,Macromedia JRun,Microsoft .NET Runtime,Novell Silverstream,Tomcat,Caucho Resin ,Jetty(官网公布的文档中没有jetty,但是我发现发行包中确实有个jetty的plugin,所以也把jetty列出来了,还有待考证)

        ★ 数据库:IBM DB2,Microsoft SQL Server,MySQL,Oracle,PostgreSQL,Sybase Adaptive Server

        ★消息中间件: ActiveMQ,Weblogic MQ

        ★ 微软的产品: MS Exchange,MS ActiveDirectory,.NET

        ★ 虚拟产品: VMWare,Citrix Metaframe

        ★应用平台: LAMP,LAM-J,J2EE,MX4J

        其他:网络设备交换机,路由器,网络服务等。

 -----------------------------------------------------------

        Hyperic HQ  安装分成两个部分:Server 和Agent。Server是安装在一台服务器上作为管理服务端,Agent 分别安装在不同的需要被管理的服务器上。Angent的配置信息指向server 端。简易的结构如下:

                                                                  ( ---------agent

浏览器 (-----------------------------)  ( server )  (------------------agent

                                                                  ( ---------agent

       sigar全称SIGAR - System Information Gatherer And Reporter(系统信息采集报告器)。一个提供第三方开发的API。

       下载地址:http://sourceforge.net/projects/sigar/files/sigar/1.6/

       文档地址:http://support.hyperic.com/display/SIGAR/Home

       windows下开发需要: sigar.jar 和sigar-x86-winnt.dll

       Linux下需要:sigar.jar和对应构架下的so。可以在文档的binaries表格中看到对应关系。

       项目中lib加入sigar.jar 对应的dll文件或者so文件添加到系统目录。例如:windows 下把sigar-x86-winnt.dll添加到c:\WINDOWS\system32或者jdk的bin目录。

 例子:

import java.util.Arrays;
import java.util.List;

import org.hyperic.sigar.win32.Service;
import org.hyperic.sigar.win32.Win32Exception;

public class ServiceStatus {

//	打印出服务器 服务名称 和 状态信息
	private static void printStatus(String name) throws Win32Exception{
		
		Service service = new Service(name);
		
		System.out.println(name +":" +service.getStatusString());
		
		service.close();
	}
	
	public static void main(String[] args) throws Win32Exception {
		
		List service;
		String name;
		
		if(args.length == 0){
			service = Service.getServiceNames();
		}else{
			service = Arrays.asList(args);
		}
		
		for(int i=0;i<service.size();i++){
			printStatus((String)service.get(i));
		}
		
	}
}

          上面的代码比较简单,就是打印出服务器服务名称和状态。 结果如下:

360rp:Running
Alerter:Stopped
ALG:Stopped
AntiVirSchedulerService:Running
AntiVirService:Running
Apache2.2:Stopped
AppMgmt:Stopped
aspnet_state:Stopped
………………………………

          Sigar核心包简单说明:

Sigar 
org.hyperic.sigar Sigar - 核心库,采集信息
一般情况下Sigar sigar = new Sigar(); //拿到当前系统收集器
        sigar.getFileSystemList(); //通过sigar的get方法收集相关信息,这部分网上例子比较多。
Other Packages 
org.hyperic.sigar.cmd       系统命令. 
org.hyperic.sigar.ptql      进程方面 
org.hyperic.sigar.shell     Shell命令. 
org.hyperic.sigar.util      工具类打印、列表. 
org.hyperic.sigar.vmware    虚拟机vmware  
org.hyperic.sigar.win32     window操作系统windows32 事件、本地信息、服务、服务配置等信息。  

Sigar 说明和命令行

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值