Skip to content

nicky1224/zabbix-api

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zabbix-api

zabbix-api for java

https://www.zabbix.com/wiki/doc/api

https://www.zabbix.com/documentation/2.4/manual/api/reference/user/login

Based on zabbix api version 2.4.

Zabbix api version 2.2 will throw a exception.

##Info API is simple, beacuse java can not process json like dynamic language.

You can build you own Request Object.

public interface ZabbixApi { public void init(); public void destory(); public String apiVersion(); public JSONObject call(Request request); public boolean login(String user, String password); }

##Example

String url = "http://192.168.90.102/zabbix/api_jsonrpc.php"; zabbixApi = new DefaultZabbixApi(url); zabbixApi.init(); boolean login = zabbixApi.login("zabbix.dev", "goK0Loqua4Eipoe"); System.err.println("login:" + login); String host = "192.168.66.29"; JSONObject filter = new JSONObject(); filter.put("host", new String[] { host }); Request getRequest = RequestBuilder.newBuilder()	.method("host.get").paramEntry("filter", filter)	.build(); JSONObject getResponse = zabbixApi.call(getRequest); System.err.println(getResponse); String hostid = getResponse.getJSONArray("result")	.getJSONObject(0).getString("hostid"); System.err.println(hostid);

You can set your own HttpClient.

RequestConfig requestConfig = RequestConfig.custom()	.setConnectTimeout(5 * 1000).setConnectionRequestTimeout(5 * 1000)	.setSocketTimeout(5 * 1000).build(); PoolingHttpClientConnectionManager connManager = new PoolingHttpClientConnectionManager(); CloseableHttpClient httpclient = HttpClients.custom().setConnectionManager(connManager)	.setDefaultRequestConfig(requestConfig).build(); ZabbixApi zabbixApi = new DefaultZabbixApi( "http://localhost:10051/zabbix/api_jsonrpc.php", httpclient); zabbixApi.init(); String apiVersion = zabbixApi.apiVersion(); System.out.println("api version:" + apiVersion); zabbixApi.destory();

##Maven dependency

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

##Links

https://github.com/hengyunabc/zabbix-sender

##Licence Apache License V2

About

zabbix-api for java

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Java 100.0%