2016-08-04 95 views
0

我正在使用getMemoryMetricDataByDate分析Softlayer Virtual Guests过去三个月的内存使用情况。示例guest上的规格为maxCpu = 2,maxMemory = 8192 MB。Softlayer API内存使用情况

内存使用率报告为maxMemory的89%至100%。这对于这台服务器来说似乎不正确。一个例子是数据点:

[counter] => 8127187622.8697 
[dateTime] => 2016-05-04T18:00:00-06:00 
[type] => memory_usage 

在所述一组数据点183,最小计数值是7652222531.7333(字节)max是8589934592(字节)。

为了进行交叉检查,我使用getMemoryMetricImageByDate为同一日期范围提取了图形图像。见下文。该图显示了两行。第一款平均内存为1.6 GB,最大为11.1 GB。第二行显示内存平均值为5.3 GB,最大值为220.1 GB。

我的问题是:

为什么图表上有两行?

为什么getMemoryMetricDataByDate和getMemoryMetricImageByDate之间的数据显着不同,因为每次调用都指定了完全相同的虚拟客人和日期范围?

回答

1

我建议你使用控制门户用来获取使用数据的方法。

它使用此方法: http://sldn.softlayer.com/reference/services/SoftLayer_Metric_Tracking_Object/getSummaryData

与所取得的数据,门户创建图像。所以请尝试一下它应该包含更加精确的数据的方法。

RESTful example: 

POST https://api.softlayer.com/rest/v3.1/SoftLayer_Metric_Tracking_Object/$MetircOBjectID/getSummaryData 

body: 
{ 
    "parameters": [ 
     "2016-08-04 00:00:00 America/Chicago", 
     "2016-08-05 23:59:59 America/Chicago", [{ 
      "keyName": "MEMORY_USAGE", 
      "summaryType": "max" 
     }], 
     600 

    ] 
} 

注:替换$ MetircOBjectID

为了得到虚拟客户使用这种基于REST的

GET https://api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/$VirtualGuestId/getMetricTrackingObjectId 

注意的相关MetircOBjectID:替换$ VirtualGuestId

问候