`
ldd600
  • 浏览: 103583 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
47bb354f-8b5f-3ea6-a206-c7ead38c741c
Hyperic插件开发不完...
浏览量:11256
社区版块
存档分类
最新评论

Hyperic插件开发不完全指南(二)--插件进阶

 
阅读更多

1.      Hyperic插件

Hyperic是插件式的。

从层次模块划分:配置(product plugin),服务发现(detector),数据收集也称为monitorcollector, measurement),事件跟踪(track),报警,处理(control)UI(HQU)

从功能模块划分:JMX, ScriptSQL QuerySNMP等插件,往往一个功能模块包含多个层次。

从业务模块划分:tomcatmysql

 

我们开发插件主要会集中在服务发现,数据收集,处理,UI上。目前script我们主要是通过nagios实现。

 

开发插件的两种方式:

1.      Hyperic已有的插件基础上,只关心自己的监控逻辑(比如Mbeansql scriptSNMP)实现,不关心hyperic插件的接口实现,只自定义了某种插件的一部分。

2.      实现hyperic的接口,用代码实现一个完整的hyperic插件。

 

ServerDetector

用来发现serverservice。我们一般要插件化的都是serverservice resourceHyperic分为三个层级的资源,platform(物理服务器,操作系统,如windowslinux),server(如tomcatmysqljvm等),service(具体的资源服务,如缓存的大小)。

 



 

 

 

 

我们可以在控制台上将资源进行归类分组,

(1)     方便观察,同种类型的服务要观察的逻辑往往是一致的。

(2)     方便监控,如同组的某个服务失败认为这组服务整体就是有问题的

(3)     方便处理,同时处理整个组的服务

(4)     方便授权,定位相关责任人。某组服务是哪个小组负责开发的。

归类归组我们可以定义applicationmixed group

 

MeasurementPlugin

MeasurementPlugin负责监控数据的收集,收集的数据如果出现异常,和警告配置不符,就会报警。

我们自定义measurementplugin主要会实现两个方法。

String translate(String template, ConfigResponse config)

getValue(Metric metric)

 

String translate(String template, ConfigResponse config)

解析配置的template模板

 

getValue(Metric metric)

plugin descriptor组装的metric对象获取对应metric的值。

 

2.      插件开发步骤

(1)     设计自己的监控服务,需要监控哪些数据,以哪种类型的图表展示。

(2)     开发自己的监控插件

(3)     配置plugin descriptor

(4)     测试plugin

目录:/home/hyperic/agent-4.5.1/bundles/agent-4.5.1/pdk/lib

java -jar hq-pdk-4.5.1.jar -p testMbean -m metric Availability -Dmetric-collect=default -Dmetric-indicator=true -Dmetric-cat=AVAILABILITY -Dmetric-iter=3000 -Djmx.url=service:jmx:rmi:///jndi/rmi://192.168.3.60:8849/jmxrmi -Djmx.username= -Djmx.password=

 

(1)     Deploy plugin

创建一个hq-plugins目录。

 

 

Hq-server

创建完hq-plugins目录后,需要重启,但之后添加新的plugin jarxml描述符不需要再重启了,hq-server会自动load

 

HQ-Agent

目前,HQ-Agent还不支持热部署,需要重启agent

 

1.      SIGAR PTQL

Hyerpic Sigar有一套进程表查询语法,用于发现运行的进程。Sigar ptql可以用来发现进程,从而发现serverservice。一般一个进程对应于一个server

 

<server name="My Single Process Server">

 

   <property name="PROC_QUERY" value="State.Name.eq=myprocess"/>

 

   <config>

     <option

       default="State.Name.eq=myprocess"

       name="process.query"

       description="Process Query for singleprocess">

     </option>

   </config>

  <plugin type="autoinventory" class="org.hyperic.hq.product.DaemonDetector" />

 

详见:http://support.hyperic.com/display/SIGAR/PTQL

 

 
  • 大小: 18.6 KB
  • 大小: 22.2 KB
分享到:
评论
1 楼 wenlinguo 2013-11-19  
写得不是很好理解

相关推荐

    hyperic-sigar-1.6.4.zip

    标题中的"hyperic-sigar-1.6.4.zip"是一个软件工具包,它主要用于监控和收集服务器的各种系统性能指标。SIGAR(System Information Gatherer and Reporter)是Hyperic公司开发的一个跨平台的系统管理库,它允许...

    hyperic-sigar-1.6.4jar包.zip

    首先,"hyperic-sigar-1.6.4.jar"是Sigar库的主要组成部分,它包含了各种平台下的本地库(如"sigar-amd64-winnt.dll"),这些本地库允许Java应用程序通过JNI(Java Native Interface)调用操作系统级别的接口来获取...

    hyperic-sigar-1.6.4完整源码

    可以收集的信息 CPU信息:包括基本信息(vendor、model、mhz、cacheSize)和统计信息(user、sys、idle、nice、wait) 文件系统信息:包括Filesystem、Size、Used、Avail、Use%、Type 事件信息:类似Service ...

    Hyperic-Sigar

    在`hyperic-sigar-1.6.4`这个压缩包中,通常包含以下内容: 1. `lib`目录:存放不同平台的库文件,如`.dll`(Windows)、`.so`(Linux)、`.dylib`(Mac OS X)等,这些都是与平台相关的动态链接库,供应用程序调用...

    hyperic-sigar-1.6.4资源包下载

    java 获取服务器内存使用情况、cpu运行情况、使用效率等等硬件指标,所需的jar包、dll文件工具

    hyperic-sigar-1.6.4

    Hyperic-Sigar是一个收集系统各项底层信息的工具集.他有如下特点: 1. 收集信息全面 收集CPU,MEM,NETWORK,PROCESS,IOSTAT等 使用Sigar,你完全可以模仿出cpuinfo,meminfo,top,free,ifconfig,ipconfig,netstat,route,df...

    Hyperic HQ 在linux下的安装教程

    - 使用文件传输工具将 Hyperic HQ 的安装包 `hyperic-hq-agent-x86-64-linux-5.8.0(1).tar.gz` 上传到服务器。 ```bash rz hyperic-hq-agent-x86-64-linux-5.8.0(1).tar.gz ``` **3. 解压缩安装包** - 将上传...

    Hyperic使用手册

    在Windows平台上,Hyperic Agent的安装包通常以`.zip`格式提供,如`hyperic-hq-agent-3.1.4-EE-504-win32.zip`所示。安装过程涉及解压缩、设置环境变量及配置代理与HQ服务器的通信参数。 **步骤1:解压缩安装包** ...

    Hyperic HQ安装配置指南(第一部分)

    ### Hyperic HQ安装配置指南(第一部分)知识点详解 #### 一、安装要求 Hyperic HQ的安装配置涉及多个方面,主要包括服务器、数据库和代理的要求。 ##### 1.1 HQ服务器要求 - **HQ Server JRE要求**:Hyperic HQ...

    hyperic-sigar-1.6.2

    《深入理解Hyperic Sigar:跨平台系统度量库》 ...通过"hyperic-sigar-1.6.2"提供的库文件,开发者可以在Windows和Linux系统上无缝地实现系统监控和管理功能,极大地提高了开发效率和系统管理的便利性。

    hyperic-sigar

    hyperic-sigar-1.6.4包 sigar-1.6.4.jar sigar-1.6.4-sources.jar sigar在Linux和Windows下使用java语言获得各种系统信息所需要的包;使用方法

    Hyperic HQ 系统安装指南

    ### Hyperic HQ 系统安装指南 #### 一、简介 Hyperic HQ 是一款功能强大的开源 IT 资源管理平台,它支持多种操作系统、Web 服务器、应用服务器、数据库及消息中间件等的监控与管理。通过 Hyperic HQ,用户能够对...

    hyperic-mule-plugin

    在Hyperic Mule Plugin中,`README.txt`文件通常包含了插件的安装指南、使用说明以及可能遇到的问题和解决方案,是用户快速上手的重要参考资料。`mule-cpl-plugin.xml`文件则是该插件的核心配置文件,它定义了插件...

    hyperic-sigar-1.6.4.rar

    在“hyperic-sigar-1.6.4.rar”这个压缩包中,包含了Sigar库的不同版本,用于支持不同的操作系统,如Windows下的dll动态链接库文件和Linux下的so共享对象文件。 Sigar库提供了丰富的API,允许开发者轻松获取系统级...

    hyperic-sigar-1.6.4-1

    hyperic-sigar实现操作系统CPU、内存等系统资源监控

    hyperic-sigar-1.6.4相关.rar

    Hyperic Sigar(System Information Gatherer and Reporter)是一款强大的跨平台系统管理工具,它提供了丰富的API,用于收集和监控各种操作系统级别的信息,如CPU使用率、内存状态、网络接口统计、磁盘I/O等。...

Global site tag (gtag.js) - Google Analytics