public List<Hostgroup> getHostgroupsByHostid(String hostid) { HostGetParam param = new HostGetParam(); param.setHostids(Arrays.asList(hostid)); param.setOutput("extend"); param.setSelectGroups("extend"); List<Host> hosts = zabbixClient.host().get(param); if (hosts.isEmpty()) { return new ArrayList<Hostgroup>(); } return hosts.get(0).getGroups(); }
public List<Template> getTemplatesByHostid(String hostid) { // ホストに適用されているテンプレートを取得 HostGetParam param = new HostGetParam(); param.setHostids(Arrays.asList(hostid)); param.setOutput("extend"); param.setSelectParentTemplates("extend"); List<Host> hosts = zabbixClient.host().get(param); if (hosts.isEmpty()) { return new ArrayList<Template>(); } return hosts.get(0).getParenttemplates(); }
public Host getHost(String hostid) { HostGetParam param = new HostGetParam(); param.setHostids(Arrays.asList(hostid)); param.setOutput("extend"); List<Host> hosts = zabbixClient.host().get(param); // API実行結果チェック if (hosts.size() == 0) { // ホストが存在しない場合 throw new AutoException("EPROCESS-000402", hostid); } else if (hosts.size() > 1) { // ホストを複数参照できた場合 AutoException exception = new AutoException("EPROCESS-000403", hostid); exception.addDetailInfo("result=" + hosts); throw exception; } return hosts.get(0); }