Freigeben über


Empfehlungen zum Sammeln von Leistungsdaten

Gilt für diese Power Platform Well-Architected Performance Efficiency-Checkliste-Empfehlung:

PE:04 Leistungsdaten sammeln. Workload-Komponenten und -Flows sollten automatische, kontinuierliche und aussagekräftige Metriken und Protokolle bereitstellen. Sammeln Sie Daten auf verschiedenen Ebenen des Workloads, beispielsweise auf Anwendungs-, Plattform-, Daten- und Betriebssystemebene.

Beim Erfassen von Leistungsdaten handelt es sich um den Prozess des Zusammentragens von Messgrößen und Protokollen, die Informationen zur Leistung einer Arbeitslast liefern. Diese Daten enthalten numerische Werte, die als Metriken bezeichnet werden. Metriken beschreiben den Zustand des Systems zu einem bestimmten Zeitpunkt. Zu den Leistungsdaten zählen auch Protokolle, die unterschiedliche, in Datensätzen organisierte Datentypen enthalten.

Durch das Sammeln von Leistungsdaten können Sie die Leistung einer Arbeitslast überwachen und analysieren. Sie können diese Informationen verwenden, um Leistungsengpässe zu identifizieren, Probleme zu beheben und datengesteuerte Entscheidungen zu treffen, um die allgemeine Leistungseffizienz der Arbeitslast zu verbessern.

Ohne datengesteuerte Erkenntnisse entgehen Ihnen möglicherweise zugrunde liegende Leistungsprobleme oder Optimierungsmöglichkeiten. Mögliche Folgen sind langsamere Antwortzeiten, verringerter Durchsatz und letztendlich ein nicht optimales Benutzererlebnis. Darüber hinaus erschwert das Fehlen von Leistungsdaten die rechtzeitige Diagnose und Fehlerbehebung von Problemen, was zu längeren Ausfallzeiten und einer verringerten Produktivität führt.

Definitionen

Begriff Definition
Aktivitätsprotokolle Protokolle, die Verwaltungsvorgänge an Ressourcen verfolgen, z. B. das Löschen einer Ressource.
Anwendungsprotokolle Protokolle, die Informationen zu Anwendungsereignissen, Fehlern und anderen Aktivitäten wie Anmeldungen und Datenbankverbindungsfehlern protokollieren.
Tool zur Überwachung der Anwendungsleistung (APM) Ein Tool, das die Leistung einer Anwendung überwacht und meldet.
Code-Instrumentierung Die direkte oder indirekte Erfassung von Leistungsmetriken aus der Sicht des Anwendungscodes. Zu den erfassten Metriken gehören Flussmetriken, Ressourcennutzung und Sprach- oder laufzeitspezifische Metriken.
Verteilte Ablaufverfolgung Erfassen und Korrelieren von Messdaten über verteilte Workloadkomponenten hinweg.
Metrikensenke Ein Speicherziel für Ihre Metriken, das Zeitreihendaten zur Analyse korreliert.
Plattformprotokolle Diagnose- und Überwachungsdaten, die Ressourcenprotokolle, Aktivitätsprotokolle und Überwachungsprotokolle umfassen.
Plattformmetriken Numerische Werte, welche die Leistung des Workloads zu einem bestimmten Zeitpunkt aufzeichnen.
Ressourcenprotokolle Daten, die ein System generiert. Es gibt Auskunft über den Zustand des Systems.
Strukturierte Protokollierung Definieren eines aussagekräftigen Formats zum Protokollieren von Nachrichten, normalerweise als Schlüssel-Wert-Paare.

Wichtige Designstrategien

Zur Leistungsoptimierung sind Daten erforderlich, um die aktuelle Leistung einer Arbeitslast oder eines Datenflusses im Hinblick auf die Leistungsziele zu messen. Sie müssen die richtige Menge und Vielfalt an Daten erfassen, um die Leistung des Codes und der Infrastruktur im Hinblick auf Leistungsziele zu messen. Stellen Sie sicher, dass jede Komponente und jeder Fluss innerhalb der Arbeitslast automatisch kontinuierliche und aussagekräftige Metriken und Protokolle generiert. Sie müssen diese Daten aus verschiedenen Ebenen beziehen, etwa aus der Anwendung, der Plattform, dem Speicher und dem Betriebssystem. Durch die umfassende Erfassung von Leistungsdaten ist ein ganzheitliches Verständnis der Leistung möglich, wodurch Ineffizienzen und Verbesserungsmöglichkeiten präzise identifiziert werden können.

