Exporta/importa definiciones de informes personalizados

Estás viendo la documentación de Apigee Edge.
Ir a la documentación de Apigee X.
info

Puedes usar las APIs de Edge para exportar e importar informes personalizados de un entorno de organización a otro. Esta técnica útil te permite reutilizar los diseños de informes personalizados que te gustan en diferentes organizaciones y entornos. Además, puedes almacenar el diseño (un archivo de texto JSON simple) en tu CSV.

Primero, usa la API de enumerar definiciones de informes de estadísticas para obtener los UUID de todos los informes definidos para una organización:

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

Para cada informe, el resultado contiene su nombre visible (el nombre que ves en la IU de Edge) y su UUID:

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

Ahora usa el UUID del informe deseado para recuperar su definición llamando a la API de obtener una definición de informe de estadísticas. En este ejemplo, obtienes la definición del informe llamado "My Report 1":

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

El resultado contiene la definición del informe:

{
  "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"
}

Copia el resultado JSON y actualiza los campos environment y organization según sea necesario para el destino y, luego, importa la definición con la API de crear una definición de informe de estadísticas.

Por ejemplo, para importar la definición al entorno test de una organización llamada destOrg, haz lo siguiente:

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 

Ahora deberías ver el informe en la IU de Edge para la organización.