Как экспортировать и импортировать определения специальных отчетов

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Вы можете использовать API Edge для экспорта и импорта специальных отчетов из одной среды организации в другую. Этот полезный метод позволяет повторно использовать понравившиеся вам макеты специальных отчетов в разных организациях и средах. Кроме того, вы можете сохранить дизайн (простой текстовый файл JSON) в CSV-файле.

Сначала используйте API Lists analytics report definitions, чтобы получить UUID всех отчетов, определенных для организации:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/org-name/reports" \
  -u email:password 

Для каждого отчета в выходных данных указывается его отображаемое имя (которое вы видите в интерфейсе Edge) и UUID:

{
  "qualifier": [
    {
      "displayName": "My Report 1",
      "name": "cb7cd16a-44c4-0bc83c3b9c92"
    },
    {
      "displayName": "My Other Report",
      "name": "a7e3fc4e-992a2ffc0e3d49d"
    },
    ...
  ]
}

Теперь используйте UUID нужного отчета, чтобы получить его определение, вызвав API Get an analytics report definition (Получить определение отчета Аналитики). В этом примере вы получите определение отчета "Мой отчет 1":

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/org-name/reports/cb7cd16a-44c4-0bc83c3b9c92" \
  -u email:password 

В выходных данных будет определение отчета:

{
  "chartType": "column",
  "comments": [],
  "createdAt": 1506922614000,
  "createdBy": "11.111.121.57",
  "dimensions": [
    "apiproxy",
    "proxy_pathsuffix",
    "proxy_client_ip"
  ],
  "displayName": "My Report 1",
  "environment": "prod",
  "lastModifiedAt": 1512435450000,
  "lastModifiedBy": "111.111.121.57",
  "lastViewedAt": 1512435450000,
  "metrics": [
    {
      "function": "avg",
      "name": "response_size"
    },
    {
      "function": "avg",
      "name": "request_size"
    }
  ],
  "name": "cb7cd16a-44c4-0bc83c3b9c92",
  "organization": "myOrg",
  "properties": [
    {
      "property": "__ui__",
      "value": [
        {
          "name": "description"
        },
        {
          "name": "accuracy"
        }
      ]
    }
  ],
  "sortbyCols": [],
  "tags": [],
  "timeUnit": "hour"
}

Скопируйте выходные данные JSON и при необходимости измените поля environment и organization для целевого местоположения, а затем импортируйте определение с помощью API Создание определения отчета аналитики.

Например, чтобы импортировать определение в среду test организации с названием destOrg, выполните следующие действия:

curl -X POST -H "Content-Type: application/json" "https://api.enterprise.apigee.com/v1/organizations/destOrg/reports" \
-d "{
  "chartType": "column",
  "comments": [],
  "createdAt": 1506922614000,
  "createdBy": "11.111.121.57",
  "dimensions": [
    "apiproxy",
    "proxy_pathsuffix",
    "proxy_client_ip"
  ],
  "displayName": "My Report 1",
  "environment": "test",
  "lastModifiedAt": 1512435450000,
  "lastModifiedBy": "111.111.121.57",
  "lastViewedAt": 1512435450000,
  "metrics": [
    {
      "function": "avg",
      "name": "response_size"
    },
    {
      "function": "avg",
      "name": "request_size"
    }
  ],
  "name": "cb7cd16a-44c4-0bc83c3b9c92",
  "organization": "destOrg",
  "properties": [
    {
      "property": "__ui__",
      "value": [
        {
          "name": "description"
        },
        {
          "name": "accuracy"
        }
      ]
    }
  ],
  "sortbyCols": [],
  "tags": [],
  "timeUnit": "hour"
}" \
-u email:password 

Теперь отчет должен быть виден в интерфейсе Edge для организации.