Zentralisieren Sie Leistungsdaten

Unter Zentralisierung von Leistungsmesswerten und -protokollen versteht man den Vorgang, Leistungsmesswerte und -protokolle aus verschiedenen Quellen zu erfassen und an einem zentralen Ort zu speichern. Erstellen Sie eine zentrale Metrikensenke und eine zentrale Protokollsenke Diese Zentralisierung ermöglicht einen einfachen Zugriff, eine Analyse und eine Überwachung von Leistungsmesswerten und Protokollen über verschiedene Systeme und Komponenten hinweg. Durch die Zentralisierung von Metriken und Protokollen erhalten Sie Einblick in die Leistung Ihrer Arbeitslast. Wählen Sie eine geeignete Plattform oder ein geeignetes Tool, das Leistungsmetriken und Protokolle für die Arbeitslast aggregieren und speichern kann.

Abwägung: Machen Sie sich die Kosten für das Sammeln von Metriken und Protokollen klar. Im Allgemeinen gilt: Je mehr Metriken und Protokolle Sie erfassen, desto höher sind die Kosten.

Leistungsdaten segmentieren

Beim Segmentieren von Leistungsdaten geht es darum, Metriken und Protokolle basierend auf ihrer Herkunft, ihrem Zweck oder ihrer Umgebung zu organisieren und zu kategorisieren. Sie sollten beispielsweise Produktionsdaten von Nichtproduktionsdaten trennen oder zwischen Leistungszielen und Geschäftsmetriken unterscheiden. Die Segmentierung von Daten hilft bei der Optimierung bestimmter Umgebungen, erleichtert die Fehlerbehebung und begrenzt Ungenauigkeiten bei der Leistungsüberwachung. Durch die Aufrechterhaltung einer klaren Unterscheidung zwischen verschiedenen Datentypen können Sie relevante Messdaten effizienter erfassen, analysieren und darauf reagieren sowie die Workload-Integrität besser auf die Workload-Ziele abstimmen. Beachten Sie die folgenden Empfehlungen für das Segmentieren von Leistungsdaten:

  • Halten Sie Produktionsdaten und Nichtproduktionsdaten getrennt. Durch die Trennung der Daten nach Umgebung können Sie eine gezielte Überwachung und Optimierung jeder Umgebung sicherstellen. In Produktionsumgebungen können Sie Leistungsprobleme, die sich direkt auf Benutzer und Geschäftsabläufe auswirken, besser identifizieren und beheben. In Nicht-Produktionsumgebungen erleichtert die Datentrennung die effektive Fehlerbehebung und Feinabstimmung während der Testphase vor der Bereitstellung in der Produktion.

  • Verwenden Sie einen Datensatz innerhalb jedes Umgebung. Verwenden Sie nicht einen Datensatz für Leistungsziele und einen anderen Datensatz für Warnungen im Zusammenhang mit den Leistungszielen. Die Verwendung unterschiedlicher Datensätze führt zu ungenauen Warnungen, die die Wirksamkeit der Leistungsüberwachung beeinträchtigen.

  • separate Leistungsziele und Geschäftsmetriken. Die Betriebs- und Entwicklungsteams verwenden Leistungsziele, um die Integrität des Workloads zu überwachen und Geschäftsziele zu erreichen. Geschäftsmetriken beziehen sich auf Geschäftsziele oder Kundenberichterstattung. Erfassen Sie Geschäftsmetriken in einem separaten Datenstrom, auch wenn sich die Daten direkt überschneiden. Diese Trennung gibt Ihnen die Flexibilität, die richtigen Daten zu erfassen und die Daten unabhängig zu analysieren.

Aufbewahrungsrichtlinien festlegen

