http://192.168.32.101:3000/api/zabbix/add_Host?env=test&host=zjtest9-app&ip=192.168.32.250&groupid=11&templateid=10001

 my $c = shift;
my $env = $c->param('env');
my $host = $c->param('host');
my $ip = $c->param('ip');
my $groupid = $c->param('groupid');
my $templateid = $c->param('templateid'); if ($env eq "pro"){
my $client = new JSON::RPC::Client;
my $url = 'http://192.168.32.xxx/zabbix/api_jsonrpc.php';
my $authID;
my $response; my $json = {
jsonrpc => "2.0",
method => "user.login",
params => {
user => "admin",
password => "zabbix"
},
id => 1
}; $response = $client->call( $url, $json );
print "-----------------\n";
print $response->content->{result} . "\n"; # Check if response was successful
die "Authentication failed\n" unless $response->content->{'result'}; $authID = $response->content->{'result'};
print "Authentication successful. Auth ID: " . $authID . "\n"; # Get list of all hosts using authID $json = {
jsonrpc => '2.0',
method => 'host.get',
params => {
output => [ 'hostid', 'name' ], # get only host id and host name
sortfield => 'name', # sort by host name
},
id => 2,
auth => "$authID",
};
$response = $client->call( $url, $json ); # Check if response was successful
die "host.get failed\n" unless $response->content->{'result'}; print "List of hosts\n";
foreach my $host ( @{ $response->content->{result} } ) {
print "Host ID: " . $host->{hostid} . " Host: " . $host->{name} . "\n";
} $json = {
"jsonrpc" => "2.0",
"method" => "host.create",
"params" => {
"host" => "$host",
"interfaces" => [
{
"type" => 1,
"main" => 1,
"useip" => 1,
"ip" => "$ip",
"dns" => "",
"port" => "10050"
}
],
"groups" => [ { "groupid" => "$groupid" } ],
"templates" => [ { "templateid" => "$templateid" } ]
},
"auth" => "$authID",
"id" => 1
};
$response = $client->call( $url, $json );
use Data::Dumper; my $str = Dumper($response);
print $str;
print "----------------------\n"; if ( $response->content->{result}){print "print $host added success\n";
$c->render(text => "$host added success" )}
else {print $response->content->{error}->{data};
print "\n";
$c->render(text => "$response->content->{error}->{data}" )}

zabbix 添加主机接口的更多相关文章

  1. zabbix添加监控主机(三)

    zabbix添加监控服务器. zabbix添加监控服务器(以添加10.10.100.137为例) (1)创建要监控的主机.点击配置(configuration)–>主机(host) –>创 ...

  2. zabbix添加邮件报警机制

    zabbix添加邮件报警机制 作者:尹正杰 还记得之前跟大家聊过的一个如何监控一个目录的话题吗?我们虽然监控出来数据了,也有数据了,但是,只是监控也没有用啊~因为我们不能24小时盯着屏幕然后 出了事情 ...

  3. zabbix 添加主机成功失败判断

    zabbix 成功添加后: $VAR1 = bless( { 'version' => 0, 'content' => { 'jsonrpc' => '2.0', 'id' => ...

  4. Zabbix 添加端口监控链接

    zabbix 添加端口监控 连接数: zabbix  配置  添加 监控项: 其他检测 方式也是 示例: zabbix 客户端配置文件添加: 编辑 zabbix_agentd.conf  添加  端口 ...

  5. zabbix添加对haproxy的监控

    zabbix添加对haproxy的监控 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy本身提供一个web页面 ...

  6. 给zabbix添加percona监控模板

    简单说明一下给zabbix添加的percona的监控模板. 在percona官方网站有说明怎么安装,这里记录下步骤.首先搭建好的zabbix环境. 监控插件连接 : 链接:https://pan.ba ...

  7. Zabbix 添加对交换机端口流量超出阈值的监控

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 22 Zabbix 添加对交换机端口流量超出阈值的监控 本文主要讲解利用zabbix 添加对交换机 ...

  8. zabbix添加对自定义无规则的关键日志文件的监控

    zabbix添加对自定义无规则日志文件的监控 项目背景及思路: zabbix自带有针对日志文件的监控,自带的监控只能监控到指定文件或者正则匹配的固定日志文件,但当需要监控的文件名没有规律的时候自带监控 ...

  9. zabbix添加Tomcat监控

    参靠了网上一些关于zabbix添加Tomcat的监控配置,自己整理了下: 一.服务器端配置1.找到zabbix源码存放路径 # find / -name zabbix_java #/usr/local ...

随机推荐

  1. Qt容器类的对象模型及应用(线性结构篇)(好多图,比较清楚)

    用Qt做过项目开发的人,肯定使用过诸如QList.QVector.QLinkList这样的模板容器类,它们虽然名字长的不同,但使用方法都大致相同, 因为其使用方法都大体相同,很多人可能随便拿一个容器类 ...

  2. Sicily-1050 深度优先搜索

    一.      题意 给出5个数和4则运算,看能不能算出目标值出来,如果算不出来就算出比目标值小的最大值.深搜:每一步选两个数做运算,然后算出的结果作为下一步的其中一个操作数.每一步选数有C(5,2) ...

  3. hdu 5269 ZYB loves Xor I(字典树)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5269 思路分析:当lowbit(AxorB)=2p 时,表示A与B的二进制表示的0-p-1位相等,第p ...

  4. poj 2153 Rank List(查找,Map)

    题目链接:http://poj.org/problem?id=2153 思路分析: 判断Li Ming的成绩排名,需要在所有的数据章查找成绩比其高的人的数目,为查找问题. 查找问题可以使用Hash表, ...

  5. 偶然碰到的Win7 64位下CHM 的问题解决

    最近下了几个沪江资料,都是chm格式的,但是在win7 64位下,都显示不了里面的音频和视频flash之类的控件,虽然可以通过源文件的方式打开视频文件,但是很麻烦.    网上似乎碰到的人也不是很多, ...

  6. Spark调研笔记第2篇 - 怎样通过Sparkclient向Spark提交任务

    在上篇笔记的基础上,本文介绍Sparkclient的基本配置及Spark任务提交方式. 1. Sparkclient及基本配置 从Spark官网下载的pre-built包中集成了Sparkclient ...

  7. Oracle定时器调用存储过程

    1. 创建表 create table job_table(run_time date); 2. 创建存储过程 create or replace procedure job_proc is begi ...

  8. windows cmd: 增强windows命令行

    1. 安装clink插件使得windows cmd.exe更好用 https://github.com/mridgers/clink/releases Overview: Clink combines ...

  9. sqm(sqlmapGUI) pcat修改版

    sqlmap是一款开源的注入工具,支持几乎所有的数据库,支持get/post/cookie注入,支持错误回显注入/盲注,还有其他多种注入方法. 支持代理,指纹识别技术判断数据库 .而sqm(sqlma ...

  10. CBV进阶(一)

    http_method_names , http_method_not_allowd 用途:views只接受这些请求. 范围View Default:['get', 'post', 'put', 'p ...