虚拟服务、服务引擎、池、服务器、虚拟机和主机对象支持衡量指标。

所有衡量指标 API 都具有以下语法:

https://${controller}/api/analytics/metrics/ ${object_type}/${object_uuid}/?metric_id=${metric_id}& ${additional_kv_options}

默认情况下,API 使用租户管理员。要对特定的非管理员租户执行查询,请添加 HTTP 标头 X-AVI-TENANT。在指定 X-AVI-TENANT 标头后,将先针对该租户检查用户访问权限,然后再为分析 API 提供服务。

例如,可使用以下 API 查询虚拟服务 virtualservice-abc 在过去 6 小时内每间隔 5 分钟的 metricsl4_client.avg_bandwidthl7_client.avg_complete_responses(72 个样本):

https://avicontroller/api/analytics/metrics/ virtualservice/virtualservice-abc/?metric_id=l4_client.avg_bandwidth, l7_client.avg_complete_responses&limit=72&step=300

在所有选项中,limitstepstartstop 协同工作。step 表示汇总衡量指标的持续时间粒度。例如,step=300 表示将在 5 分钟的持续时间范围内使用衡量指标计算平均值、总和、最大值等。

衡量指标 API 将每 5 分钟(由 step 指示)返回一个值。NSX Advanced Load Balancer 解决方案最多支持三个 step 值:300、3600、86400。如果未指定 startstop,则假定 stop 是最近的 UTC 时间,并使用以下公式计算 startstop - limit * step。仅当指定 startstep 时,解决方案才会根据以下公式计算 limit 的值:(stop - start) / step,以返回从 time = start 开始的所有可用衡量指标。

有关通过 API 检索衡量指标的更多信息,请参阅衡量指标 API

有关配置衡量指标收集的步骤的信息,请参阅衡量指标收集

使用 API 检索衡量指标

  1. 获取过去 6 小时的衡量指标:limit=72 & step=300。

  2. 获取过去 1 天的衡量指标:limit=288 & step=300。

  3. 获取自 T1 以来的衡量指标:start=T1 & step=300。

  4. 获取最新的单个衡量指标:limit=1 & step=300。