Aufbewahrungsrichtlinien bestimmen, wie lange Leistungsdaten aufbewahrt werden müssen. Durch die Festlegung dieser Richtlinien lässt sich der Speicher effizient verwalten und es wird sichergestellt, dass für die Analyse nur die erforderlichen Daten zugänglich sind. Solche Richtlinien unterstützen eine bessere Leistung und erfüllen Compliance-Standards. Sie sollten Aufbewahrungsrichtlinien für die Protokoll- und Messdaten konfigurieren, um eine effektive Fehlerbehebung und Überwachung in allen Umgebungen zu ermöglichen. Beispielsweise müssen die Protokolle und Metriken in einer Produktionsumgebung möglicherweise länger aufbewahrt werden als in der Testumgebung. Die Aufbewahrungsfrist sollte den Anforderungen und Compliance-Vorschriften Ihrer Organisation entsprechen. Entscheiden Sie, wie lange die Daten für Analyse- und Prüfzwecke aufbewahrt werden sollen. Archivieren Sie die Daten, die Sie nicht für eine sofortige Analyse benötigen.

Leistungsdaten sammeln

Zum Sammeln von Daten gehört das Überwachen und Analysieren der Leistungsmesswerte einer Arbeitslast, wie etwa Durchsatz, Latenz und Abschlusszeiten, die in erster Linie durch Instrumentierungscode erfasst werden. Daten zur Workload-Leistung liefern wertvolle Einblicke in den Zustand und die Leistung einer Anwendung. Durch die Überwachung und Analyse von Leistungsdaten können Sie Probleme identifizieren und beheben, die Leistung optimieren und fundierte Entscheidungen im Hinblick auf Ihren Workload treffen.

Code instrumentieren

Unter Instrumentierung versteht man den Prozess des Einbettens von Codeschnipseln oder Aktionen in den Code Ihres Workloads, beispielsweise das Erstellen benutzerdefinierter Ablaufverfolgungsereignisse in Ihrer Canvas-App. Die Instrumentierung dient dazu, Leistungsdaten während der Ausführung des Workloads zu erfassen. Es ist wichtig, Kennzahlen zu erfassen, die die kritischen Vorgänge der Arbeitslast hervorheben. Konzentrieren Sie sich auf Kennzahlen wie Durchsatz, Latenz und Fertigstellungszeit. Es ist wichtig, geschäftsbezogene Vorgänge von anderen Vorgängen zu unterscheiden. Achten Sie bei geschäftsbezogenen Daten darauf, dass die Metadaten so strukturiert sind, dass eine eindeutige Nachverfolgung und Speicherung möglich ist. Die Code-Instrumentierung bietet die folgenden Vorteile:

  • Identifizieren von Leistungsengpässen: Durch die Verfolgung von Kennzahlen wie beispielsweise der verstrichenen Zeit können Sie Engpässe identifizieren und den Code entsprechend optimieren.

  • Beurteilung des Systemverhaltens unter Last: Sie können sehen, wie sich die Arbeitslast unter verschiedenen Belastungsszenarien verhält. Mithilfe dieser Daten können Sie Probleme im Zusammenhang mit Skalierbarkeit, Parallelität und Ressourcennutzung erkennen.

  • Sendungsverfolgung Arbeitsbelastung Gesundheit und Verfügbarkeit: Da die wichtigsten Leistungsindikatoren in Echtzeit überwacht werden, können Sie Warnungen zu potenziellen Problemen erhalten, die die Leistung und Verfügbarkeit der Anwendung beeinträchtigen.

  • Verbessern Sie das Benutzererlebnis: Sie können Einblicke in die Interaktion der Benutzer mit der Arbeitslast gewinnen. Verwenden Sie diese Informationen, um das Benutzererlebnis zu optimieren und Verbesserungsbereiche zu identifizieren.

  • Kapazität planen und Ressourcen zuweisen: Die von der Instrumentierung erfassten Leistungsdaten können wertvolle Einblicke in den Ressourcenbedarf einer Arbeitslast liefern. Diese Informationen können Ihnen bei Ihren Entscheidungen zur Kapazitätsplanung und Ressourcenzuweisung helfen.

