Skip to main content
Cloud Insights
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Accéder à la base de données de rapports via l'API

Contributeurs

La puissante API de Cloud Insights permet aux utilisateurs d'interroger directement la base de données Cloud Insights Reporting, sans passer par l'environnement Cognos Reporting.

Remarque Cette documentation fait référence à la fonction de génération de rapports Cloud Insights, disponible dans l'édition Premium de Cloud Insights.

OData

L'API de génération de rapports Cloud Insights suit "OData v4" (Open Data Protocol) norme pour ses requêtes de la base de données de rapports. Pour en savoir plus ou pour en savoir plus, consultez le document "ce tutoriel" Sur OData.

Toutes les demandes commenceront par l'url https://<Cloud Insights URL>/REST/v1/dwh-management/odata

Génération d'une clé APIKey

En savoir plus sur "Les API Cloud Insights".

Pour générer une clé API, procédez comme suit :

  • Connectez-vous à votre environnement Cloud Insights et sélectionnez Admin > accès API.

  • Cliquez sur "+ jeton d'accès à l'API ".

  • Entrez un nom et une description.

  • Pour le type, choisissez Data Warehouse.

  • Définir les autorisations comme lecture/écriture.

  • Définissez une date d'expiration de désirs.

  • Cliquez sur “Enregistrer”, puis copiez la clé et enregistrez-la quelque part en toute sécurité. Vous ne pourrez plus accéder à la clé complète ultérieurement.

Les APIkeys sont bons pour Sync ou Async.

Requête directe des tables

Une fois la clé API en place, les requêtes directes de la base de données de rapports sont désormais possibles. Les URL longues peuvent être simplifiées à https://…​/odata/ pour l'affichage plutôt que l'URL https://<Cloud Insights>/REST/v1/dwh-management/odata/

Essayez des requêtes simples comme

  • https://<Cloud Insights URL>/REST/v1/dwh-management/odata/dwh_custom

  • https://<Cloud Insights URL>/REST/v1/dwh-management/odata/dwh_Inventory

  • https://<Cloud Insights URL>/REST/v1/dwh-management/odata/dwh_Inventory/Storage

  • https://<Cloud Insights URL>/REST/v1/dwh-management/odata/dwh_Inventory/Disk

  • https://…​/odata/dwh_custom/custom_queries

Exemples d'API REST

L'URL de tous les appels est https://<Cloud Insights URL>/REST/v1/dwh-management/odata.

  • OBTENIR /{schema}/** - récupère les données de la base de données de rapports.

Format : https://<Cloud Insights URL>/REST/v1/dwh-management/odata/<nom_schéma>/<requête>

Exemple :

 https://<domain>/rest/v1/dwh-management/odata/dwh_inventory/fabric?$count=true&$orderby=name
Résultat :
{
   "@odata.context": "$metadata#fabric",
   "@odata.count": 2,
   "value": [
       {
           "id": 851,
           "identifier": "10:00:50:EB:1A:40:3B:44",
           "wwn": "10:00:50:EB:1A:40:3B:44",
           "name": "10:00:50:EB:1A:40:3B:44",
           "vsanEnabled": "0",
           "vsanId": null,
           "zoningEnabled": "0",
           "url": "https://<domain>/web/#/assets/fabrics/941716"
       },
       {
           "id": 852,
           "identifier": "10:00:50:EB:1A:40:44:0C",
           "wwn": "10:00:50:EB:1A:40:44:0C",
           "name": "10:00:50:EB:1A:40:44:0C",
           "vsanEnabled": "0",
           "vsanId": null,
           "zoningEnabled": "0",
           "url": "https://<domain>/web/#/assets/fabrics/941836"
        }
    ]
}

Conseils utiles

Gardez à l'esprit les éléments suivants lorsque vous utilisez des requêtes de l'API de reporting.

  • La charge utile de la requête doit être une chaîne JSON valide

  • La charge utile de la requête doit être contenue dans une seule ligne

  • Les guillemets doivent être échappés, par exemple \"

  • Les onglets sont pris en charge sous la forme \t

  • Évitez les commentaires

  • Les noms de tables en minuscules sont pris en charge

En outre :

  • 2 en-têtes sont nécessaires :

    • Nom « X-CloudInsights-ApiKey »

    • Attribut valeur «<apikey> »

Votre clé d'API sera spécifique à votre environnement Cloud Insights.

Synchrone ou asynchrone ?

Par défaut, une commande API fonctionne en mode synchrone, ce qui signifie que vous envoyez la demande et que la réponse est immédiatement renvoyée. Cependant, l'exécution d'une requête peut parfois prendre un certain temps, ce qui peut entraîner la temporisation de la requête. Pour contourner ce problème, vous pouvez exécuter une requête de manière _asynchrone. En mode asynchrone, la demande renvoie une URL par laquelle l'exécution peut être surveillée. L'URL renvoie le résultat lorsqu'il est prêt.

Pour exécuter une requête en mode asynchrone, ajoutez l'en-tête Prefer: respond-async à la demande. Une fois l'exécution réussie, la réponse contiendra les en-têtes suivants :

Status Code: 202 (which means ACCEPTED)
preference-applied: respond-async
location: https://<Cloud Insights URL>/rest/v1/dwh-management/odata/dwh_custom/asyncStatus/<token>

Si vous interrogez l'URL de l'emplacement, les mêmes en-têtes seront retournés si la réponse n'est pas encore prête ou si l'état 200 est prêt. Le contenu de la réponse sera de type texte et contient l'état http de la requête d'origine et certaines métadonnées, suivies des résultats de la requête d'origine.

HTTP/1.1 200 OK
 OData-Version: 4.0
 Content-Type: application/json;odata.metadata=minimal
 oDataResponseSizeCounted: true

 { <JSON_RESPONSE> }

Pour afficher la liste de toutes les requêtes asynchrones et savoir lesquelles sont prêtes, utilisez la commande suivante :

 GET https://<Cloud Insights URL>/rest/v1/dwh-management/odata/dwh_custom/asyncList
La réponse a le format suivant :
{
   "queries" : [
       {
           "Query": "https://<Cloud Insights URL>/rest/v1/dwh-management/odata/dwh_custom/heavy_left_join3?$count=true",
           "Location": "https://<Cloud Insights URL>/rest/v1/dwh-management/odata/dwh_custom/asyncStatus/<token>",
           "Finished": false
       }
   ]
}