Présentation de l'API Analytics

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

Cette rubrique présente Edge API Analytics.

Vidéo: Regardez une courte vidéo pour un aperçu des services Edge API Analytics.

Améliorer votre API grâce aux données d'analyse

Edge API Analytics collecte et calcule une multitude d'informations qui transitent par des proxys d'API. Vous pouvez visualiser ces données à l'aide de graphiques et de diagrammes dans l'interface utilisateur Edge. Vous pouvez également télécharger les données brutes pour les analyser hors connexion à l'aide des API de gestion Edge.

Analytics vous aide à répondre à des questions courantes, telles que :

  • Quelles tendances le trafic de mon API affiche-t-il sur la durée ?
  • Quelles méthodes d'API sont les plus populaires ?
  • Qui sont mes meilleurs développeurs ?
  • À quel moment le délai de réponse de l'API est-il le plus court ? Et le plus long ?
  • Quelle zone géographique connaît le trafic d'API le plus important ?

Les réponses à des questions telles que celles-ci vous aident à améliorer vos API, à résoudre les problèmes et à prendre de meilleures décisions commerciales concernant votre programme d'API.

API Analytics aide chacun à s'améliorer

Grâce à un processus continu de collecte, d'analyse et de visualisation des données, Edge API Analytics aide votre équipe API à améliorer ses API et aide les développeurs d'applications à améliorer leurs applications:

alt_text
  • Équipe API - L'équipe API exploite les systèmes internes pour créer des API intéressantes. L'équipe API souhaite connaître l'état de santé du programme d'API global et des API individuelles, et comprendre comment améliorer leurs API.
  • Développeurs d'applications - En partageant des données d'analyse avec les développeurs d'applications, vous obtenez de meilleures applications. Ces développeurs innovent grâce à votre API et développent des applications créatives permettant de générer des revenus pour votre entreprise. Analytics aide les développeurs d'applications à évaluer les performances de leurs applications et à quel point elles contribuent au résultat de votre entreprise. Les développeurs d'applications veulent savoir comment améliorer leurs applications.
  • Équipe d'opérations - L'équipe chargée des opérations souhaite comprendre les schémas de trafic et prévoir à quel moment ajouter des ressources de backend ou effectuer d'autres ajustements critiques.
  • Propriétaire d'entreprise - Le propriétaire d'entreprise souhaite savoir comment son investissement dans les API porte ses fruits et où investir son argent dans les API à l'avenir.

Quels types de données sont collectés et analysés ?

Edge API Analytics collecte et analyse un large éventail de données qui transitent par des proxys d'API, tels que:

  • Date/Heure de la réponse
  • Latence de la requête
  • Taille d'une requête
  • Erreurs de cible
  • Nom du produit d'API
  • Adresse e-mail du développeur
  • Nom de l'application
  • et bien plus encore

Pour obtenir la liste complète des données collectées par API Analytics, consultez la documentation de référence sur les métriques, les dimensions et les filtres d'Analytics.

Comment puis-je collecter des données d'analyse personnalisées ?

Edge collecte de manière native une multitude de données. Vous pouvez également recueillir des données analytiques personnalisées spécifiques à vos proxys d'API, vos applications, vos produits ou vos développeurs. Par exemple, vous pouvez collecter des données analytiques à partir des paramètres de requête, des en-têtes de requête, du corps des requête et des réponses, ou encore de variables que vous définissez dans vos API.

Vous collectez des données d'analyse personnalisées à l'aide de la stratégie StatisticsCollector. Une fois les données personnalisées extraites, vous pouvez utiliser l'interface utilisateur ou l'API Analytics pour examiner les données. Consultez la page Analyser le contenu des messages de l'API à l'aide d'analyses personnalisées pour obtenir un exemple complet illustrant la collecte de données analytiques personnalisées.

Différences entre les données Analytics et les données de surveillance des API

Cette section décrit certaines différences mineures entre les données collectées par Edge Analytics et la surveillance des API. Étant donné que l'API Monitoring et Analytics utilisent des pipelines de données différents, vous pouvez constater de légères différences entre les rapports personnalisés générés par Monitoring et ceux générés par Analytics. Par exemple, vous pouvez constater des écarts dans les résultats signalés pour les erreurs d'expiration de délai, qu'il s'agisse de délais avant expiration du backend (code d'état HTTP 504 sur la requête) et de délais avant expiration du client (code d'état HTTP 499). Celles-ci peuvent apparaître avec le code d'état 200 dans les rapports personnalisés Analytics, mais avec le code d'état 504 ou 499 dans les rapports personnalisés Monitoring.

Quand et pendant combien de temps mes données d'analyse sont-elles disponibles ?

