开发者社区> 问答> 正文

监控总流量

mr.rr 2016-03-05 22:44:08 1455

云监控似乎没有提供某个时间段总流量的视图, 今天尝试根据提供的API去获取下某个时间段内的总流量(如果我没有理解错, 应该使用 InternetTX 这个字段).

按照API的约束, 最多可以获取到 400 小时内的数据, 尝试统计了下某台机器 3月1日0点到3月5日0点 的总流量. 540MB 左右. 因为我的这个配置是机器包月, 流量按照使用量计费, 也就是 ¥1/GB . 那么计费应该是 ¥0.5 , 但是在费用明细里看到的却是 ¥0.17 . 出入非常大. 不知道是不是使用姿势不对?

var ALY = require('aliyun-sdk');
var ecs = new ALY.ECS({
    accessKeyId: "my access key id",
    secretAccessKey: "my secret access key",
    endpoint: 'https://ecs.aliyuncs.com',
    apiVersion: '2014-05-26'
});

ecs.describeInstanceMonitorData({
    "InstanceId": 'my instance id',
    "StartTime": "2016-03-01T00:00:00Z",
    "EndTime": "2016-03-05T00:00:00Z",
    "Period": "3600"
}, function(err, res) {
    var totalTranffic = 0;
    var trafficDataList = [];
    try {
        trafficDataList = res.MonitorData.InstanceMonitorData;
    } catch(e) {}

    trafficDataList.forEach(function(item) {
        totalTranffic += +item.InternetTX;
    });

    console.log(totalTranffic / 8 / 1024 + 'MB');
});
分享到
取消 提交回答
全部回答(0)