所有 Edge for Private Cloud 客户都必须向 Apigee 提交有关 API 代理流量的统计信息。Apigee 建议您每天上传一次该信息,可以考虑通过创建 cron 作业来实现。
您必须提交生产 API 部署的统计信息,但不能提交开发或测试部署中的 API 的统计信息。在大多数 Edge 安装中,您将为生产 API 定义特定的组织或环境。您提交的统计信息仅适用于这些生产组织和环境。
将您的 API 流量统计信息提交给 Apigee
如需将统计信息提交到 Apigee,请执行以下操作:
- 使用 Edge Management API 收集数据。
- 通过电子邮件将数据发送至:edge.apiops@google.com
您必须对 Edge 安装中的每个生产组织和环境重复此过程。
收集数据
使用以下 curl 命令收集特定组织和环境在指定时间间隔内的流量数据:
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://ms_IP:8080/v1/organizations/org_name/environments/env_name/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
此命令使用 Edge Get API message count API。在此命令中:
- apigee_mgmt_api_email:apigee_mgmt_api_password 用于指定有权访问 Edge /stats API 的账号的电子邮件地址。
- ms_IP 是 Edge 管理服务器的 IP 地址或 DNS 名称。
- org_name 和 env_name 指定组织和环境。
- apiproxy 是按 API 代理对指标进行分组的维度。
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour指定要收集的指标的时间范围(按时间单位划分)。请注意,curl命令使用十六进制代码%20表示时间范围内的空格。
例如,如需在 24 小时内按小时收集 API 代理消息计数,请使用以下 API 调用。
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00&timeUnit=hour"
(请注意,timeRange 包含经过网址编码的字符。)
您应该会在表单中看到响应:
{
"environments" : [ {
"dimensions" : [ {
"metrics" : [ {
"name" : "sum(message_count)",
"values": [
{
"timestamp": 1514847600000,
"value": "35.0"
},
{
"timestamp": 1514844000000,
"value": "19.0"
},
{
"timestamp": 1514840400000,
"value": "58.0"
},
{
"timestamp": 1514836800000,
"value": "28.0"
},
{
"timestamp": 1514833200000,
"value": "29.0"
},
{
"timestamp": 1514829600000,
"value": "33.0"
},
{
"timestamp": 1514826000000,
"value": "26.0"
},
{
"timestamp": 1514822400000,
"value": "57.0"
},
{
"timestamp": 1514818800000,
"value": "41.0"
},
{
"timestamp": 1514815200000,
"value": "27.0"
},
{
"timestamp": 1514811600000,
"value": "47.0"
},
{
"timestamp": 1514808000000,
"value": "66.0"
},
{
"timestamp": 1514804400000,
"value": "50.0"
},
{
"timestamp": 1514800800000,
"value": "41.0"
},
{
"timestamp": 1514797200000,
"value": "49.0"
},
{
"timestamp": 1514793600000,
"value": "35.0"
},
{
"timestamp": 1514790000000,
"value": "89.0"
},
{
"timestamp": 1514786400000,
"value": "42.0"
},
{
"timestamp": 1514782800000,
"value": "47.0"
},
{
"timestamp": 1514779200000,
"value": "21.0"
},
{
"timestamp": 1514775600000,
"value": "27.0"
},
{
"timestamp": 1514772000000,
"value": "20.0"
},
{
"timestamp": 1514768400000,
"value": "12.0"
},
{
"timestamp": 1514764800000,
"value": "7.0"
}
]
}
],
"name" : "proxy1"
} ],
"name" : "prod"
} ],
"metaData" : {
"errors" : [ ],
"notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ]
}
}