Deux intervalles de temps sont utilisés pour contrôler le moment et la durée d'affichage des données d'analyse :

  • Intervalle de délai des données - Après un appel à un proxy d'API, il peut s'écouler jusqu'à 10 minutes avant que les données soient accessibles pour affichage ou via des appels d'API de gestion.
  • Conservation des données - La durée de conservation des données d'analyse par Edge diffère selon le plan groupée). Selon votre forfait, les données d'analyse peuvent être disponibles pour les 30, 60, 90 ou 365 derniers jours.

Comment accéder à mes données d'analyse ?

Edge API Analytics fournit des outils de visualisation des données intégrés dans l'interface utilisateur Edge. Ces outils incluent des tableaux de bord d'analyse prédéfinis et des rapports personnalisés qui affichent des données sous forme de graphiques et de charts. Ils vous permettent d'afficher les données regroupées en différentes dimensions (par exemple, par proxy d'API, adresse IP ou code d'état HTTP).

En outre, vous pouvez télécharger des données d'analyse à l'aide de l'API de gestion Edge. Une fois les données téléchargées, vous pouvez les importer dans vos propres outils de visualisation de données ou votre propre système d'analyse.

Tableaux de bord Analytics

L'interface utilisateur Edge fournit un ensemble de tableaux de bord prédéfinis que vous pouvez utiliser pour afficher les données d'analyse. Par exemple, les images suivantes illustrent le tableau de bord des performances des proxys :

Ce tableau de bord inclut des graphiques pour :

  • Trafic total : nombre total de demandes d'API reçues par Edge pour un environnement d'API dans une organisation.
  • Trafic réussi - Nombre total de requêtes ayant abouti à une réponse positive. Les réponses d'erreur ne sont pas prises en compte.
  • Erreurs de trafic - Nombre total de requêtes API qui ont échoué ; c'est-à-dire que la requête ne fournit pas de réponse. Le nombre inclut les erreurs de proxy (côté Apigee) et les erreurs de cible (services de backend).
  • VP moyen - Nombre moyen de requêtes API et de réponses obtenues par seconde.

Les tableaux de bord prédéfinis supplémentaires incluent :

Pour plus d'informations sur ces tableaux de bord prédéfinis, consultez la page Utiliser les tableaux de bord Analytics.

Rapports personnalisés

Les rapports personnalisés vous permettent d'explorer des métriques d'API spécifiques et d'afficher les données exactes que vous souhaitez voir. Vous pouvez créer un rapport personnalisé en utilisant l'une des données d'analyse intégrées aux données d'analyse Edge ou personnalisées collectées par la stratégie StatisticsCollector.

Lors de la création d'un rapport personnalisé, vous sélectionnez les données que vous souhaitez afficher (métriques), vous les regroupez de manière significative (dimensions) et vous limitez éventuellement les données renvoyées en fonction de caractéristiques spécifiques des données (filtrage).

Vous pouvez également définir le type de graphique affiché dans le rapport personnalisé sous forme de graphique à colonnes ou en courbes. Les images suivantes illustrent des exemples de graphique pour les transactions par seconde regroupées par proxy d'API :

  • Colonne - Chaque proxy d'API est représenté par une colonne différente :

    Graphique à colonnes personnalisé

  • Ligne - Chaque proxy d'API est représenté par une ligne différente :

    Graphique en courbes personnalisé

Pour en savoir plus, consultez la page Créer et gérer des rapports personnalisés.

API Analytics

Utilisez l'API de gestion Edge pour télécharger des données d'analyse. Par exemple, vous pouvez utiliser l'API pour créer vos propres outils de visualisation, que vous pouvez ensuite intégrer à des portails ou à des applications personnalisées.

Voici un exemple d'appel d'API permettant de récupérer des données d'analyse pour les proxys d'API :

curl  https://api.enterprise.apigee.com/v1/o/org_name/environments/test/stats/apiproxy?"select=sum(message_count)&timeRange=6/24/2018%2000:00~6/24/2018%2023:59&timeUnit=hour" \
-u email:password

Cet appel renvoie :

  • La somme des requêtes (nombre de messages) par proxy d'API
  • Pendant une période de 24 heures
  • Regroupées par heure

Le paramètre de requête timeRange spécifie la période sous la forme suivante :

?timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM

Notez le caractère %20 figurant avant HH:MM. Le paramètre timeRange requiert un caractère d'espace encodé au format URL avant HH:MM ou un caractère +, comme dans cet exemple : MM/DD/YYYY+HH:MM~MM/DD/YYYY+HH:MM.

Pour en savoir plus, consultez Utiliser les API de métriques afin de mesurer les performances du programme d'API.

Exporter des données d'analyse vers Google Cloud