Wenn Sie Code für die Leistungsüberwachung instrumentieren, berücksichtigen Sie die folgenden Strategien:

  • Verwenden Sie APM-Tools : Tools zur Anwendungsleistungsüberwachung (APM) erfassen und analysieren Leistungsdaten, einschließlich Metriken, Traces und Protokolle. APM-Tools bieten Funktionen wie Instrumentierung auf Codeebene, Transaktionsverfolgung und Leistungsprofilierung.

  • Benutzerdefinierte Instrumentierung : Entwickler können benutzerdefinierten Code hinzufügen, um Leistungsmetriken zu erfassen, die für ihre Anwendung und Arbeitslast einzigartig sind. Die benutzerdefinierte Instrumentierung kann Laufzeiten messen, die Ressourcennutzung verfolgen oder bestimmte Ereignisse erfassen.

  • Erfassen Sie Transaktionszeiten. Bei der Erfassung von Transaktionszeiten handelt es sich um die Messung der End-to-End-Zeiten für wichtige technische Funktionen im Rahmen der Leistungsüberwachung. Metriken auf Anwendungsebene sollten End-to-End-Transaktionszeiten umfassen. Diese Transaktionszeiten sollten wichtige technische Funktionen wie Datenbankabfragen, Antwortzeiten für externe API-Aufrufe und Fehlerraten von Verarbeitungsschritten abdecken.

  • Verwenden Sie Telemetriestandards. Erwägen Sie die Verwendung von APM-Tool-Instrumentierungsbibliotheken und Tools, die auf einem Telemetriestandard wie OpenTelemetry basieren.

Ressourcenleistungsdaten sammeln

Durch das Sammeln von Ressourcenleistungsdaten können Sie Einblicke in die Integrität und das Verhalten Ihres Workloads gewinnen. Ressourcenleistungsdaten liefern Informationen zur Ressourcennutzung, die für die Kapazitätsplanung von entscheidender Bedeutung sind. Diese Daten bieten außerdem Einblicke in die Integrität eines Workloads und können Ihnen bei der Erkennung und Behebung von Problemen helfen. Beachten Sie die folgenden Empfehlungen:

  • Sammeln Sie Metriken und Protokolle für jede Ressource. Jeder Dienst verfügt über einen Satz von Metriken, der für die Funktionalität der Ressource einzigartig ist. Diese Metriken helfen Ihnen, die Integrität und die Leistung der Ressource zu verstehen.

  • Verwenden Sie Plattform-Tools. Lassen Sie sich von eingebauten und integrierten Überwachungslösungen wie Azure Monitor Insights inspirieren. Dieses Tool optimiert Leistungsabläufe. Berücksichtigen Sie bei der Auswahl einer Plattform auch die Plattformtools und investieren Sie in benutzerdefinierte Tools oder Berichte.

  • Überwachen Sie den Netzwerkverkehr. Bei der Überwachung des Netzwerkverkehrs geht es darum, den Fluss und die Muster der Daten zu verfolgen und zu analysieren, während sie sich über Netzwerkpfade bewegen. Erstellen Sie Datenverkehrsanalysen und überwachen Sie den Datenverkehr, der Subnetzgrenzen überschreitet. Ihr Ziel ist die Analyse und Optimierung der Netzwerkleistung.

Sammeln von Datenbank- und Speicherdaten

Viele Datenbank- und Speichersysteme bieten eigene Überwachungstools. Diese Tools erfassen systemspezifische Leistungsdaten. Datenbank- und Speichersysteme generieren häufig Protokolle, die Leistungsbezogene Ereignisse und Indikatoren enthalten. Erfassen Sie Datenbankdaten und Speicherleistungsdaten, damit Sie Engpässe identifizieren, Probleme diagnostizieren und fundierte Entscheidungen zur Verbesserung der Gesamtleistung und Zuverlässigkeit Ihres Workloads treffen können. Erwägen Sie die Erfassung der folgenden Arten von Leistungsdaten:

  • Durchsatz : Der Durchsatz misst die Datenmenge, die über einen bestimmten Zeitraum aus dem Speichersystem gelesen oder dorthin geschrieben wird. Durchsatzdaten geben die Datenübertragungskapazität an.

  • Latenz : Die Latenz misst, wie lange Speichervorgänge dauern. Latenzdaten geben Aufschluss über die Reaktionsfähigkeit des Speichersystems.

  • IOPS (E/A-Operationen pro Sekunde) : Daten über die Anzahl der Lese- oder Schreibvorgänge, die das Speichersystem in einer Sekunde ausführen kann. IOPS-Daten geben Aufschluss über den Durchsatz und die Reaktionsfähigkeit des Speichersystems.

  • Kapazitätsauslastung : Die Kapazitätsnutzung ist die Menge der genutzten Speicherkapazität und die Menge, die verfügbar ist. Daten zur Kapazitätsnutzung unterstützen Unternehmen bei der Planung ihres zukünftigen Speicherbedarfs.

