Au fil de notre croissance et de nos innovations, une constante demeure : simplifier la vie des développeurs. Nous mesurons toute la complexité de la gestion des services cloud, et c'est pourquoi nous sommes ravis de présenter une toute nouvelle fonctionnalité dans notre arsenal analytique : l'appel d'API reports.query().
Cette nouveauté vous permet de générer des rapports Cloud Analytics par programmation, en récupérant et en analysant les données d'un rapport via un seul appel d'API. Un véritable analyste à la demande, à portée de main !

Pourquoi vous allez adorer reports.query()
Imaginez que vous exécutiez des applications à la fois sur Google Cloud Platform (GCP) et sur Amazon Web Services (AWS). Vous voulez analyser vos dépenses récentes sur des services précis comme AWS EC2 ou GCP BigQuery durant la semaine écoulée. Habituellement, il faudrait passer un temps considérable à fouiller différents dashboards ou interfaces pour rassembler les données.
Avec notre API reports.query(), le processus devient nettement plus simple. Voici un exemple d'appel d'API :
curl --request POST \
--url https://api.doit.com/analytics/v1/reports/query \
--header 'Authorization: Bearer {{your-api-key}}' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"group": [\
{\
"id": "service_description",\
"type": "fixed"\
}\
],
"timeRange": {
"unit": "day",
"amount": 7,
"includeCurrent": false,
"mode": "last"
},
"timeInterval": "day"
}
'
Cette simple requête suffit à générer un rapport de dépenses complet sur plusieurs services pour la semaine écoulée.
Voici un bref aperçu de la requête :
group: précise le regroupement des données du rapport. Ici, le regroupement se fait parservice_description. Vous pouvez récupérer la liste complète des dimensions disponibles par programmation grâce à la méthode d'API dimensions.list()timeRange: indique la plage temporelle du rapport. Dans cet exemple, nous demandons les données des sept derniers jours.timeInterval: définit l'intervalle d'agrégation temporelle des données du rapport. Ici, l'agrégation est quotidienne.
Voici à quoi peuvent ressembler les données renvoyées par l'API. Pour des raisons de lisibilité, je n'en présente qu'un extrait.
{
"Result": {
"schema": [\
{\
"name": "service_description",\
"type": "string"\
},\
{\
"name": "year",\
"type": "string"\
},\
{\
"name": "month",\
"type": "string"\
},\
{\
"name": "day",\
"type": "string"\
},\
{\
"name": "cost",\
"type": "float"\
},\
{\
"name": "timestamp",\
"type": "timestamp"\
}\
],
"rows": [\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"06",\
1.5757174094000006,\
1688601600\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"07",\
1.3773117481,\
1688688000\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"08",\
1.3947479550999997,\
1688774400\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"09",\
1.4486706111999998,\
1688860800\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"10",\
1.3961570165000001,\
1688947200\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"11",\
1.4235074821999998,\
1689033600\
],\
[\
"AWS CloudTrail",\
"2023",\
"07",\
"12",\
1.4268483946000001,\
1689120000\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"06",\
0.07,\
1688601600\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"07",\
0.07,\
1688688000\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"08",\
0.07,\
1688774400\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"09",\
0.08,\
1688860800\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"10",\
0.07,\
1688947200\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"11",\
0.06999999999999999,\
1689033600\
],\
[\
"AWS Cost Explorer",\
"2023",\
"07",\
"12",\
0.07,\
1689120000\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"06",\
0.09677419200000002,\
1688601600\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"07",\
0.09677419200000002,\
1688688000\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"08",\
0.09677419200000002,\
1688774400\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"09",\
0.09677419200000002,\
1688860800\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"10",\
0.09677419200000004,\
1688947200\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"11",\
0.09677419200000002,\
1689033600\
],\
[\
"AWS Data Pipeline",\
"2023",\
"07",\
"12",\
0.09677419200000002,\
1689120000\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"06",\
1.4365837167000002,\
1688601600\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"07",\
1.4837915334,\
1688688000\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"08",\
1.4360271,\
1688774400\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"09",\
1.4397221999,\
1688860800\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"10",\
1.4407052167000003,\
1688947200\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"11",\
1.4418464164,\
1689033600\
],\
[\
"AWS Directory Service",\
"2023",\
"07",\
"12",\
1.4447365167000001,\
1689120000\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"06",\
0,\
1688601600\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"07",\
0,\
1688688000\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"08",\
0,\
1688774400\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"09",\
0,\
1688860800\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"10",\
0,\
1688947200\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"11",\
0,\
1689033600\
],\
[\
"AWS Glue",\
"2023",\
"07",\
"12",\
0,\
1689120000\
],\
[\
"AWS Key Management Service",\
"2023",\
"07",\
"06",\
0.09687619200000003,\
1688601600\
],\
[\
"AWS Key Management Service",\
"2023",\
"07",\
"07",\
0.09687619200000003,\
1688688000\
],\
[\
"AWS Key Management Service",\
"2023",\
"07",\
"08",\
0.09687619200000003,\
1688774400\
],\
[\
"2023",\
"07",\
"12",\
0,\
1689120000\
]\
]
}
}
Bien entendu, votre rapport peut être bien plus complexe que celui de cet exemple. Vous pouvez par exemple regrouper vos coûts, votre utilisation et même certaines métriques personnalisées selon plusieurs dimensions (telles que cloud, service, labels, ou même vos propres attributions comme équipe, application, etc.) tout en filtrant certaines données du rapport.
Un outil puissant pour des décisions plus avisées
La nouvelle API reports.query() vous permet de générer rapidement des rapports analytiques par programmation, et d'accéder ainsi sans détour aux indicateurs clés. L'idée : disposer des bonnes informations à portée de main pour prendre des décisions mieux éclairées.
Vous pouvez désormais surveiller vos coûts cloud, suivre la performance des différents services et décrypter les schémas d'utilisation, sans jamais quitter votre environnement de développement.
Adoptez reports.query() dès aujourd'hui
Si cette nouvelle fonctionnalité vous enthousiasme autant que nous, récupérez votre clé d'API et lancez-vous dès aujourd'hui. Expérimentez librement et n'hésitez pas à nous contacter pour toute question ou retour. Nous restons à votre disposition et avons hâte de découvrir les usages innovants que vous ferez de l'API reports.query() pour optimiser et nourrir votre stratégie cloud.