Vous pouvez utiliser l'API de gestion Edge pour exporter toutes les données d'analyse d'une journée entière depuis Edge vers votre propre référentiel de données, tel que Google Cloud Storage ou BigQuery. Vous pouvez ensuite exploiter les puissantes fonctionnalités d'interrogation et de machine learning offertes par Google Cloud BigQuery et TensorFlow pour effectuer votre propre analyse de données.

Pour en savoir plus, consultez Exporter des données issues d'Analytics.

Comment partager des données avec les développeurs d'applications ?

Lorsque vous considérez les développeurs d'applications comme des clients, vous devez vous assurer qu'ils disposent des outils et des informations nécessaires pour exploiter au mieux votre API.

alt_text

Les développeurs d'applications ne s'intéressent pas seulement à la qualité de leurs applications, mais aussi à vos API. Les portails de développeurs basés sur Drupal incluent une page Performances des applications facultative, conçue pour permettre aux développeurs d'accéder aux métriques importantes associées à leurs applications. Cette page fournit aux développeurs des informations sur les éléments suivants :

  • Erreurs:Quelles erreurs d'API mon application voit-elle ?
  • Performances : L'API est-elle lente en ce moment ? Quelles méthodes API sont généralement lentes ou sont actuellement lentes ?
  • Disponibilité:l'API est-elle opérationnelle en ce moment ?
  • Quota : Votre API a-t-elle un quota ? En tant que développeur d'applications, où est-ce que je me situe par rapport à mon quota ?

Pour en savoir plus, consultez les articles suivants:

En outre, vous pouvez partager des analyses avec vos développeurs comme suit :

Comment générer des données d'analyse complètes ?

Qu'entendons-nous par "données d'analyse complètes" ? Vous pouvez, par exemple, créer un proxy d'API et Edge collectera des données d'analyse sur ce proxy. Mais qu'advient-il des métriques pour le développeur ou l'application qui a appelé le proxy d'API ? Si Edge ne sait pas qui a effectué un appel d'API, il ne peut pas collecter ces données.

Quelques étapes sont nécessaires pour permettre à Edge de déterminer quels développeurs et quelles applications de développement appellent vos proxys d'API. Voici une liste de ces étapes, accompagnées de liens vers des informations plus détaillées :

  1. Créer un ou plusieurs produits API, regroupant des proxys d'API et un forfait. Consultez Gérer les produits d'API.
  2. Enregistrez les développeurs d'applications avec Edge. Consultez la section Enregistrer des développeurs d'applications.
  3. Enregistrez des applications et générez des clés API pour vos développeurs. Consultez Enregistrer des applications et gérer les clés API.
  4. Ajouter à vos proxy d'API des règles de sécurité qui vérifient les clés API et/ou les jetons de sécurité. Consultez les rubriques suivantes :Vérifier la règle de clé API, Règle OAuthV2 et Vérifier la règle JWT.
  5. Si vous utilisez Edge Microgateway, assurez-vous d'avoir activé le plug-in d'analyse (qui est activé par défaut). Si le plug-in d'analyse est désactivé, Edge Microgateway n'enverra pas de données d'analyse à Edge Analytics.

Les tutoriels suivants vous guident tout au long des étapes nécessaires pour visualiser les analyses destinées aux développeurs et aux applications : Sécuriser une API en exigeant des clés API et Sécuriser une API avec OAuth.

Comparer API Analytics et API Monitoring

Vous pouvez tirer parti à la fois de la surveillance des API Edge et de l'analyse des API. La surveillance des API examine les données d'analyse pour fournir des informations contextuelles en temps réel sur les performances des API, ce qui vous permet de diagnostiquer rapidement les problèmes et de faciliter les actions correctives pour la continuité des activités. La surveillance des API est conçue pour identifier rapidement les problèmes dans vos API et vos backends. API Analytics est conçu pour capturer un large éventail de données d'analyse à utiliser par plusieurs équipes différentes, mais ces données sont généralement utilisées à des fins d'analyse dans des scénarios en temps non réel.

L'une des principales différences entre la surveillance des API et l'analyse des API est le mécanisme d'alerte intégré à la surveillance des API. Avec les alertes, vous spécifiez un seuil de code d'état HTTP (2xx/4xx/5xx), de latence ou de code d'erreur qui, en cas de dépassement, déclenche une notification d'alerte à votre équipe d'exploitation. Les notifications d'alerte peuvent être envoyées via différents canaux, tels que les e-mails, Slack, les bipeurs ou les webhooks, ce qui vous permet de répondre immédiatement aux problèmes.

Consultez Comparer la surveillance des API avec Edge API Analytics pour obtenir une comparaison plus détaillée entre ces services.

Plus d'informations