将 API 流量统计信息提交到 Apigee

所有适用于私有云客户的 Edge 都必须提交有关 API 的统计信息 将流量代理到 Apigee。Apigee 建议您每天上传一次这些信息,可能的话 创建 Cron 作业

您必须提交生产 API 部署的统计信息,但不提交正在开发的 API 的统计信息 或测试部署在大多数 Edge 安装中,您需要定义特定组织或 为生产 API 提供最佳环境。您提交的统计信息仅适用于 组织和环境。

将您的 API 流量统计信息提交到 Apigee

如需向 Apigee 提交统计信息,请执行以下操作:

  1. 使用 Edge Management API 收集数据
  2. 通过电子邮件将数据发送至:edge.apiops@google.com

您必须对每个生产组织重复此过程, 环境。

收集数据

使用以下 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 消息计数 API。在此命令中:

  • apigee_mgmt_api_email:apigee_mgmt_api_password 用于指定 有权访问 Edge /stats API 的账号的电子邮件地址。
  • ms_IP 是边缘的 IP 地址或 DNS 名称 管理服务器。
  • org_nameenv_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" ]
  }
}