Anwendungsübersicht: Selektieren von verteilten Anwendungen
Anwendungsübersichten stellen die logische Struktur einer verteilten Anwendung dar. Einzelne Komponenten der Anwendung werden durch Ihre „roleName“- oder „name“-Eigenschaft in aufgezeichneten Telemetriedaten bestimmt. Diese Komponenten werden als Kreise auf der Übersicht dargestellt und als „Knoten“ bezeichnet. HTTP-Aufrufe zwischen Knoten werden als Pfeile dargestellt, die diese Knoten verbinden, die als „Verbinder“ oder „Edges“ bezeichnet werden. Der Knoten, der den Aufruf tätigt, ist die „Quelle“ des Aufrufs, und der empfangende Knoten ist das „Ziel“ des Aufrufs.
Mit der Anwendungsübersicht können Sie Leistungsengpässe oder Fehlerhotspots in allen Komponenten Ihrer verteilten Anwendung erkennen. Jeder Knoten in der Übersicht repräsentiert eine Anwendungskomponente bzw. deren Abhängigkeiten und weist einen Key Performance Indicator (KPI) zur Integrität und einen Warnungsstatus auf. Für jede Komponente können Sie detailliertere Diagnosen erhalten, z. B. für Application Insights-Ereignisse. Wenn Ihre App Azure-Dienste nutzt, können Sie auch Azure-Diagnosedaten auswählen, z. B. SQL Database Advisor-Empfehlungen.
Die Anwendungsübersicht bietet auch eine intelligente Ansicht, um schnelle Dienstintegritätsprüfungen zu unterstützen.
Was ist eine Komponente?
Komponenten sind unabhängig bereitstellbare Teile Ihrer verteilten oder Microserviceanwendung. Entwickler und Betriebsteams verfügen über Sichtbarkeit oder Zugriff für die von diesen Anwendungskomponenten generierte Telemetrie auf Codeebene. Zum Beispiel:
- Komponenten unterscheiden sich von „beobachteten“ externen Abhängigkeiten wie Azure SQL und Azure Event Hubs, auf die Ihr Team oder Ihre Organisation möglicherweise keinen Zugriff hat (Code oder Telemetriedaten).
- Komponenten können in einer beliebigen Anzahl von Server-, Rollen- oder Containerinstanzen ausgeführt werden.
- Komponenten können separate Application Insights-Ressourcen sein, auch wenn sich die Abonnements unterscheiden. Sie können auch verschiedene Rollen sein, die an eine einzelne Application Insights-Ressource melden. In der Vorschau werden die Komponenten unabhängig von der Art ihrer Einrichtung in der Übersicht angezeigt.
Verbundanwendungsübersicht
Sie können die vollständige Anwendungstopologie über mehrere Ebenen verwandter Anwendungskomponenten hinweg anzeigen. Bei Komponenten kann es sich um verschiedene Application Insights-Ressourcen oder verschiedene Rollen in einer einzelnen Ressource handeln. Die Anwendungsübersicht ermittelt Komponenten, indem sie HTTP-Abhängigkeitsaufrufe zwischen Servern verfolgt, auf denen das Application Insights SDK installiert ist.
Diese Funktionalität beginnt mit einer progressiven Ermittlung der Komponenten. Wenn Sie die Anwendungsübersicht zum ersten Mal laden, wird eine Reihe von Abfragen ausgelöst, um die Komponenten zu ermitteln, die mit dieser Komponente in Zusammenhang stehen. Mit einer Schaltfläche in der oberen linken Ecke wird die Anzahl der Komponenten in Ihrer Anwendung aktualisiert, wenn diese ermittelt werden.
Wenn Sie Übersichtskomponenten aktualisieren auswählen, wird die Übersicht mit allen bis zu diesem Zeitpunkt ermittelten Komponenten aktualisiert. Je nach Komplexität Ihrer Anwendung kann es eine Minute dauern, bis dieses Update geladen ist.
Wenn es sich bei allen Komponenten um Rollen in einer einzelnen Application Insights-Ressource handelt, ist dieser Ermittlungsschritt nicht erforderlich. Nach dem ersten Ladevorgang für eine solche Anwendung sind alle Komponenten vorhanden.
Eines der wichtigsten Ziele dieser Oberfläche ist es, komplexe Topologien mit Hunderten von Komponenten zu visualisieren.
Wählen Sie eine beliebige Komponente aus, um die zugehörigen Details anzuzeigen und zur Selektierung von Leistungs- und Fehleraspekten für diese Komponente zu wechseln.
Untersuchen von Fehlern
Wählen Sie Fehler untersuchen aus, um den Bereich Fehler zu öffnen.
Untersuchen der Leistung
Wählen Sie Leistung untersuchen aus, um Probleme mit der Leistung zu behandeln.
Zu Details wechseln
Die Schaltfläche Zu Details gehen zeigt die End-to-End-Transaktion an, die Ansichten auf der Anrufstapelebene bietet.
In Protokollen anzeigen (Analytics)
Wählen Sie In Protokollen anzeigen (Analytics) aus, um Ihre Anwendungsdaten abzufragen und eingehender zu untersuchen.
Alerts
Wählen Sie Warnungen aus, um aktive Warnungen und die zugrunde liegenden Regeln anzuzeigen, die zur Ausführung der Warnungen führen.
Festlegen oder Außerkraftsetzen des Cloudrollennamens
In der Anwendungsübersicht wird die Eigenschaft Cloudrollenname verwendet, um die Komponenten in der Zuordnung zu identifizieren.
Befolgen Sie diese Anleitung, um Cloudrollennamen manuell festzulegen oder außer Kraft zu setzen und den in der Anwendungszuordnung angezeigten Inhalt zu ändern.
Hinweis
Das Application Insights SDK oder der Application Insights-Agent versieht die von Komponenten in einer Azure App Service-Umgebung ausgegebenen Telemetriedaten automatisch mit der Eigenschaft „Cloudrollenname“.
Schreiben eines benutzerdefinierten TelemetryInitializer
using Microsoft.ApplicationInsights.Channel;
using Microsoft.ApplicationInsights.Extensibility;
namespace CustomInitializer.Telemetry
{
public class MyTelemetryInitializer : ITelemetryInitializer
{
public void Initialize(ITelemetry telemetry)
{
if (string.IsNullOrEmpty(telemetry.Context.Cloud.RoleName))
{
//set custom role name here
telemetry.Context.Cloud.RoleName = "Custom RoleName";
telemetry.Context.Cloud.RoleInstance = "Custom RoleInstance";
}
}
}
}
ASP.NET-Apps: Laden Sie den Initialisierer in die aktive TelemetryConfiguration
In ApplicationInsights.config
:
<ApplicationInsights>
<TelemetryInitializers>
<!-- Fully qualified type name, assembly name: -->
<Add Type="CustomInitializer.Telemetry.MyTelemetryInitializer, CustomInitializer"/>
...
</TelemetryInitializers>
</ApplicationInsights>
Eine alternative Methode von ASP.NET-Web-Apps besteht darin, den Initialisierer im Code zu instanziieren, beispielsweise in Global.aspx.cs
:
using Microsoft.ApplicationInsights.Extensibility;
using CustomInitializer.Telemetry;
protected void Application_Start()
{
// ...
TelemetryConfiguration.Active.TelemetryInitializers.Add(new MyTelemetryInitializer());
}
Hinweis
Das Hinzufügen eines Initialisierers mit ApplicationInsights.config
oder TelemetryConfiguration.Active
ist für ASP.NET Core-Anwendungen nicht zulässig.
ASP.NET Core-Apps: Laden eines Initialisierers in TelemetryConfiguration
Um für ASP.NET Core-Anwendungen eine neue TelemetryInitializer
-Instanz hinzuzufügen, fügen Sie sie dem Abhängigkeitsinjektionscontainer hinzu, wie gezeigt. Diesen Schritt führen Sie in der ConfigureServices
-Methode Ihrer Startup.cs
-Klasse aus.
using Microsoft.ApplicationInsights.Extensibility;
using CustomInitializer.Telemetry;
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();
}
Grundlegendes zum „Cloudrollennamen“ im Kontext einer Anwendungsübersicht
Wenn Sie das Konzept von Cloudrollennamen besser verstehen möchten, sehen Sie sich eine Anwendungsübersicht an, die mehrere Cloudrollennamen enthält.
In der gezeigten Anwendungsübersicht sind alle Namen in grünen Kästen „Cloudrollenname“-Werte für verschiedene Aspekte dieser spezifischen verteilten Anwendung. Für diese Anwendung bestehen ihre Rollen aus Authentication
, acmefrontend
, Inventory Management
und Payment Processing Worker Role
.
Bei dieser App stellt jeder dieser Cloudrollennamen außerdem eine andere eindeutige Application Insights-Ressource mit ihren eigenen Instrumentierungsschlüsseln dar. Da der Besitzer dieser Anwendung Zugriff auf jede dieser vier verschiedenen Application Insights-Ressourcen hat, können die zugrunde liegenden Beziehungen in der Anwendungsübersicht zu einer Übersicht zusammengefügt werden.
[Description("Name of the role the application is a part of. Maps directly to the role name in azure.")]
[MaxStringLength("256")]
705: string CloudRole = "ai.cloud.role";
[Description("Name of the instance where the application is running. Computer name for on-premises, instance name for Azure.")]
[MaxStringLength("256")]
715: string CloudRoleInstance = "ai.cloud.roleInstance";
Alternativ können Cloudrolleninstanzen für Szenarien hilfreich sein, in denen ein Cloudrollenname Ihnen mitgeteilt hat, dass sich das Problem irgendwo in Ihrem Web-Front-End befindet. Möglicherweise führen Sie jedoch mehrere Server mit Lastenausgleich in Ihrem Web-Front-End aus. Mithilfe von Kusto-Abfragen ein Drilldown in eine tiefere Ebene ausführen zu können und herauszufinden, ob sich das Problem auf alle Web-Front-End-Server oder -Instanzen auswirkt oder nur auf eine, kann wichtig sein.
Intelligente Ansicht. Ein Beispiel für ein Szenario, in dem Sie den Wert für die Cloudrolleninstanz überschreiben sollten, ist eine Situation, in der Ihre Anwendung in einer containerisierten Umgebung ausgeführt wird. In diesem Fall reicht die Kenntnis des einzelnen Servers möglicherweise nicht aus, um ein bestimmtes Problem zu lokalisieren.
Weitere Informationen zum Überschreiben der Eigenschaft „Cloudrollenname“ mit Telemetrieinitialisierern finden Sie unter Add properties: ITelemetryInitializer (Hinzufügen von Eigenschaften: ITelemetryInitializer).
Anwendungsübersichtsfilter
Mithilfe von Anwendungsübersichtsfiltern kann der Benutzer die Anzahl der angezeigten Knoten und Edges reduzieren, indem er einen oder mehrere Filter anwendet. Diese Filter können verwendet werden, um den Umfang der Übersicht zu verringern und so eine kleinere und konzentriertere Übersicht anzuzeigen.
Erstellen von Anwendungsübersichtsfiltern
Um einen Filter zu erstellen, wählen Sie in der Symbolleiste der Anwendungsübersicht die Schaltfläche „Filter hinzufügen“ aus.
Daraufhin wird ein Dialogfeld mit drei Abschnitten angezeigt: 1) „Filtertyp auswählen“, 2) „Filterparameter auswählen“ und 3) „Überprüfen“.
Der erste Abschnitt verfügt über zwei Optionen:
- Knotenfilter
- Verbinder (Edge)-Filter
Die Inhalte in den anderen Abschnitten ändern sich basierend auf der ausgewählten Option.
Knotenfilter
Knotenfilter ermöglichen es dem Benutzer, nur ausgewählte Knoten auf der Übersicht zu belassen und den Rest auszublenden. Ein Knotenfilter überprüft jeden Knoten darauf, ober er eine Eigenschaft (z. B. seinen Name) mit einem Wert enthält, der mit einem Suchwert über einen bestimmten Operator übereinstimmt. Wenn ein Knoten durch einen Knotenfilter entfernt wird, werden auch alle seine zugehörigen Verbinder (Edges) entfernt.
Für Knoten stehen drei Parameter zur Verfügung:
Mit „Eingeschlossene Knoten“ kann der Benutzer nur Knoten mit übereinstimmenden Eigenschaften auswählen oder auch Quellknoten, Zielknoten oder beides in die resultierende Übersicht einschließen.
„Knoten und Quellen, Ziele“: Dies bedeutet, dass Knoten, die den Suchparametern entsprechen, in die resultierende Übersicht aufgenommen werden, und Knoten, die Quellen oder Ziele der übereinstimmenden Knoten sind, werden ebenfalls eingeschlossen, auch wenn sie keine Eigenschaftswerte aufweisen, die der Suche entsprechen. Quell- und Zielknoten werden zusammen als „verbundene“ Knoten bezeichnet.
„Knoten und Quellen“: Wie oben, aber Zielknoten werden nicht automatisch in die Ergebnisse einbezogen.
„Knoten und Ziele“: Wie oben, aber Quellknoten werden nicht automatisch einbezogen.
„Nur Knoten“: Alle Knoten in der resultierenden Übersicht müssen einen Eigenschaftswert aufweisen, der übereinstimmt.
„Operator“ ist der Typ der Überprüfung, die mit dem Eigenschaftenwert jedes Knotens durchgeführt wird:
contains
!contains (enthält nicht)
== (ist gleich)
!= (ist nicht gleich)
„Suchwert“ ist der Text, der enthalten, nicht enthalten, gleich oder nicht gleich dem Wert einer Knoteneigenschaft sein muss. Einige der in Knoten vorgefundenen Werte, die sich in der Übersicht befinden, werden in einer Dropdownliste angezeigt. Jeder beliebige Wert kann eingegeben werden, indem Sie in der Dropdownliste auf „Option erstellen...“ klicken.
Im folgenden Screenshot wird der Filter beispielsweise so konfiguriert, dass Knoten ausgewählt werden, die den Text "-west"enthalten. Quell- undZielknoten werden ebenfalls in die resultierende Übersicht einbezogen. Im selben Screenshot kann der Benutzer einen der in der Übersicht gefundenen Werte auswählen oder eine Option erstellen, die nicht genau mit einem der in der Karte gefundenen Werte übereinstimmt.
Verbinder (Edge)-Filter
Verbinderfilter untersuchen die Eigenschaften eines Verbinders auf Übereinstimmung mit einem Wert. Verbinder, die nicht mit dem Filter übereinstimmen, werden aus der Übersicht entfernt. Dasselbe passiert mit Knoten, bei denen keine Verbinder mehr vorhanden sind.
Verbinderfilter erfordern drei Parameter:
Mit „Connectors filtern nach“ kann der Benutzer auswählen, welche Eigenschaft eines Verbinders verwendet werden soll:
„Fehlerverbinder (rot hervorgehoben)“ wählt Verbinder auf Grundlage ihrer Farbe (Rot oder nicht) aus. Für diesen Filtertyp kann kein Wert eingegeben werden, nur ein Operator „==“ oder „!=“, was „Verbinder mit Fehlern“ und „Verbinder ohne Fehler“ bedeutet.
„Fehlerrate“ verwendet die durchschnittliche Fehlerrate für den Verbinder, also die Anzahl der fehlgeschlagenen Aufrufe dividiert durch die Anzahl aller Aufrufe, ausgedrückt als Prozentsatz. Ein Wert von „1“ würde sich beispielsweise auf 1 % fehlgeschlagene Aufrufe beziehen.
„Durchschnittliche Aufrufdauer (****ms)“ verwendet genau dies: die durchschnittliche Dauer aller vom Verbinder dargestellten Aufrufe in Millisekunden. Ein Wert von „1000“ würde sich beispielsweise auf Aufrufe beziehen, die einen Durchschnitt von 1 Sekunde aufweisen.
„Anzahl Aufrufe“ verwendet die Gesamtzahl der vom Verbinder dargestellten Aufrufe.
„Operator“ ist der Vergleich, der zwischen der Verbindereigenschaft und dem unten eingegebenen Wert durchgeführt wird. Die Optionen ändern sich: „Fehlerverbinder“ besitzt die Optionen „ist gleich“/„ist nicht gleich“. Alle anderen verfügen über „ist größer/kleiner als“.
„Wert“ ist der Vergleichswert für den Filter. Es gibt nur eine Option für den Filter „Fehlerverbinder“: „Fehler“. Andere Filtertypen erfordern einen numerischen Wert und bieten eine Dropdownliste mit einigen vorab aufgefüllten Einträgen, die für die Übersicht relevant sind.
Einige dieser Einträge haben die Bezeichnung „(Pxx)“, bei der es sich um Perzentilniveaus handelt. Beispielsweise kann der Filter „Durchschnittliche Aufrufdauer“ den Wert „200 (P90)“ aufweisen, was angibt, dass 90 % aller Verbinder (unabhängig von der Anzahl der Aufrufe, die sie darstellen) eine Aufrufdauer von weniger als 200 ms aufweisen.
Wenn eine bestimmte Zahl in der Dropdownliste nicht angezeigt wird, kann sie eingegeben und erstellt werden, indem Sie auf „Option erstellen“ klicken. Wenn Sie „P“ eingeben, werden alle Perzentilwerte in der Dropdownliste angezeigt.
Abschnitt „Überprüfen“
Der Abschnitt „Überprüfen“ enthält textuelle und visuelle Beschreibungen dessen, was der Filter ausführt, die Ihnen Auskunft zur Funktionsweise der Filter erteilen sollten:
Verwenden von Filtern in einer Anwendungsübersicht
Interaktivität zwischen Filtern
Nachdem Sie einen Filter im Popup „Filter hinzufügen“ konfiguriert haben, wählen Sie „Anwenden“ aus, um den Filter zu erstellen. Es können mehrere Filter angewendet werden, was sequenziell von links nach rechts erfolgt. Jeder Filter kann weitere Knoten und Verbinder entfernen, sie aber nicht wieder zur Übersicht hinzufügen.
Die Filter werden als runde Schaltflächen über der Anwendungsübersicht angezeigt:
Wenn Sie auf in einem Filter klicken, wird dieser Filter entfernt. Wenn Sie an einer anderen Stelle auf die Schaltfläche klicken, kann der Benutzer die Werte des Filters bearbeiten. Wenn der Benutzer Werte im Filter ändert, werden die neuen Werte angewendet, sodass die Übersicht eine Vorschau der Änderung darstellt. Durch Klicken auf „Abbrechen“ wird der Filter in seinem Zustand von vor der Bearbeitung wiederhergestellt.
Wiederverwenden von Filtern
Filter können auf zwei Arten wiederverwendet werden:
Mit der Schaltfläche „Link kopieren“ auf der Symbolleiste oberhalb der Übersicht werden die Filterinformationen in der kopierten URL codiert. Dieser Link kann dann in den Lesezeichen des Browsers gespeichert oder mit andere Personen geteilt werden. „Link kopieren“ behält den Dauerwert bei, aber nicht die absolute Zeit, sodass sich die zu einem späteren Zeitpunkt angezeigte Übersicht möglicherweise von der zum Zeitpunkt der Erstellung des Links beobachteten Übersicht unterscheiden wird.
Die Dashboard-Stecknadel
befindet sich neben der Titelleiste des Bereichs „Anwendungsübersicht“. Mit dieser Schaltfläche wird die Übersicht zusammen mit den darauf angewendeten Filtern an ein Dashboard angeheftet. Diese Aktion kann für Filter nützlich sein, die häufig von Interesse sind. Beispielsweise kann der Benutzer eine Übersicht mit dem darauf angewendeten Filter „Fehlerverbinder“ anheften, woraufhin die Dashboardansicht nur Knoten anzeigt, deren HTTP-Aufrufe Fehler aufweisen.
Verwendungsszenarien für Filter
Es gibt viele Filterkombinationen. Im Folgenden finden Sie einige Vorschläge, die für die meisten Übersichten gelten und sich als nützlich zum Anheften an einem Dashboard erweisen können:
Nur Fehler anzeigen, die signifikant erscheinen, indem Sie den Filter „Fehlerverbinder“ zusammen mit der „Intelligenten Ansicht“ verwenden:
Ausblenden von Connectors mit geringem Datenverkehr und ohne Fehler, um sich schnell auf Probleme zu konzentrieren, die größere Auswirkungen haben:
Anzeigen von Verbindern mit hohem Datenverkehr und hoher durchschnittlicher Dauer, um sich auf potenzielle Leistungsprobleme zu konzentrieren:
Anzeigen eines bestimmten Teils einer verteilten Anwendung (erfordert eine geeignete RoleName-Benennungskonvention):
Ausblenden eines Abhängigkeitstyps, der zu verrauscht ist:
Anzeigen von nur Verbindern, die eine höhere Fehlerrate als ein bestimmter Wert aufweisen:
Intelligente Ansicht der Anwendungsübersicht (öffentliche Vorschau)
In den folgenden Abschnitten wird die intelligente Ansicht besprochen.
Zusammenfassung der intelligenten Ansicht
Die intelligente Ansicht der Anwendungsübersicht ist so konzipiert, dass Dienstintegritätsuntersuchungen unterstützt werden. Sie wendet maschinelles Lernen an, um mögliche Problemursachen schnell zu identifizieren, indem sie Störungen herausfiltert. Das Machine Learning-Modell lernt aus dem vergangenen Verhalten der Anwendungsübersicht, um vorherrschende Muster und Anomalien zu identifizieren, die auf mögliche Ursachen eines Vorfalls hinweisen.
In großen verteilten Anwendungen gibt es immer einen gewissen Grad an Störungen („noise“), die von „unschädlichen“ Fehlern stammen, was dazu führen kann, dass die Anwendungsübersicht „verrauscht“ ist und somit viele rote Kanten anzeigt. Die intelligente Ansicht zeigt nur die wahrscheinlichsten Ursachen von Dienstfehlern und entfernt rote Knoten-zu-Knoten-Kanten (Kommunikation zwischen Diensten) in fehlerfreien Diensten. Die intelligente Ansicht hebt die Kanten rot hervor, die untersucht werden sollten. Sie bietet außerdem umsetzbare Erkenntnisse zu den hervorgehobenen Kanten.
Vorteile der intelligenten Ansicht
- Reduziert die Zeit bis zur Lösung, indem nur die Fehler hervorgehoben werden, die untersucht werden müssen
- Liefert verwertbare Erkenntnisse darüber, warum eine bestimmte rote Kante hervorgehoben wurde
- Ermöglicht die nahtlose Verwendung der Anwendungsübersicht für große verteilte Anwendungen (indem sie sich nur auf Kanten konzentrieren, die rot markiert sind)
Aktivieren der intelligenten Ansicht in der Anwendungsübersicht
Aktivieren Sie die Umschaltfläche Intelligente Ansicht. Wenn Sie optional die Empfindlichkeit der Erkennungen ändern möchten, wählen Sie Niedrig, Mittel oder Hoch aus. Weitere Informationen finden Sie in der Problembehandlungsfrage zur Empfindlichkeit.
Nachdem Sie die intelligente Ansicht aktiviert haben, wählen Sie eine der hervorgehobenen Kanten aus, um die „umsetzbaren Erkenntnisse“ anzuzeigen. Die Erkenntnisse werden im rechten Bereich angezeigt und erläutern, warum die Kante hervorgehoben wurde.
Um mit der Problembehandlung zu beginnen, wählen Sie Fehler untersuchen aus. Untersuchen Sie im daraufhin angezeigten Bereich Fehler, ob das erkannte Problem die Grundursache ist. Wenn keine Kante rot ist, hat das Machine Learning-Modell keine potenziellen Vorfälle in den Abhängigkeiten Ihrer Anwendung gefunden.
Um Feedback bereitzustellen, wählen Sie die Schaltfläche Feedback in der Übersicht aus.
Wie bestimmt die intelligente Ansicht, wo rote Kanten hervorgehoben werden?
Die intelligente Ansicht verwendet das patentierte Machine Learning-Modell „AIOps“, um in einer Anwendungsübersicht hervorzuheben, was wirklich wichtig ist.
Einige zu berücksichtigende Beispiele sind:
- Fehlerraten
- Anforderungsanzahl
- Zeitspannen
- Anomalien in den Daten
- Abhängigkeitstypen
Zum Vergleich: In der normalen Ansicht wird nur die unformatierte Fehlerrate verwendet.
Wie funktioniert Empfindlichkeit in der intelligenten Ansicht?
Die Empfindlichkeit der intelligenten Ansicht passt die Wahrscheinlichkeit an, dass ein Dienstproblem erkannt wird.
Passen Sie die Vertraulichkeit an, um die gewünschte Konfidenzstufe in hervorgehobenen Kanten zu erreichen.
Empfindlichkeitseinstellung | Ergebnis |
---|---|
High | Weniger Kanten werden hervorgehoben. |
Mittel (Standard) | Eine ausgewogene Anzahl von Kanten wird hervorgehoben. |
Niedrig | Mehr Ränder werden hervorgehoben. |
Grenzen der intelligenten Ansicht
Die intelligente Ansicht unterliegt einigen Einschränkungen:
- Bei großen verteilten Anwendungen kann es ein wenig dauern, die intelligente Ansicht zu laden.
- Es werden Zeitrahmen von bis zu sieben Tagen unterstützt.
Informationen zum Bereitstellen von Feedback finden Sie unter Portalfeedback.
Problembehandlung
Bei Problemen, wenn die Anwendungsübersicht nicht wie erwartet funktioniert, können Sie diese Schritte ausprobieren.
Allgemein
Vergewissern Sie sich, dass Sie ein offiziell unterstütztes SDK verwenden. Nicht unterstützte SDKs oder Community-SDKs unterstützen möglicherweise keine Korrelation.
Eine Liste der unterstützten SDKs finden Sie unter Application Insights: Sprachen, Plattformen und Integrationen.
Upgraden Sie alle Komponenten auf die neueste SDK-Version.
Wenn Sie Azure Functions mit C# verwenden, führen Sie ein Upgrade auf Azure Functions V2 durch.
Vergewissern Sie sich, dass der Cloudrollenname richtig konfiguriert wurde.
Sollte Ihnen eine Abhängigkeit fehlen, stellen Sie sicher, dass sie sich in der Liste automatisch erfasster Abhängigkeiten befindet. Andernfalls können Sie sie auch manuell mit einem TrackDependency-Aufruf nachverfolgen.
Zu viele Knoten in der Übersicht
Die Anwendungsübersicht erstellt einen Anwendungsknoten für jeden eindeutigen Cloudrollennamen, der in Ihrer Anfrage-Telemetrie enthalten ist. Außerdem wird ein Abhängigkeitsknoten für jede eindeutige Kombination aus Typ, Ziel und Cloudrolle erstellt.
Wenn mehr als 10.000 Knoten in Ihrer Telemetrie vorhanden sind, kann die Anwendungsübersicht nicht alle Knoten und Links abrufen, sodass die Übersicht unvollständig ist. Wenn dieses Szenario eintritt, wird beim Anzeigen der Übersicht eine Warnmeldung angezeigt.
Die Anwendungsübersicht unterstützt nur für bis zu 1.000 separate, nicht gruppierte Knoten das gleichzeitige Rendern. Die Anwendungszuordnung reduziert visuelle Komplexität durch Gruppieren von Abhängigkeiten, die denselben Typ und Anrufer aufweisen.
Wenn Ihre Telemetrie zu viele eindeutige Cloudrollennamen oder zu viele Abhängigkeitstypen enthält, ist diese Gruppierung unzureichend, und die Übersicht kann nicht gerendert werden.
Um diesen Fehler zu beheben, müssen Sie die Instrumentierung ändern, um die Felder für den Cloudrollennamen, den Abhängigkeitstyp und das Abhängigkeitsziel ordnungsgemäß festzulegen.
Das Abhängigkeitsziel muss den logischen Namen einer Abhängigkeit darstellen. In vielen Fällen entspricht es dem Server- oder Ressourcennamen der Abhängigkeit. Wenn es zum Beispiel HTTP-Abhängigkeiten gibt, wird es auf den Hostnamen festgelegt. Es sollte keine eindeutigen IDs oder Parameter enthalten, die sich bei unterschiedlichen Anforderungen ändern.
Der Abhängigkeitstyp muss den logischen Typ einer Abhängigkeit darstellen. HTTP, SQL oder Azure Blob sind beispielsweise typische Abhängigkeitstypen. Er sollte keine eindeutigen IDs enthalten.
Der Zweck des Cloudrollennamens wird im Abschnitt Festlegen oder Außerkraftsetzen des Cloudrollennamens beschrieben.
Intelligente Ansicht
Häufige Problembehandlungsfragen zur intelligenten Ansicht.
Warum wird dieser Rand nicht hervorgehoben, auch mit geringer Vertraulichkeit?
Eine Abhängigkeit könnte scheinbar einen Fehler aufweisen, aber das Modell zeigt keinen möglichen Vorfall an:
- Wenn bei diese Abhängigkeit schon länger Fehler auftreten, könnte das Modell annehmen, dass es sich um einen regulären Zustand handelt, und die Edge nicht für Sie hervorheben. Es konzentriert sich auf die Lösung von Problemen in RT.
- Wenn diese Abhängigkeit nur eine minimale Auswirkung auf die Gesamtleistung der App hat, kann dies das Modell auch veranlassen, sie zu ignorieren.
- Wenn keine der obigen Aussagen zutrifft, verwenden Sie die Option Feedback, und beschreiben Sie Ihre Erfahrungen. Sie können uns helfen, zukünftige Modellversionen zu verbessern.
Warum wird der Rand hervorgehoben?
Wenn eine Kante hervorgehoben wird, sollte die Erklärung des Modells Sie auf die wichtigsten Merkmale hinweisen, die das Modell dazu veranlasst haben, dieser Abhängigkeit eine hohe Wahrscheinlichkeitsbewertung zuzuordnen. Die Empfehlung basiert nicht nur auf Fehlern, sondern auch auf anderen Indikatoren wie unerwarteten Wartezeiten bei dominanten Flows.
Warum wird die intelligente Ansicht nicht geladen?
Wenn die intelligente Ansicht nicht geladen wird:
Legen Sie den konfigurierten Zeitrahmen auf sechs Tage oder weniger fest.
Die Schaltfläche Vorschau testen muss ausgewählt sein, um sich anzumelden.
Warum dauert das Laden der intelligenten Ansicht lange?
Vermeiden Sie die Auswahl von Übersichtskomponenten aktualisieren.
Aktivieren Sie Intelligente Ansicht nur für eine einzelne Application Insights-Ressource.
Feedback zum Portal
Verwenden Sie für Feedback die Feedbackoption.
Nächste Schritte
- Weitere Informationen zur Funktionsweise der Korrelation in Application Insights finden Sie unter Telemetriekorrelation.
- Die End-to-End-Benutzeroberfläche zur Transaktionsdiagnose setzt die serverseitigen Telemetriedaten von allen Ihren mithilfe von Application Insights überwachten Komponenten automatisch in einer einzelnen Ansicht in Beziehung.
- Informationen zu Szenarien mit erweiterter Korrelation in ASP.NET Core und ASP.NET finden Sie unter Nachverfolgen von benutzerdefinierten Vorgängen.