Connector-Leistungsdaten sammeln

Die Zeit, die mit Warten auf den Abschluss integrierter Dienstvorgänge verbracht wird, kann zu einer insgesamt schlechten Leistung einer Arbeitslast beitragen. Wenn Ihre Workload Konnektoren zur Integration von Diensten verwendet, sollten Sie die für jeden Konnektorvorgang aufgewendete Zeit messen, um die Auswirkung zu bewerten und zu entscheiden, ob Ihr Workload-Design optimiert werden muss. Je nach Dienst können Sie den Ausführungsverlauf oder eine benutzerdefinierte Logik verwenden, um die für Connectorvorgänge aufgewendete Zeit zu erfassen.

Daten validieren und analysieren

Ihre Leistungsdaten sollten an den Leistungszielen ausgerichtet sein. Die Daten müssen die Arbeitslast bzw. die Flussleistung im Hinblick auf die Leistungsziele vollständig und genau darstellen. Beispielsweise beträgt die Antwortzeit eines Webdienstes als Leistungsziel 500 Millisekunden. Machen Sie die Datenanalyse zur Routine, da durch häufige Auswertungen Leistungsprobleme frühzeitig erkannt und behoben werden können.

  • Erstellen Sie Warnmeldungen. Es ist von Vorteil, Warnmeldungen zu haben, die umsetzbar sind und eine schnelle Identifizierung und Behebung von Leistungsproblemen ermöglichen. Diese Warnmeldungen sollten deutlich auf die überschrittene Leistungsschwelle, die potenziellen Auswirkungen auf das Geschäft und die betroffenen Komponenten hinweisen. Beginnen Sie, indem Sie häufige und empfohlene Warnmeldungen festlegen. Mit der Zeit können Sie diese Kriterien Ihren speziellen Anforderungen entsprechend ändern. Das Hauptziel dieser Warnungen sollte darin bestehen, potenzielle Leistungseinbußen vorherzusagen, bevor sie zu erheblichen Problemen eskalieren. Wenn Sie für eine externe Abhängigkeit keinen Alarm festlegen können, sollten Sie eine Methode zum Erfassen indirekter Messwerte entwickeln, beispielsweise der Dauer eines Abhängigkeitsaufrufs.

  • Legen Sie Grenzen für die Datensammlung fest. Bestimmen und legen Sie logische Grenzen für die Menge der erfassten Daten und deren Aufbewahrungsdauer fest. Telemetrie kann manchmal überwältigende Datenmengen erzeugen. Es ist wichtig, sich auf die Erfassung nur der wesentlichsten Leistungsindikatoren zu konzentrieren oder über ein effizientes System zu verfügen, um aus Ihren Leistungsdaten aussagekräftige Erkenntnisse zu gewinnen.

Power Platform Erleichterung

Erfassen von Anwendungsleistungsdaten : Application Insights ist eine Funktion von Azure Monitor, mit der Sie die Leistung und Verfügbarkeit Ihrer Anwendung überwachen können. Die Daten werden in Azure Monitor-Protokollen gespeichert von Application Insights und visualisiert in Leistung und Ausfälle Paneele. Die Daten werden im Standardschem in Ihre Application Insights-Umgebung exportiert, die von Application Insights definiert ist. Sie können exportieren Dataverse Und Power Automate Daten Zu Application Insights, Verbinden deine Canvas-Apps Zu Application Insights und erfassen Sie Telemetriedaten von Ihrem Microsoft Copilot Studio Kopilot zur Verwendung in Azure Application Insights.

Application Insights ermöglicht Ihnen die Auswahl der Datenansichten Server und Browser. Indem Sie die Vorgänge mit der längsten Dauer ermitteln, können Sie potenzielle Probleme diagnostizieren.

Verwenden Sie native Plattformfunktionen, um die Leistung zu analysieren: Analytik in Copilot Studio bietet einen umfassenden Überblick über die Leistung Ihres Copiloten. Es nutzt die Technologie der künstlichen Intelligenz (KI), um zu ermitteln, welche Themen den größten Einfluss auf die Eskalationsrate, Abbruchrate und Lösungsrate haben. Performance-Einblicke für Power Apps Analysieren Sie Laufzeitbenutzerdaten und stellen Sie eine priorisierte Liste mit Empfehlungen bereit, um die Leistung modellgesteuerter Apps zu verbessern.

