Présentation de l'API Analytics

Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur 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 proxy d'API. Vous pouvez visualiser ces données avec des graphiques dans l'interface utilisateur Edge, ou vous pouvez télécharger les données brutes pour l'analyse 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 leurs 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 :

  • Temps de 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 nativement 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 règle StatisticsCollector. Une fois les données personnalisées extraites, vous pouvez utiliser l'interface utilisateur ou l'API d'analyse 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 celles de surveillance des API

Cette section décrit quelques différences mineures entre les données collectées par Edge Analytics et celles des fonctions de surveillance des API. Étant donné que la surveillance et l'analyse des API utilisent des vous pouvez constater de légères différences entre les rapports personnalisés générés par Monitoring et les rapports générés par Analytics. Par exemple, vous pouvez voir d'écarts entre les résultats signalés pour les erreurs de délai avant expiration (délais d'inactivité du backend) (code d'état HTTP 504 sur la requête) et les délais avant expiration du client (code d'état HTTP 499). Elles peuvent être associées au code d'état 200 dans les rapports personnalisés Analytics, mais elles s'afficheront 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 entre les données - Une fois qu'un appel a été passé vers un proxy d'API, cela peut prendre jusqu'à 10 minutes pour que les données soient accessibles pour l'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 à 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).

Vous pouvez également télécharger des données analytiques à l'aide de l'API Edge Management. 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 requêtes 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é à l'aide des données d'analyse intégrées à Edge ou personnalisées Analytics les donné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, voir Utilisez les API de métriques pour 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 à partir d'Edge dans votre propre dépôt 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 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 actuellement disponible ou indisponible ?
  • 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 collecte des données d'analyse relatives à 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 passé 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 sont appeler 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. Voir Gérer les produits d'API.
  2. Enregistrez les développeurs d'applications avec Edge. Voir <ph type="x-smartling-placeholder"></ph> Enregistrez les développeurs d'applications.
  3. Enregistrez des applications et générez des clés API pour vos développeurs. Voir <ph type="x-smartling-placeholder"></ph> 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 : vérifiez que vous avez activé le plug-in d'analyse. (option activée 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. API Monitoring examine les données d'analyse pour fournir des informations contextuelles en temps réel sur Les performances des API, qui vous permettent de diagnostiquer rapidement les problèmes et de faciliter les actions correctives pour la continuité de l'activité. La surveillance des API est conçue pour détecter rapidement les problèmes dans vos API et vos backends. API Analytics est conçu pour capturer une large gamme de données d'analyse à utiliser par plusieurs équipes différentes, mais les données sont généralement utilisées pour l'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 conçu dans la surveillance des API. Avec les alertes, vous spécifiez un code d'état HTTP (2xx/4xx/5xx), une latence ou un code d'erreur seuil qui, lorsqu'il est dépassé, déclenche une notification d'alerte à votre équipe Ops. Les notifications d'alerte peuvent être envoyées via différents canaux, tels que les e-mails, les slacks, les pagers ou les Webhooks, vous permettant de réagir immédiatement aux problèmes.

Voir Comparer la surveillance des API avec Edge API Analytics pour une comparaison plus détaillée de ces services.

En savoir plus