Recommandations pour collecter des données sur les performances
S’applique à cette recommandation de la liste de contrôle d’efficacité des performances bien conçues : Power Platform
PE:04 | Collectez des données sur les performances. Les composants et les flux de la charge de travail doivent fournir des mesures et des journaux automatiques, continus et significatifs. Collectez des données à différents niveaux de la charge de travail, tels que les niveaux de l’application, de la plateforme, des données et du système d’exploitation. |
---|
La collecte de données sur les performances est le processus de collecte de mesures et de journaux qui fournissent des informations sur les performances d’une charge de travail. Ces données incluent des valeurs numériques, appelées mesures. Les mesures décrivent l’état du système à un moment donné. Les données sur les performances incluent également des journaux contenant différents types de données organisées en enregistrements.
En collectant des données sur les performances, vous pouvez surveiller et analyser les performances d’une charge de travail. Vous pouvez utiliser ces informations pour identifier les goulots d’étranglement des performances, résoudre les problèmes et prendre des décisions basées sur les données afin d’améliorer l’efficacité des performances globales de la charge de travail.
Sans informations basées sur les données, vous pourriez ne pas avoir connaissance des problèmes de performances sous-jacents ou des opportunités d’optimisation. Les résultats potentiels incluent des temps de réponse plus lents, un débit réduit et, finalement, une expérience utilisateur sous-optimale. De plus, le manque de données sur les performances rend difficile le diagnostic et la résolution des problèmes en temps opportun, ce qui entraîne des interruptions prolongées et une productivité réduite.
Définitions
Terme | Définition |
---|---|
Journaux d’activités | Journaux qui suivent les opérations de gestion sur les ressources, telles que la suppression d’une ressource. |
Journaux d’applications | Journaux qui suivent les informations sur les événements, les erreurs et autres activités de l’application, telles que les connexions et les échecs de connexion à la base de données. |
Outil de surveillance des performances des applications (APM) | Outil qui surveille et signale les performances d’une application. |
Instrumentation du code | Capture directe ou indirecte des mesures de performances du point de vue du code de l’application. Les mesures capturées incluent les mesures de flux, l’utilisation des ressources et les mesures spécifiques au langage ou au runtime. |
Suivi distribué | Collecte et corrélation de mesures sur les composants de la charge de travail distribuée. |
Récepteur de mesures | Destination de stockage pour vos mesures qui corrèle les données de séries chronologiques à des fins d’analyse. |
Journaux de la plateforme | Données de diagnostic et d’audit comprenant des journaux de ressources, des journaux d’activités et des journaux d’audit. |
Mesures de la plateforme | Valeurs numériques qui enregistrent les performances de la charge de travail à un moment donné. |
Journaux de ressources | Données générées par un système. Elles fournissent des informations sur l’état du système. |
Enregistrement structuré | Définition d’un format significatif pour enregistrer des messages, généralement sous forme de paires de clé-valeur. |
Stratégies de conception clés
L’optimisation des performances nécessite des données pour mesurer les performances actuelles d’une charge de travail ou d’un flux par rapport à ses objectifs de performances. Vous devez collecter la quantité et la diversité appropriées de données pour mesurer les performances du code et de l’infrastructure par rapport aux objectifs de performances. Assurez-vous que chaque composant et flux au sein de la charge de travail génère automatiquement des mesures et des journaux continus et significatifs. Vous devez obtenir ces données de différents niveaux, tels que l’application, la plateforme, le stockage et le système d’exploitation. La collecte de données complètes sur les performances permet une compréhension holistique des performances, en permettant l’identification précise des inefficacités et des possibilités d’amélioration.
Centraliser les données sur les performances
La centralisation des mesures et des journaux de performances est le processus de collecte de mesures et de journaux de performances de diverses sources et de leur stockage dans un emplacement central. Créez un récepteur de mesures central et un récepteur de journaux central. Cette centralisation permet un accès, une analyse et une surveillance faciles des mesures et des journaux de performances dans différents systèmes et composants. En centralisant les mesures et les journaux, vous gagnez en visibilité sur les performances de votre charge de travail. Choisissez une plateforme ou un outil approprié capable de regrouper et de stocker les mesures et les journaux de performances des charges de travail.
Compromis : comprenez le coût de la collecte de mesures et de journaux. En général, plus vous collectez de mesures et de journaux, plus le coût est élevé.
Segmenter les données sur les performances
La segmentation des données sur les performances implique d’organiser et de catégoriser les mesures et les journaux en fonction de leur origine, objectif ou environnement. Par exemple, vous devez séparer les données de production des données hors production ou faire la distinction entre les objectifs de performances et les mesures métier. La segmentation des données aide à optimiser des environnements spécifiques, facilite la résolution des problèmes et limite les inexactitudes dans la surveillance des performances. En maintenant une distinction claire entre les différents types de données, vous pouvez capturer, analyser et répondre aux mesures pertinentes plus efficacement et mieux aligner l’état de la charge de travail sur les objectifs de la charge de travail. Pour segmenter les données sur les performances, tenez compte des recommandations suivantes :
Conservez les données de production et les données non liées à la production séparément. En séparant les données par environnement, vous pouvez assurer un suivi et une optimisation ciblés de chaque environnement. Dans les environnements de production, vous pouvez mieux identifier et résoudre les problèmes de performances qui affectent directement les utilisateurs et les opérations métier. Dans les environnements hors production, la séparation des données facilite la résolution efficace des problèmes et l’optimisation pendant la phase de test avant le déploiement en production.
Utilisez un ensemble de données dans chaque environnement. N’utilisez pas un ensemble de données pour les objectifs de performances et un autre ensemble de données pour les alertes liées aux objectifs de performances. L’utilisation de différents ensembles de données génère des alertes inexactes qui nuisent à l’efficacité de la surveillance des performances.
Séparer les objectifs de performance et les indicateurs commerciaux. Les équipes d’exploitation et de développement utilisent les objectifs de performances pour surveiller l’état de la charge de travail et atteindre les objectifs métier. Les mesures métier font référence aux objectifs métier ou aux rapports sur les clients. Capturez les mesures métier dans un flux de données distinct, même si les données se chevauchent directement. Cette séparation vous offre la flexibilité nécessaire pour capturer les données correctes et les analyser de manière indépendante.
Définir des stratégies de conservation
Les stratégies de conservation déterminent la durée pendant laquelle les données de performances doivent être conservées. L’établissement de ces stratégies aide à gérer le stockage de mabnière efficace et garantit que seules les données nécessaires sont accessibles pour l’analyse. Ces stratégies favorisent de meilleures performances et répondent aux normes de conformité. Vous devez configurer des stratégies de conservation pour les données de journaux et de mesures afin de permettre une résolution des problèmes et une surveillance efficaces dans tous les environnements. Par exemple, vous devrez peut-être conserver les journaux et les mesures plus longtemps dans un environnement de production que dans l’environnement de test. La période de conservation doit correspondre aux exigences et aux réglementations de conformité de votre organisation. Décidez de la durée de conservation des données à des fins d’analyse et d’audit. Archivez les données dont vous n’avez pas besoin pour une analyse immédiate.
Collecter des données sur les performances
La collecte de données implique la surveillance et l’analyse des mesures de performances d’une charge de travail, telles que le débit, la latence et les temps d’exécution, principalement collectées via le code d’instrumentation. Les données sur les performances des charges de travail fournissent des informations précieuses sur l’état et les performances d’une application. En surveillant et en analysant les données sur les performances, vous pouvez identifier et résoudre les problèmes, optimiser les performances et prendre des décisions éclairées pour votre charge de travail.
Instrumenter le code
L’instrumentation fait référence au processus d’intégration d’extraits de code ou d’actions dans le code de vos charges de travail ; par exemple, en créant des événements de suivi personnalisés dans votre application canevas. L’objectif de l’instrumentation est de capturer les données de performances pendant l’exécution de la charge de travail. Il est essentiel de rassembler des mesures qui mettent en évidence les opérations critiques de la charge de travail. Concentrez-vous sur des mesures telles que le débit, la latence et le temps d’exécution. Il est important de différencier les opérations liées à l’entreprise des autres opérations. Pour les données liées aux opérations métier, assurez-vous que leurs métadonnées sont structurées de manière à permettre un suivi et un stockage distincts. L’instrumentation du code offre les avantages suivants :
Identifier les goulots d’étranglement des performances : En suivant des mesures telles que le temps écoulé, vous pouvez identifier les goulots d’étranglement et optimiser le code en conséquence.
Évaluation du comportement du système sous une charge : Vous pouvez voir comment la charge de travail évolue dans différents scénarios de stress. Ces données peuvent vous aider à identifier les problèmes liés à l’évolutivité, à la simultanéité et à l’utilisation des ressources.
Suivi charge de travail santé et disponibilité : Étant donné que les indicateurs de performance clés sont surveillés en temps réel, vous pouvez recevoir des alertes sur les problèmes potentiels qui affectent les performances et la disponibilité de l’application.
Améliorer l’expérience utilisateur : Vous pouvez obtenir des informations sur la manière dont les utilisateurs interagissent avec la charge de travail. Utilisez ces informations pour optimiser l’expérience utilisateur et identifier les domaines à améliorer.
Planifier les capacités et allouer les ressources : Les données de performances collectées par l’instrumentation peuvent fournir des informations précieuses sur les besoins en ressources d’une charge de travail. Ces informations peuvent éclairer vos décisions concernant la planification de la capacité et l’allocation de ressources.
Lorsque vous instrumentez le code pour la surveillance des performances, considérez les stratégies suivantes :
Utiliser les outils APM :Les outils de surveillance des performances des applications (APM) collectent et analysent les données de performances, y compris les métriques, les traces et les journaux. Les outils APM offrent des fonctionnalités telles que l’instrumentation au niveau du code, le suivi des transactions et le profilage des performances.
Instrumentation personnalisée :Les développeurs peuvent ajouter du code personnalisé pour collecter des mesures de performances propres à leur application et à leur charge de travail. L’instrumentation personnalisée peut mesurer les temps d’exécution, suivre l’utilisation des ressources ou capturer des événements spécifiques.
Capturer les temps de transaction. La capture des temps de transaction consiste à mesurer les temps de bout en bout pour des fonctions techniques clés dans le cadre du suivi des performances. Les mesures au niveau de l’application doivent inclure les temps de transaction de bout en bout. Ces temps de transaction doivent couvrir des fonctions techniques clés telles que les requêtes de base de données, les temps de réponse pour les appels d’API externes et les taux d’échec des étapes de traitement.
Utiliser les normes de télémétrie. Envisagez d’utiliser des bibliothèques d’instrumentation d’outils APM et des outils basés sur un standard de télémétrie, tel qu’OpenTelemetry.
Collecter des données sur les performances des ressources
En collectant des données sur les performances des ressources, vous pouvez obtenir des informations sur l’état et le comportement de votre charge de travail. Les données sur les performances des ressources fournissent des informations sur l’utilisation des ressources, ce qui est fondamental pour la planification de la capacité. Ces données fournissent également des informations sur l’état d’une charge de travail et peuvent vous aider à détecter les problèmes et à les résoudre. Tenez compte des recommandations suivantes :
Collectez des mesures et des journaux pour chaque ressource. Chaque service dispose d’un ensemble de mesures propres à la fonctionnalité de la ressource. Ces mesures vous aident à comprendre l’état et les performances de la ressource.
Utilisez les outils de la plateforme. Inspirez-vous des solutions de surveillance prédéfinies et intégrées, telles que Azure Monitor Insights. Cet outil simplifie les opérations relatives aux performances. Tenez compte des outils de la plateforme lorsque vous sélectionnez une plateforme et investissez dans des outils ou des rapports personnalisés.
Surveillez le trafic réseau. La surveillance du trafic réseau consiste à suivre et à analyser le flux et les modèles de données à mesure qu’elles se déplacent à travers les chemins du réseau. Collectez une analyse du trafic et surveillez le trafic qui traverse les limites du sous-réseau. Votre objectif est d’analyser et d’optimiser les performances du réseau.
Collecter des données sur la base de données et le stockage
De nombreux systèmes de base de données et de stockage fournissent leurs propres outils de surveillance. Ces outils collectent des données sur les performances spécifiques à ces systèmes. Les systèmes de base de données et de stockage génèrent souvent des journaux contenant des événements et des indicateurs liés aux performances. Collectez des données de la base de données et des données sur les performances de stockage afin de pouvoir identifier les goulots d’étranglement, diagnostiquer les problèmes et prendre des décisions éclairées pour améliorer les performances et la fiabilité globales de votre charge de travail. Envisagez de collecter les types de données de performances suivants :
Débit :Le débit mesure la quantité de données lues ou écrites sur le système de stockage sur une période donnée. Les données de débit indiquent les capacités de transfert de données.
Latence :La latence mesure la durée des opérations de stockage. Les données de latence indiquent la réactivité du système de stockage.
IOPS (opérations d’E/S par seconde) :Données sur le nombre d’opérations de lecture ou d’écriture que le système de stockage peut effectuer en une seconde. Les données IOPS indiquent le débit et la réactivité du système de stockage.
Utilisation de la capacité :L’utilisation de la capacité correspond à la quantité de capacité de stockage utilisée et à la quantité disponible. Les données sur l’utilisation de la capacité aident les organisations à planifier leurs futurs besoins de stockage.
Collecter des données sur les performances des connecteurs
Le temps passé à attendre la fin des opérations des services intégrés peut contribuer aux mauvaises performances globales d’une charge de travail. Si votre charge de travail utilise des connecteurs pour intégrer des services, envisagez de mesurer le temps passé dans chaque opération du connecteur pour évaluer son impact et décider d’optimiser la conception de votre charge de travail. En fonction du service, vous pouvez utiliser l’historique d’exécution ou la logique personnalisée pour capturer le temps passé dans les opérations du connecteur.
Valider et analyser les données
Vos données sur les performances doivent s’aligner sur les objectifs de performances. Les données doivent représenter les performances de la charge de travail ou du flux de manière complète et précise en ce qui concerne les objectifs de performances. Par exemple, le temps de réponse d’un service Web a un objectif de performances de 500 millisecondes. Analysez régulièrement les données, car des évaluations fréquentes permettent une détection précoce et une atténuation des problèmes de performances.
Créez des alertes. Il est utile de disposer d’alertes exploitables, qui permettent l’identification et la rectification rapides des problèmes de performances. Ces alertes doivent indiquer clairement le seuil de performances dépassé, l’effet potentiel sur l’entreprise et les composants impliqués. Commencez par définir une alerte courante et recommandée. Au fil du temps, vous pourrez modifier ces critères en fonction de vos besoins spécifiques. L’objectif principal de ces alertes doit être de prévoir les baisses de performances potentielles avant qu’elles ne deviennent des problèmes importants. Si vous ne pouvez pas définir une alerte pour une dépendance externe, envisagez de concevoir une méthode permettant de collecter des mesures indirectes, comme la durée d’un appel de dépendance.
Définissez les limites de collecte de données. Déterminez et fixez des limites logiques sur le volume de données que vous collectez et leur durée de conservation. La télémétrie peut parfois produire d’énormes quantités de données. Il est essentiel de vous concentrer sur la capture uniquement des indicateurs de performances les plus vitaux ou disposer d’un système efficace pour extraire des informations significatives de vos données de performances.
Power Platform facilitation
Collecte de données sur les performances des applications : Application Insights est une fonctionnalité d’Azure Monitor qui vous aide à surveiller les performances et la disponibilité de votre application. Les données sont stockées dans les journaux Azure Monitor par Application Insights, et visualisé dans Performances et échecs panneaux. Les données sont exportées vers votre environnement Application Insights dans le schéma standard défini par Application Insights. Vous pouvez exporter Dataverse et Power Automate données à Application Insights, Connecter vos applications en toile à Application Insights, et capturez les données de télémétrie de votre Microsoft Copilot Studio copilote à utiliser dans Azure Application Insights.
Application Insights vous permet de choisir entre les vues de données Serveur et Navigateur. En identifiant les opérations dont la durée est la plus longue, vous pouvez diagnostiquer les problèmes potentiels.
Utilisez les fonctionnalités natives de la plateforme pour analyser les performances : Analytique dans Copilot Studio fournit un aperçu complet des performances de votre copilote. Il utilise la technologie de l’intelligence artificielle (IA) pour identifier les sujets qui ont le plus d’impact sur le taux d’escalade, le taux d’abandon et le taux de résolution. Informations sur les performances pour Power Apps analyser les données utilisateur d’exécution et fournir une liste prioritaire de recommandations pour aider à améliorer les performances des applications pilotées par modèle.
Centralisation, segmentation et conservation des données de performances : Microsoft collecte déjà une télémétrie complète sur Dataverse, Power Automate les flux cloud et les applications pilotées par modèle. Avec l’intégration Application Insights, un administrateur d’environnement ou de locataire fournit la clé d’instrumentation Application Insights lors de la configuration du processus d’exportation des données dans le centre d’administration Power Platform. Dès que la configuration est terminée, la télémétrie recueillie sur votre environnement est envoyée à votreenvironnement. Microsoft Application Insights Lorsque vous utilisez l’intégration Application Insights, vous recevrez un ensemble standardisé de télémétrie qui suit le modèle de données de télémétrie Application Insights. En plus de cette intégration, vous pouvez également Connecter des applications de canevas Application Insights et capturer des données de télémétrie à partir de votre Microsoft Copilot Studio copilote pour les utiliser dans Azure Application Insights.
Collecte des données de performances des ressources Azure : la plupart des services Azure génèrent des journaux et des mesures de plateforme qui fournissent des informations de diagnostic et d’audit. En activant les paramètres de diagnostic, vous pouvez spécifier les journaux et les mesures de la plateforme à collecter et à stocker. Pour les besoins de corrélation, activez le diagnostic pour tous les services pris en charge et envoyez les journaux à la même destination que vos journaux d’application.
Collecte des données de performances de la base de données :Microsoft Dataverse s’intègre à Application Insights. Le flux de données fournit actuellement des données de performance liées aux appels d’API entrants Dataverse, aux appels d’exécution de plug-in Dataverse et aux appels de SDK Dataverse. Pour recevoir des notifications sur les problèmes, configurez des alertes basées sur les seuils de performances.
Validation et analyse des données de performances : dans Azure Monitor, vous pouvez utiliser les journaux Azure Monitor pour collecter, analyser et visualiser les données de journal de vos applications et systèmes. En regroupant les journaux, vous pouvez interroger les événements et obtenir des informations sur les performances de votre application. Pour plus d’informations, consultez Calculs et options de coûts des journaux Azure Monitor** et Tarification pour Azure Monitor.
Dans Azure Monitor, vous pouvez définir des règles d’alerte pour surveiller des mesures de performances spécifiques et déclencher des alertes en fonction de conditions prédéfinies. Par exemple, vous pouvez créer une règle d’alerte pour vous informer quand le temps de réponse dépasse une limite spécifiée. Configurez la règle d’alerte pour envoyer des notifications aux destinataires souhaités.
Lorsque vous créez une règle d’alerte, vous pouvez définir les critères qui déterminent quand une alerte doit être déclenchée. Vous pouvez définir des seuils, des méthodes d’agrégation, des intervalles de temps et la fréquence d’évaluation. Définissez les critères en fonction de vos exigences de surveillance des performances. Outre l’envoi de notifications, vous pouvez spécifier les actions à entreprendre lorsqu’une alerte est déclenchée. Les actions peuvent inclure l’envoi d’e-mails, l’appel de webhooks ou l’exécution de fonctions Azure. Choisissez les actions appropriées pour répondre au scénario d’alerte spécifique.
Examples
- Surveillance d’entreprise avec Azure Monitor
- Créer des événements de trace personnalisés dans les applications de canevas
- Créer des alertes personnalisées pour les flux cloud
- Analyser les performances et l’utilisation du copilote dans Copilot Studio
Liste de contrôle Efficacité des performances
Référez-vous à l’ensemble complet des recommandations.