‘壹’ zabbix 3版本 需要什么php版本
php的,用了thinkphp框架,i wipe,又造一遍轮子,之前和小伙伴@淑高用python弄过一个简单的运维后台,集成了saltstack和ansible,后来离职了就没搞了),现在想在cmdb系统中显示服务器的一些基本监控情况,这里用到zabbix api来获取服务器信息。
zabbix api 需要post过去的数据格式如下
Shell
{
"jsonrpc": "2.0",
"method": "method.name",
"params": {
"param_1_name": "param_1_value",
"param_2_name": "param_2_value"
},
"id": 1,
"auth": "",
}
‘贰’ grafana无法连接zabbix Data Sources Could not connect to given url
解决方法
1.不要使用官方的localhost的路径,具体原理我不太懂,但是假如你的zabbix部署用了nginx或者其他的 ,可能zabbix还有端口。
2. http://yourip:9502/api_jsonrpc.php 修改为这样试试
reference:
https://github.com/alexanderzobnin/grafana-zabbix/issues/586
‘叁’ zabbix jsrpc.php 什么东西
“jsonrpc”: “2.0”-这是标准的JSON RPC参数以标示协议版本。所有的请求都会保持不变。
“method”: “method.name”-这个参数定义了真实执行的操作。例如:host.create、item.update等等
“params”-这里通过传递JSON对象来作为特定方法的参数。如果你希望创建监控项,”name”和”key_”参数是需要的,每个方法需要的参数在Zabbix API文档中都有描述。
“id”: 1-这个字段用于绑定JSON请求和响应。响应会跟请求有相同的”id”。在一次性发送多个请求时很有用,这些也不需要唯一或者连续
“auth”: “″-这是一个认证令牌【authentication token】用以鉴别用户、访问API。这也是使用API进行相关操作的前提-获取认证ID。
‘肆’ 求教,比特币钱包怎么与php建立连接
当我们希望在Php开发的网站中加入比特币支付功能时,需要解决的第一个 问题,就是如何在Php程序代码中调用比特币钱包的RPC API开发接口来实现 我们期望的功能,例如比特币的支付与接收。
例如,当我们希望在Php代码中给某个比特币地址发送以太币时,可以使用sendtoaddress这个RPC接口,可以传入以下参数:
ToAddress:接收地址
Amount:发送的比特币数量
Comment:备注文本
CommentTo:备注接收人
AutoFeeSubtract:是否自动扣除手续费,默认值:false
上面的参数中,只有ToAddress和Amount是必须的。当调用完成时, 将返回该笔交易对应的ID。
下面的代码使用GuzzleHttp来调用sendtoaddress接口向指定的地址发送 0.12个比特币:
<?php
require('../vendor/autoload.php');
useGuzzleHttpClient;
$client=newClient();
$opts=[
'json'=>[
'jsonrpc'=>'1.0',
'method'=>'sendtoaddress',
'params'=>['',0.12],
'id'=>time()
]
];
$rsp=$client->post('http://user:pass@localhost:8332',$opts);
echo$rsp->getBody().PHP_EOL;
上面的代码假设你的比特币钱包在本机的8332端口监听RPC调用请求,这也是 比特币钱包默认的监听端口。
比特币钱包提供了非常丰富的RPC接口,我们可以在Php代码中非常轻松 地加入对比特币支付的支持。如果你希望快速掌握在自己的Php网站集成对 比特币的支持,可以访问汇智网的php比特币开发详解教程。