Zentralisieren, Segmentieren und Aufbewahren von Leistungsdaten: Microsoft sammelt bereits umfangreiche Telemetriedaten zu Dataverse, Power Automate Cloud-Flows und modellgesteuerten Apps. Durch die Application Insights-Integration stellen Umgebungs oder Mandantenadministrierende den Application Insights-Instrumentierungsschlüssel beim Einrichten des Datenexportprozesses im Power Platform Admin Center bereit. Sobald die Einrichtung abgeschlossen ist, werden die Microsoft über Ihr Umgebung gesammelten Telemetriedaten an Ihr Application Insights Umgebung gesendet. Wenn Sie die Application Insights-Integration verwenden, erhalten Sie einen standardisierten Telemetriesatz, der der Application Insights TelemetriedatenModell folgt. Zusätzlich zu dieser Integration können Sie auch Verbinden-Canvas-Apps verwenden, um Application Insights Telemetriedaten von Ihrem Microsoft Copilot Studio Copiloten zur Verwendung in Azure Application Insights zu erfassen.

Sammeln von Leistungsdaten zu Azure-Ressourcen: Die meisten Azure-Dienste generieren Plattformprotokolle und -metriken, die Diagnose- und Überwachungsinformationen bereitstellen. Durch Aktivieren der Diagnoseeinstellungen können Sie die zu erfassenden und zu speichernden Plattformprotokolle und -metriken angeben. Aktivieren Sie zu Korrelationszwecken die Diagnose für alle unterstützten Dienste und senden Sie die Protokolle an dasselbe Ziel wie Ihre Anwendungsprotokolle.

Sammeln von Datenbankleistungsdaten: Microsoft Dataverse integriert mit Application Insights. Der Datenstrom liefert derzeit Leistungsdaten zu eingehenden Aufrufen von der Dataverse API, Dataverse Plug-In-Ausführungsaufrufen und Dataverse SDK-Aufrufen. Richten Sie Warnmeldungen basierend auf Leistungsschwellenwerten ein, um über Probleme benachrichtigt zu werden.

Validieren und Analysieren von Leistungsdaten: In Azure Monitor können Sie Azure Monitor-Protokolle verwenden, um Protokolldaten aus Ihren Anwendungen und Systemen zu erfassen, zu analysieren und zu visualisieren. Durch die Aggregierung von Protokollen können Sie Ereignisse abfragen und Einblicke in die Leistung Ihrer Anwendung gewinnen. Weitere Informationen finden Sie unter Kostenberechnungen und Optionen für Azure Monitor-Protokolle** und Preise für Azure Monitor.

In Azure Monitor können Sie Warnungsregeln festlegen, um bestimmte Leistungsmetriken zu überwachen und Warnungen basierend auf vordefinierten Bedingungen auszulösen. Sie können beispielsweise eine Warnungsregel erstellen, die Sie benachrichtigt, wenn die Antwortzeit einen bestimmten Grenzwert überschreitet. Konfigurieren Sie die Warnregel, um Benachrichtigungen an die gewünschten Empfänger zu senden.

Wenn Sie eine Warnungsregel erstellen, können Sie festlegen, nach welchen Kriterien eine Warnung ausgelöst werden soll. Sie können Schwellenwerte, Aggregationsmethoden, Zeitfenster und die Häufigkeit der Auswertung festlegen. Definieren Sie die Kriterien basierend auf Ihren Anforderungen zur Leistungsüberwachung. Zusätzlich zum Senden von Benachrichtigungen können Sie Aktionen angeben, die ausgeführt werden sollen, wenn ein Alarm ausgelöst wird. Zu den Aktionen können das Senden von E-Mails, das Aufrufen von Webhooks oder das Ausführen von Azure-Funktionen gehören. Wählen Sie die entsprechenden Aktionen aus, um auf das jeweilige Alarmszenario zu reagieren.

Beispiele

Leistungsfähigkeitscheckliste

Lesen Sie die vollständigen Empfehlungen.