SoftLayer API:获取设备的网络使用信息

SoftLayer API: Getting network usage information for a device

我正在尝试使用 SL API 来获取有关机器使用情况的信息。我正在查看指标 averageDailyPublicBandwidthUsage。对于裸机机器,它在此处列出: https://sldn.softlayer.com/reference/datatypes/SoftLayer_Hardware

这会返回一个浮点值,但有两个问题:

1) float value 的 rate 是多少? mb/s、kb/s、b/s?

2) 在我粘贴的 link 中可以看到关于带宽使用的几个指标。 averageDailyPublicBandwidthUsage 是衡量机器使用情况的理想指标吗?

谢谢!

averageDailyPublicBandwidthUsage 方法的结果应该是 GB/day 中服务器当前计费周期的平均使用量。

最好的选择是使用 Softlayer 的控制门户对其图形使用的相同方法,因为您可以轻松验证您检索的信息是否正确。因此,您所谈论的方法 return 值与控制门户中显示的值不同,因此处理它们非常棘手。

我推荐你使用这个方法:

http://sldn.softlayer.com/reference/services/SoftLayer_Metric_Tracking_Object/getSummaryData

该方法非常灵活,您可以在确定的日期获取有关带宽使用情况的信息,并且可以指定是否要查看平均使用情况或总使用情况(所有使用情况的总和)

例如使用 REST ful 请求:

POST https://$USERNAME:$APIKEY@api.softlayer.com/rest/v3/SoftLayer_Metric_Tracking_Object/$MetrictTrackingOBjectId/getSummaryData.json

Payload:

{
"parameters": [
"2017-02-16T00:00:00-00:00",
"2017-02-17T00:00:00-00:00",
[

{
"keyName": "PUBLICOUT",
"summaryType": "average"
}

],
300
]
}

要使用该方法,您只需要知道与机器关联的 $MetrictTrackingOBjectId,因为您只需要使用方法 getMetricTrackingObjectId

例如

GET https://$USERID:$APIKEY@api.softlayer.com/rest/v3/SoftLayer_Hardware_Server/$ServerID/getMetricTrackingObjectId

您还可以看到 metickObject 必须使用方法 getMetricDataTypes 获取信息的所有选项,例如

GET https://$USERID:$APIKEY@api.softlayer.com/rest/v3/SoftLayer_Metric_Tracking_Object/MetrictTrackingOBjectId/getMetricDataTypes.json

最后getSummaryData方法returns的数据是"bytes used by the interface in the period that you configured in the request"

在这种情况下,我们在请求中使用了 300 秒的时间段。例如,如果我们从请求中得到这个值:200856885

we can convert it like this:

200856885 * 8 = 1606855080 bits Converting to kbist 1606855080 / 1000 = 1606855.08 kbits Converting to Mbist 1606855.08 / 1000 = 1606.85 Mbits

1606.85/ 300 (summary period) = 5.356 Mbps

希望对你有帮助,我真的推荐你使用这个方法,因为可以提供更好的用法信息。

此致