Всем привет.
Столкнулся с проблемой,а именно с получением Inventory хоста,нужны конкретно широта и долгота хостаУдалось подключится к Забиксу используя Java и блиотеку David Webb.
Подключение и токен :
Попытки вывести инвентарь :
Не могу правильно сформулировать JSON запрос,который бы уже подогнал под данную реализацию.
Буду рад любой помощи,спасибо.
Столкнулся с проблемой,а именно с получением Inventory хоста,нужны конкретно широта и долгота хостаУдалось подключится к Забиксу используя Java и блиотеку David Webb.
Подключение и токен :
Code:
import org.json.JSONObject;
import org.json.JSONException;
import com.goebl.david.Webb;
public class Zabbix_auth {
public static void main(String[] args) throws JSONException {
try {
JSONObject mainJObj = new JSONObject();
JSONObject paramJObj = new JSONObject();
mainJObj.put("jsonrpc", "2.0");
mainJObj.put("method", "user.login");
paramJObj.put("user", "login");
paramJObj.put("password", "password");
mainJObj.put("params", paramJObj);
mainJObj.put("id", "1");
Webb webb = Webb.create();
System.out.println("Data to send: " + mainJObj.toString());
JSONObject result = webb.post("http://localhost/api_jsonrpc.php")
.header("Content-Type", "application/json")
.useCaches(false)
.body(mainJObj)
.ensureSuccess()
.asJsonObject()
.getBody();
System.out.println("Authentication token: " + result.getString("result"));
} catch (JSONException je) {
System.out.println("Error creating JSON request to Zabbix API..." + je.getMessage());
}
}
}
Code:
import org.json.JSONObject;
import org.json.JSONException;
import com.goebl.david.Webb;
public class Host_info_get {
public static void main(String[] args) throws JSONException {
try {
JSONObject mainJObj = new JSONObject();
JSONObject paramJObj = new JSONObject();
mainJObj.put("jsonrpc", "2.0");
mainJObj.put("method", "host.get");
paramJObj.put("output", "location_lat");
mainJObj.put("params", paramJObj);
mainJObj.put("id", "2");
mainJObj.put("auth", "Token");
Webb webb = Webb.create();
System.out.println("Data to send: " + mainJObj.toString());
JSONObject result = webb.post("http://localhost/api_jsonrpc.php")
.header("Content-Type", "application/json")
.useCaches(false)
.body(mainJObj)
.ensureSuccess()
.asJsonObject()
.getBody();
System.out.print("Host info: " + result.getString("result"));
} catch (JSONException je) {
System.out.println("Unable to get to host" + je.getMessage());
}
}
}
Буду рад любой помощи,спасибо.
Comment