启用地理聚合和地理地图

Edge for Private Cloud v4.18.01

通过地理位置汇总,您可以根据区域、大洲、国家/地区和城市等地理属性收集 API 调用的分析数据。根据这些分析数据,您可以在 Edge 界面中查看显示 API 请求位置的 GeoMap:

地理位置汇总的工作原理是从第三方数据库中提取地理位置数据,并将其添加到 Edge 收集的分析数据中。地理位置信息可以包含向 API 代理发出的请求所在的城市、国家/地区、大洲、时区和区域。

如需使用地理位置汇总,您必须购买包含此地理位置信息的 Maxmind GeoIp2 数据库。如需了解详情,请参阅 https://www.maxmind.com/en/geoip2-databases。

启用地理位置汇总

默认情况下,地理位置汇总功能处于停用状态。如需启用地理位置汇总,您必须:

  • 在所有 Qpid 服务器上,安装 MaxMind 数据库并配置 Qpid 服务器以使用该数据库。
  • 在 Edge 界面中启用地理图显示。

在所有 Edge Qpid 服务器上安装 MaxMind 数据库

请按照以下步骤在所有 Edge Qpid 服务器上安装 MaxMind 数据库:

  1. 获取 Maxmind GeoIp2 数据库。
    注意:地理位置汇总的工作原理是将第三方数据库中的地理位置数据添加到 Edge 收集的分析数据中。如需使用地理位置汇总,您必须购买包含此信息的 Maxmind GeoIp2 数据库。如需了解详情,请参阅 https://www.maxmind.com/en/geoip2-databases。
  2. 在 Qpid 服务器节点上创建以下文件夹:
    /opt/apigee/maxmind
  3. 将 Maxmind GeoIp2 数据库下载到 /opt/apigee/maxmind。
  4. 将数据库文件的所有权更改为“apigee”用户:
    > chown apigee:apigee /opt/apigee/maxmind/GeoIP2-City_20160127.mmdb
  5. 将数据库的权限设置为 744:
    > chmod 744 /opt/apigee/maxmind/GeoIP2-City_20160127.mmdb
  6. 在 /opt/apigee/customer/application/qpid-server.properties 中设置以下令牌。 如果该文件不存在,请创建它:
    conf_ingestboot-service_vdim.geo.ingest.enabled=true
    conf_ingestboot-service_vdim.geo.maxmind.db.path=/opt/apigee/maxmind/GeoIP2-City_20160127.mmdb


    如果您将 Maxmind GeoIp2 数据库存储在其他位置,请相应地修改路径属性。

    请注意,此数据库文件包含版本号。如果您稍后收到更新后的数据库文件,该文件可能具有不同的版本号。或者,创建指向数据库文件的符号链接,并在 qpid-server.properties 中使用该符号链接。

    例如,为“GeoIP2-City-current.mmdb”创建指向“GeoIP2-City_20160127.mmdb”的符号链接。如果您日后收到具有不同文件名的新数据库,则只需更新符号链接,而无需重新配置和重启 Qpid 服务器。
  7. 将 qpid-server.properties 文件的所有权更改为“apigee”用户:
    > chown apigee:apigee /opt/apigee/customer/application/qpid-server.properties
  8. 重启 Qpid 服务器:
    > /opt/apigee/bin/apigee-service/bin/apigee-service edge-qpid-server restart
  9. 在每个 Qpid 节点上重复此过程。
  10. 如需验证地理位置汇总是否正常运行,请执行以下操作:
    1. 在示例 API 代理上触发多个 API 代理调用。
    2. 等待大约 5 - 10 分钟,让汇总完成。
    3. 打开控制台并连接到 Edge Postgres 服务器:
      > psql -h /opt/apigee/var/run/apigee-postgresql/ -U apigee -d apigee
    4. 对表 analytics.agg_geo 执行 SELECT 查询,以显示具有地理属性的行:
      apigee=# select * from analytics.agg_geo;

      您应该会在查询结果中看到从 Maxmind GeoIp2 数据库中提取的以下列:ax_geo_city、ax_geo_country、ax_geo_continent、ax_geo_timezone、ax_geo_region。

      如果 agg_geo 表未填充,请检查 /opt/apigee/var/log/edge-qpid-server/logs/ 处的 Qpid 服务器日志,以检测任何潜在的异常。

在 Edge 界面中启用地理图

请按照以下步骤在 Edge 界面中启用地理图:

  1. 在 /opt/apigee/customer/application/ui.properties 中设置以下令牌,以启用地理图。如果该文件不存在,请创建它:
    conf_apigee_apigee.feature.disablegeomap=false
  2. 将 ui.properties 文件的所有权更改为“apigee”用户:
    > chown apigee:apigee /opt/apigee/customer/application/ui.properties
  3. 重启 Edge 界面:
    > /opt/apigee/bin/apigee-service/bin/apigee-service edge-ui restart
  4. 在 Edge 界面中,选择分析 > GeoMap 以显示地理汇总数据。

更新 MaxMind GeoIp2 数据库

MaxMind 会定期更新 Maxmind GeoIp2 数据库。如果您收到更新后的数据库,请按照以下步骤在 Edge 上安装该数据库:

  1. 获取更新后的 Maxmind GeoIp2 数据库。
  2. 将 Maxmind GeoIp2 数据库下载到 /opt/apigee/maxmind。
  3. 检查数据库文件的名称。如果它与旧文件相同(如 /opt/apigee/customer/application/qpid-server.properties 中所定义),请继续执行下一步。但是,如果文件具有不同的名称,则必须修改 qpid-server.properties 文件以指定新数据库文件的名称,然后重启 Qpid 服务器,如上所述。

    或者,您也可以创建指向该文件的符号链接。例如,为“GeoIP2-City-current.mmdb”创建指向“GeoIP2-City_20160127.mmdb”的符号链接。如果您稍后收到具有不同文件名的新数据库,则只需更新符号链接,而无需重新配置 Qpid 服务器。
  4. 将数据库文件的所有权更改为“apigee”用户:
    > chown apigee:apigee /opt/apigee/maxmind/GeoIP2-City_20160127.mmdb
  5. 将数据库的权限设置为 744:
    > chmod 744 /opt/apigee/maxmind/GeoIP2-City_20160127.mmdb
  6. 重启 Qpid 服务器:
    > /opt/apigee/bin/apigee-service/bin/apigee-service edge-qpid-server restart
  7. 在每个 Qpid 节点上重复此过程。