zabbix api的使用

1.概述:zabbix监控基础设施内存,cpu等使用情况。

2.创建item:

    常用:【cpu占用:system.cpu.util[,pused,avg60]

                内存占用:vm.memory.size[pused]

                存储占用:vfs.fs.size[/,pused]】

    type--Zabbix_aggregate

    key--grpavg["主机名称","system.cpu.util[,user]",avg,1]

3.使用api获取监控历史记录:

获取已知ID的item历史记录,查询API如下:api文档地址

zabbix api的使用

pom文件中添加:

<dependency>
	<groupId>io.github.hengyunabc</groupId>
	<artifactId>zabbix-api</artifactId>
	<version>0.0.1</version>
</dependency>

获取历史代码如下:

public class ZabbixUtil extends DefaultZabbixApi{

    private static final Logger LOGGER = LoggerFactory.getLogger(ZabbixUtil.class);

    private ZabbixApi zabbixApi;

    public ZabbixUtil(String username, String password, String url) throws Exception {
        if (StringUtils.isBlank(username) || StringUtils.isBlank(password) || StringUtils.isBlank(url)){
            throw new Exception("ZabbixApi初始化失败!参数不全!");
        }
        login(username, password, url);
    }
    //url="http://xx.com/api_jsonrpc.php"
    private ZabbixApi login(String username, String password, String url) throws Exception {
        zabbixApi = new DefaultZabbixApi(url);
        zabbixApi.init();
        boolean login = zabbixApi.login(username, password);
        if(!login){
            LOGGER.info(username + " login in Zabbix " + (login ? "SUCCESS" : "FALURE") + " !");
        }
        return zabbixApi;
    }

    /**
     * 获取Item历史记录
     * @param itemid
     * @return 历史记录
     */
    public String getHistoryByItemid(Integer itemid) throws Exception {
        Request request = RequestBuilder.newBuilder().method("history.get")
                .paramEntry("output", "extend")
                .paramEntry("itemids", "itemid")
                .paramEntry("sortfield", "clock")
                .build();
        JSONObject response = zabbixRequest(request);
        zabbixError(response);
        JSONArray result = response.getJSONArray("result");
        return result.toJSONString();
    }
}

参考文档:http://blog.csdn.net/u012743772/article/details/78049322


用到的配置:https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/aggregate

开发文档:https://www.zabbix.com/documentation/2.4/manual/api