Exporter/Importer les définitions de rapports personnalisées

Vous consultez la documentation Apigee Edge.
Consulter la documentation d'Apigee X
en savoir plus

Vous pouvez utiliser les API Edge pour exporter et importer des rapports personnalisés d'un environnement d'organisation à un autre. Cette technique utile vous permet de réutiliser des conceptions de rapports personnalisées que vous aimez dans différents organisations et environnements. De plus, vous pouvez stocker la conception (un simple fichier texte JSON) dans votre fichier CSV.

Tout d'abord, utilisez l'API Lists Analytics report définitions pour obtenir les UUID de tous les rapports définis pour une organisation:

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

Pour chaque rapport, la sortie contient son nom d'affichage (nom que vous voyez dans l'interface utilisateur Edge) et son UUID:

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

Utilisez maintenant l'UUID du rapport souhaité pour récupérer sa définition en appelant l'API Obtenir une définition de rapport d'analyse. Dans cet exemple, vous obtenez la définition du rapport "Mon rapport 1":

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

La sortie contient la définition du rapport:

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

Copiez la sortie JSON et mettez à jour les champs environment et organization si nécessaire pour la destination, puis importez la définition à l'aide de l'API Créer une définition de rapport d'analyse.

Par exemple, pour importer la définition dans l'environnement test d'une organisation nommée 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 

Le rapport devrait maintenant s'afficher dans l'interface utilisateur Edge de l'organisation.