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目录。

例子:

  1.  
    import java.util.Arrays;
  2.  
    import java.util.List;
  3.  
     
  4.  
    import org.hyperic.sigar.win32.Service;
  5.  
    import org.hyperic.sigar.win32.Win32Exception;
  6.  
     
  7.  
    public class ServiceStatus {
  8.  
     
  9.  
    // 打印出服务器 服务名称 和 状态信息
  10.  
    private static void printStatus(String name) throws Win32Exception{
  11.  
     
  12.  
    Service service = new Service(name);
  13.  
     
  14.  
    System.out.println(name +":" +service.getStatusString());
  15.  
     
  16.  
    service.close();
  17.  
    }
  18.  
     
  19.  
    public static void main(String[] args) throws Win32Exception {
  20.  
     
  21.  
    List service;
  22.  
    String name;
  23.  
     
  24.  
    if(args.length == 0){
  25.  
    service = Service.getServiceNames();
  26.  
    }else{
  27.  
    service = Arrays.asList(args);
  28.  
    }
  29.  
     
  30.  
    for(int i=0;i<service.size();i++){
  31.  
    printStatus((String)service.get(i));
  32.  
    }
  33.  
     
  34.  
    }
  35.  
    }

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

  1.  
    360rp:Running
  2.  
    Alerter:Stopped
  3.  
    ALG:Stopped
  4.  
    AntiVirSchedulerService:Running
  5.  
    AntiVirService:Running
  6.  
    Apache2.2:Stopped
  7.  
    AppMgmt:Stopped
  8.  
    aspnet_state:Stopped
  9.  
    ………………………………

Sigar核心包简单说明:

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

Sigar 说明和命令行

Hyperic Sigar API 举例的更多相关文章

  1. java sigar获取本地信息以及org.hyperic.sigar.SigarException: The device is not ready报错解决

    window下,使用java sigar 获取磁盘使用率,cpu使用率以及内存使用情况等信息时. 一:首先需要下载jar包和相关文件 sigar-1.6.4.zip 如果想了解更多可以去 sigar官 ...

  2. Java中Calendar(日历)相关API举例

    Java中Calendar(日历)相关API举例,实现功能:输入一个年份和月份打印出这个月的日历. package calendarPrint; import java.util.Calendar; ...

  3. 1 [main] DEBUG Sigar - no sigar-amd64-winnt.dll in java.library.path org.hyperic.sigar.SigarException: no sigar-amd64-winnt.dll in java.library.path

    github上一个java项目,在myeclipse中运行正常,生成jar后,运行报错: 1 [main] DEBUG Sigar - no sigar-amd64-winnt.dll in java ...

  4. Hbase关于Java常用API举例

    1. HBase相关对Admin操作的的API封装在HBaseAdmin中,封装了HBase常用操作的API 使用方法: pom.xml <!-- https://mvnrepository.c ...

  5. ava如何实现系统监控、系统信息收集、sigar开源API的学习(转)

    ava如何实现系统监控.系统信息收集.sigar开源API的学习(转) 转自:http://liningjustsoso.iteye.com/blog/1254584 首先给大家介绍一个开源工具Sig ...

  6. Sigar使用

    Sigar(System Information Gatherer And Reporter),是一个开源的工具,提供了跨平台的系统信息收集的API,核心由C语言实现的.项目中使用Sigar进行服务器 ...

  7. Sigar介绍与使用

    Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件.它用来从许多平台收集系统和处理信息. 这些平台包括:Linux, Windows, Solaris, AIX, ...

  8. java使用sigar 遇到问题的解决方案

    先给大家介绍一个开源工具Sigar 官网:http://sigar.hyperic.com/ API:http://www.hyperic.com/support/docs/sigar/index-a ...

  9. Sigar.jar获取系统信息

    Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件. 它用来从许多平台收集系统和处理信息,这些平台包括:Linux, Windows, Solaris, AIX, ...

随机推荐

  1. String对象中的正则表达式

    (1)身份证号码验证身份证号码是18位数字,根据GB11643-1999<公民身份证>定义制作:由17位本体码和一位校验码组成.身份证号码前6位是地址码,按(GB/T2260)规定执行.接 ...

  2. bzoj1626

    题解: 简单最小生成树 x,y都要double 我也不知道为什么 代码: #include<bits/stdc++.h> using namespace std; ; int n,m,f[ ...

  3. 记python3 UnicodeEncodeError: 'latin-1' codec... 报错

    python3用cx_Oracle查询oracle数据库并打印输出,在windows上执行没问题,打算放suse上跑的时候就遇到了打印中文UnicodeEncodeError: 'latin-1' c ...

  4. DevExpress v17.2新版亮点—DevExtreme篇(二)

    用户界面套包DevExpress DevExtreme v17.2终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExtreme v17.2 的New Color Sche ...

  5. <NET CLR via c# 第4版>笔记 第19章 可空值类型

    System.Nullable<T> 是结构. 19.1 C# 对可空值类型的支持 C# 允许用问号表示法来声明可空值类型,如: Int32? x = 5; Int32? y = null ...

  6. 去除字符串中的emoji字符

    对于使用utf8编码的mysql数据库来说,如果字符串中存在emoji小图像,是不能存进数据库中的,查了一下,原因大概是因为utf8编码可以存1-3个字节的字符,但是emoji是4个字节:解决方法可以 ...

  7. Effective C++阅读笔记

    条款1:视C++为一个语言联邦:C.Object-Oriented C++.Template C++.STLC++高效编程守则视情况而变化,取决于使用C++的哪一个部分 条款2:尽量以const,en ...

  8. node 常见的一些系统问题

    nodde正风生火起,很多介绍却停留在入门阶段,无法投入生产 许多文章在讲第三方类库,可是这些库质量差距较大,一旦遇到问题怎么办 全面了解node核心才能成为一名合格的node开发人员 1. node ...

  9. C一次将整个文件读入内存

    最近工作,有个需求需要将YUV的整个文件读入内存,然后处理这些YUV数据,一种比较有效的方法如下: #include <stdio.h> #include <stdlib.h> ...

  10. 移动端js模拟截屏生成图片并下载功能的实现方案

    一.根据PM需求如下: 移动端wap 实现将二维码生成图片下载至用户手机相册保存 二.根据现有思路: 1.使用第三方工具html2canvas,将页面中指定范围的dom转换为canvas 2.随后使用 ...