当前位置:   article > 正文

阿里云ECS流量计算_如何查看阿里云流量使用情况csdn

如何查看阿里云流量使用情况csdn

阿里云没有拉取ECS具体使用流量的方法,折腾了几天。摸清楚了他的算法,计算出来的值和阿里云流量具体使用差不多

1.拉取流量图数据,使用APIDescribeInstanceMonitorData, 使用 InternetTX (发送流量)

2.时间间隔值设置为600s,即为10分钟。

3.将拉去到的点数据,使用梯形面积公式,相邻的两个点计算面积。最后加到一起

4.因为流量图数据的单位是 kbit/s,转换为MB即将得到的数据  / 1024 / 1024 / 8。得到时间段中使用的了流量、

  1. # 这里的$InternetTx是拉取到的发送流量数据,数据为一维数组 (时间戳 => 流量速率数据 )
  2. ksort($InternetTX);
  3. $thisTimeFlow = 0;
  4. # 梯形算法
  5. foreach( $InternetTX as $key=>$value ){
  6. $thisFlow = $value;
  7. if( empty($lastFlow) ) {
  8. $lastFlow = $thisFlow;
  9. continue;
  10. }
  11. $thisTimeFlow += ($thisFlow + $lastFlow) * 600 / 2;
  12. $lastFlow = $thisFlow;
  13. }
  14. # bt 转为MB
  15. $thisTimeFlow = round($thisTimeFlow/ (1024 * 1024 * 8), 2);

后面发现流量不太对,还是请教了阿里云这边的算法

根据 [InternetTX] 的数值,乘以1024再除以8,转换为Byte单位,然后再除以两个1024就是转换为 MB了,再将1小时内的流量加起来

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/630577
推荐阅读
相关标签
  

闽ICP备14008679号