软层 API 内存使用

Softlayer API memory usage

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

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

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

在 183 个数据点的集合中,最小计数器值为 7652222531.7333(字节),最大值为 8589934592(字节)。

为了交叉核对,我使用 getMemoryMetricImageByDate 提取了同一日期范围内的图形图像。见下文。图表显示两条线。第一个平均内存为 1.6 GB,最大内存为 11.1 GB。第二行显示平均内存为 5.3 GB,最大内存为 220.1 GB。

我的问题是:

为什么图表上有两条线?

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

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

它使用了这个方法: 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

为了获取虚拟访客的关联 MetircOBjectID,请使用此 RESTFul

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

注意:替换 $VirtualGuestId

此致