Как включить геоагрегацию и географические карты

Агрегирование данных о местоположении позволяет собирать аналитические данные для вызовов API на основе географических атрибутов, таких как регион, континент, страна и город. На основе этих данных в новом интерфейсе Edge можно посмотреть карту, на которой показано, откуда поступают запросы к API.

Сводка GeoMap в новом интерфейсе Edge

Географические агрегированные данные извлекаются из сторонней базы данных и добавляются к данным аналитики, собранным Edge. Географическая информация может содержать город, страну, континент, часовой пояс и регион запроса, отправленного в прокси-сервер API.

Чтобы использовать геоагрегирование, необходимо приобрести базу данных Maxmind GeoIp2, которая содержит эту географическую информацию. Дополнительную информацию можно найти на странице https://www.maxmind.com/en/geoip2-databases.

Включение агрегирования по местоположению

По умолчанию агрегирование по местоположению отключено. Чтобы включить агрегирование по местоположению, выполните следующие действия:

  • На всех серверах Qpid установите базу данных MaxMind и настройте сервер Qpid для ее использования.
  • Включите показ географической карты в новом интерфейсе Edge.

Установите базу данных MaxMind на всех серверах Edge Qpid.

Чтобы установить базу данных MaxMind на все серверы Edge Qpid, выполните следующие действия:

  1. Получите базу данных Maxmind GeoIp2.
  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/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. Выполните запрос SELECT для таблицы analytics.agg_geo, чтобы показать строки с географическими атрибутами:
      select * from analytics.agg_geo;

      В результатах запроса должны быть следующие столбцы, извлеченные из базы данных Maxmind GeoIp2: ax_geo_city, ax_geo_country, ax_geo_continent, ax_geo_timezone, ax_geo_region.

      Если таблица agg_geo не заполняется, проверьте журналы сервера Qpid в каталоге /opt/apigee/var/log/edge-qpid-server/logs/, чтобы выявить возможные исключения.

Как включить географические карты в новом интерфейсе Edge

Чтобы включить географические карты в новом интерфейсе Edge, выполните следующие действия:

  1. Чтобы включить географические карты, задайте в /opt/apigee/customer/application/management-ui.properties следующий токен: Если такого файла нет, создайте его:
    conf_uebe_disableGeoMap=false
  2. Смените владельца файла management-ui.properties на пользователя apigee:
    chown apigee:apigee /opt/apigee/customer/application/management-ui.properties
  3. Перезапустите новый интерфейс Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart
  4. В новом интерфейсе Edge выберите Analyze (Анализ) > End Users (Конечные пользователи) > 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/apigee-service/bin/apigee-service edge-qpid-server restart
  7. Повторите этот процесс на каждом узле Qpid.