GXCollAixMBean.java 6.25 KB
package com.sitech.ismp.coll.tivoli;

public interface GXCollAixMBean {

	/**
	 * 采集规范中指标
	 * PM-00-01-01-01	CPU时间:空闲百分比	CPU空闲时间量占CPU时间总量的百分比的值	                    Idle CPU(Percent)
	 * PM-00-01-01-02	CPU时间:系统百分比	CPU在系统相关任务上所用的时间量并报告它所占CPU时间总量的百分比值	System CPU(Percent)
	 * PM-00-01-01-03	CPU时间:用户百分比	用户任务所占用CPU时间量占CPU时间总量的百分比。	                User CPU(Percent)
	 * PM-00-01-01-04	CPU时间:等待百分比	CPU等待(包括I/O等待,Swap等待和进程输入输出等待)所占用CPU时间量占CPU时间总量的百分比。	Wait I/O(Percent)
	 * PM-00-01-01-05	CPU使用率	用户CPU时间百分比和系统CPU时间百分比之和的平均值。	                        CPU Busy(Percent)
	 * PM-00-01-01-06	CPU运行队列中进程个数	CPU运行队列中进程个数	                                    Processes/Threads in Run Queue
	 * 
	 * 获取这些指标需要发送2个soap请求
	 * PM-00-01-01-01/02/03/04/05    object=SMP_CPU
	 * PM-00-01-01-06                object=System
	 * 
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getCpu(java.util.HashMap params)
			throws Exception;

	/**
	 * 
	 * PM-00-01-02-01	内存的使用率	主机内存的使用量与内存总量的比值	提供Free Memeory和Total Memeory
	 * PM-00-01-02-02	内存交换请求数	Page request(包括page in&out)操作的数量	Page-Ins(Per Sec),Page-Outs(Per Sec)
	 * PM-00-01-02-03	内存交换页换进率	内存交换页换进速率	Page-Ins Rate	  
	 * PM-00-01-02-04	内存交换页换出率	内存交换页换出速率	        Page_Out Rate
	 * PM-00-01-02-05	内存队列数	     等待内存的进程或线程数量	    Processes/Threads in Run Queue
	 * PM-00-01-02-06	系统内存使用率	系统内存占所有物理内存的百分比	无此概念
	 * PM-00-01-02-07	用户内存使用率	用户内存占所有物理内存的百分比	无此概念	
	 * PM-00-01-02-08	文件系统数据缓冲命中率	文件系统数据缓冲命中率	"ITM提供 Logical Block Reads(lread),Logical Block Write(lwrite),Block Reads(bread)和Block Write(bwrite).
	 * 																读命中率=100*(lread - bread)/lread
	 * 																写命中率=100*(lwrite - bwrite)/lwrite"
	 *                                                             我们计算命中率方法   100*[ (lread - bread)+ (lwrite - bwrite) / (lread+lwrite)]
	 * 获取这些指标需要发送1个soap请求
	 * PM-00-01-02-01/02/03/04/08  object=System   有的要计算
	 * PM-00-01-02-05              object=System   ibm提供采集方法与PM-00-01-01-06写成了一个,我们也这样采
	 * ~~~PM-00-01-02-06/07           没法采,ibm称无此概念
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getMemory(java.util.HashMap params)
			throws Exception;

	/**
	 * PM-00-01-03-01	磁盘物理IO操作速率	磁盘物理IO操作速率(秒)	Transferred Bytes(KBytes)
	 * PM-00-01-03-02	等待磁盘系统进程线程数	等待磁盘系统(disk、inode、cache、CDFS)的进程和线程数	使用iostat命令通过UA获取
	 * PM-00-01-03-03	磁盘忙的百分比	磁盘读写的时间占用总时间的百分比	
	 * PM-00-01-03-04	每秒磁盘读请求	每秒磁盘读请求字节数	
	 * PM-00-01-03-05	每秒磁盘写请求	每秒磁盘写请求字节数
	 *
	 * 获取这些指标需要发送1个soap请求
	 * PM-00-01-03-01  object=Disk_Performance
	 * ~~~PM-00-01-03-02/03/04/05采不到,可以通过命令iostat采,本程序不提供
	 * 
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getDisk(java.util.HashMap params)
			throws Exception;

	/**
	 * 
	 * PM-00-01-04-01	文件系统使用比率	文件系统已使用的空间与总空间的比值	Space Used Percent
	 * PM-00-01-04-02	交换区使用百分比	交换区使用百分比	= Swap Space Free/(Total Virtual Memory - Total Real Memory)
	 * PM-00-01-04-03	逻辑卷(裸设备)文件系统使用率	各逻辑卷上文件系统的使用率	Space Used Percent
	 * 
	 * 获取这些指标需要发送2个soap请求
	 * PM-00-01-04-01/03 Object=Disk
	 * PM-00-01-04-02    Object=System , 公式错误!ibm提供的公式应该是计算空闲百分比的。更正为 1- Swap Space Free*1024/(Total Virtual Memory - Total Real Memory)
	 * 
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getFileSystem(java.util.HashMap params)
			throws Exception;

	/**
	 * 
	 * PM-00-01-05-01	占用CPU时间(?)	进程单位时间在CPU中运行的时间	CPU Utilization
	 * PM-00-01-05-02	进程状态	进程状态包括运行,等待,阻塞,挂起,停止	Execution State
	 * PM-00-01-05-03	进程指令行	进程的指令行	                    Command
	 * PM-00-01-05-04	进程开始时间	进程启动的时间	                    StartTime
	 * PM-00-01-05-05	进程的规模	进程占用内存的空间大小	            Size (KBytes)
	 * PM-00-01-05-06	特定用户进程数	主机上某用户的当前进程连接数	        入库时使用SQL Count获取	 *
	 *  
	 * 获取这些指标需要发送1个soap请求
	 * PM-00-01-05-01/02/03/04/05 Object=Process
	 * ~~~PM-00-01-05-06 , 需要数据都上来后,通过sql语句获取,这里面有没有特定用户的参数
	 *  
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getProcess(java.util.HashMap params)
			throws Exception;

	/**
	 * 
	 * FM-00-01-01-03	主机网卡状态	该主机网卡的工作状态	Interface Status
	 * 	 
	 * 获取这些指标需要发送1个soap请求
	 * FM-00-01-01-03 Object=Network
	 * 
	 * @param params
	 * @return
	 * @throws Exception
	 */
	public abstract java.util.Vector getNetwork(java.util.HashMap params)
			throws Exception;
	
	public java.util.Vector getConfig(java.util.HashMap params)  
			throws Exception;
	
	/*
	 * dingran
	 */
	
	public java.util.Vector getDisk_WaitTime(java.util.HashMap params)  
			throws Exception;
	
	public java.util.Vector getIO_ProcessNumber(java.util.HashMap params)  
			throws Exception;
//	
//	public java.util.Vector getMemory_Useage(java.util.HashMap params)  
//			throws Exception;
}