Linuxword Global
当前位置: Linux技术 > 通过SolusVM的API对VPS进行流量进行监控

多数VPS提供的是SolusVM面板,该面板提供有API,可以监控VPS的运行信息以及进行重启、关机、开机等操作。

而一般我们需要对vps进行流量监控,跑超了玩意扣费或者进行准备工作

平时想看一下VPS信息的时候,要找一下开通邮件,然后点开面板地址,再把用户名和密码复制进去,好麻烦。

原本我是想自己写一个php的程序,刚开始写就发现有现成的,就直接拿来用了。不是我不尊重版权,我只记得这个程序是开源的,而悲剧的是文件里面没有写版权信息,所以我根本找不到是哪来的……

使用方法,分两步:

1,在SolusVM面板启用API,并且生成鉴权信息:

api-1024x558-1

2,在监控PHP程序里填写这些信息就好了:

php

怎么填写我就不罗嗦了,我在里面写了注释的,足够简单了。

注意,信息可能显示的有问题,有时候呢,某些服务商或者间歇性的可能看不到内存和硬盘使用情况,主要是看个带宽使用情况,以及有时候重启一下比较方便。有兴趣的也可以自己根据api进行功能扩展。

下载地址:

SolusVM-服务器状态-PHP   下载地址:https://linuxword.com/wp-content/uploads/2022/05/SolusVM-服务器状态-PHP.zip

怎么填写我就不罗嗦了,我在里面写了注释的,足够简单了。

注意,信息可能显示的有问题,有时候呢,某些服务商或者间歇性的可能看不到内存和硬盘使用情况,主要是看个带宽使用情况,以及有时候重启一下比较方便。有兴趣的也可以自己根据api进行功能扩展。

687474703a2f2f692e696d6775722e636f6d2f457230583979462e706e67687474703a2f2f692e696d6775722e636f6d2f37396c32624e6b2e706e67phpmonitor-1024x789-1

本程序对上个主题进行修改,只展示流量,并且可以对对个vps进行设置,只要使用solusvm生成API的都可以,并且将流量超过70%的进行黑色展示,防止流量超了,这样可以比较方便的监控VPS的流量情况,如果需要进行利用API进行多个管理,可以查看solusVMmanager

代码比较简单,如果需要多个功能可以自己写,例如超过发邮件什么的,但是定时执行下就可以

20191113173115-1024x272-1

<?php

$lists = array(
array("替换为API Key","替换为API Hash","替换为你的主机供应商SoluSVM地址", "备注1")
//多个可以拷贝上面,最后一个不加逗号,其他加即可
);

foreach($lists as $key ){
$result[] = post($key[0] , $key[1] , $key[2], $key[3]);
}

function humanFileSize($size, $unit="") {
if( (!$unit && $size >= 1<<30) || $unit == "GB")
return number_format($size/(1<<30),2)." GB";
if( (!$unit && $size >= 1<<20) || $unit == "MB")
return number_format($size/(1<<20),2)." MB";
if( (!$unit && $size >= 1<<10) || $unit == "KB")
return number_format($size/(1<<10),2)." KB";
return number_format($size)." bytes";
}

function post($keys , $hashs, $naserurls ,$beizhu) {

$postfields["key"] = $keys;
$postfields["hash"] = $hashs;
$postfields["action"] = "info";
$masterurl = $naserurls;
$postfields["status"] = "true";
$postfields["hdd"] = "true";
$postfields["mem"] = "true";
$postfields["bw"] = "true";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "{$masterurl}/api/client/command.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Expect: "));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

// Execute the request

$data = curl_exec($ch);

$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);

if($code != 200) {
$return['error'] = 1;

if($code == 405) {
$return['message'] = "Incorrect API credentials.";
return $return;
}

$return['message'] = "Invalid status code.";

return $return;
}

// Close the Curl handle

curl_close($ch);

if(!$data) {
$return['error'] = 1;
$return['message'] = "Error connecting to API.";

return $return;
}

// Extract the data

preg_match_all('/<(.*?)>([^<]+)<\/\\1>/i', $data, $match);

$result = array();
$result['bz'] = $beizhu;
foreach ($match[1] as $x => $y) {
$result[$y] = $match[2][$x];
}
//获取出错
if($result['status'] == "error") {
$result['error'] = 1;
$result['message'] = $result['statusmsg'];

return $result;
}
//获取正常
$result['error'] = 0;

$result['hdd'] = explode(",", $result['hdd']);
$result['mem'] = explode(",", $result['mem']);
$result['bw'] = explode(",", $result['bw']);
return $result;
}

 

?>

<?php foreach($result as $key ){
//var_dump($key);
?>
<div <?php if($key['bw'][3] >60){ ?>style="background:#000; color:#FFF"> <?php }?>
<h3>备注:<?php echo $key['bz']; ?> 带宽 <small> 已用 <?php echo humanFileSize($key['bw'][1]); ?> , 总量 <?php echo humanFileSize($key['bw'][0]); ?> ,比例 :<?php echo $key['bw'][3]; ?>%</small></h3>
<div>
<?php } ?>

 

 

 
 

「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

赞(0) 打赏
一分也是爱

支付宝扫一扫打赏

微信扫一扫打赏

上一篇:

下一篇:

相关推荐

博客简介

本站CDN采用VmShell免费提供离中国大陆最近的香港CMI高速网络做支撑,ToToTel打造全球最快速的边沿网络支撑服务,具体详情请见 :https://vmshell.com/ 以及 https://tototel.com/,网站所有的文件和内容禁止大陆网站搬迁复制,谢谢,VPS营销投稿邮箱: admin@linuxxword.com,我们免费帮大家发布,不收取任何费用,请提供完整测试文稿!

精彩评论

友情链接

他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

站点统计

  • 文章总数: 2591 篇
  • 草稿数目: 22 篇
  • 分类数目: 6 个
  • 独立页面: 0 个
  • 评论总数: 2 条
  • 链接总数: 0 个
  • 标签总数: 13021 个
  • 注册用户: 139 人
  • 访问总量: 8,652,639 次
  • 最近更新: 2024年11月21日