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

Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
info

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 les conceptions de rapports personnalisés que vous aimez dans différentes organisations et différents environnements. De plus, vous pouvez stocker la conception (un simple fichier texte JSON) dans votre fichier CSV.

Tout d'abord, utilisez l'API permettant de lister les définitions de rapports d'analyse Lists analytics report definitions 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 à afficher (celui 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 permettant d'obtenir une définition de rapport d'analyse. Dans cet exemple, vous obtenez la définition du rapport nommé "My Report 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, mettez à jour les champs environment et organization si nécessaire pour la destination, puis importez la définition à l’aide de l’API permettant de 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 doit maintenant s'afficher dans l'interface utilisateur Edge de l'organisation.