Messen des maximalen dauerhaften Überwachungsdurchsatzes
Nachdem Sie eine Branchenlösung auf der BizTalk Server-Plattform bereitgestellt haben, sollten Sie das System nachverfolgen und überwachen, um Folgendes zu verstehen:
Zur Leistung des Systems
Zu möglicherweise aufgetretenen Ausnahmen und Fehlern und ihrer Ursache
Zum aktuellen Status der als BizTalk-Lösungen implementierten Geschäftsprozesse
Für viele Organisationen ist es auch wichtig, die tatsächlichen Unformatierten Nachrichten aufzuzeichnen, die aus Gründen der Ablehnung durch das System fließen. BizTalk Server bietet zwei Arten von Nachverfolgungsfunktionen, die diese Anforderungen erfüllen:
Datenverfolgung und Aktivitätsnachverfolgung (DTA). DTA überwacht eine Reihe von benutzerdefinierten Nachrichteneigenschaften, Orchestrierungsdebuggingereignissen, Nachrichtenflussereignissen und Dienstinstanzstatus. Mithilfe der Überwachungsfunktion können Sie die in der BizTalk-DTA-Überwachungsdatenbank (BizTalkDTADb) gespeicherten Daten abfragen. Die DTA-Überwachung umfasst zum Zwecke der Nichtabstreitbarkeit und zur Problemlösung zusätzlich das Überwachen von unformatierten Nachrichten (den so genannten Nachrichtentextteilen).
Nachverfolgung der Geschäftsaktivitätsüberwachung (BUSINESS Activity Monitoring, BAM). BAM verwendet ein benutzerdefiniertes Überwachungsprofil zum Überwachen des Status eines Geschäftsprozesses in einer besonderen Gruppe von BAM-Datenbanken.
In diesem Thema werden die DTA-Architektur und ein systematischer Ansatz zum Bestimmen des maximalen dauerhaften Durchsatzes beschrieben, den ein System, das DTA einsetzt, unbegrenzt aufrechterhalten kann. Zwar verwenden DTA und BAM einige Architekturkomponenten gemeinsam, in diesem Thema wird jedoch nur das Verhalten von DTA behandelt. Informationen zur BAM-Architektur finden Sie unter Business Activity Monitoring (BAM).
Überblick über die Architektur der DTA-Überwachung
Wenn Nachrichten das System durchlaufen, werden diverse überwachte Elemente (z. B. Nachrichtentextteile, Eigenschaften und Ereignisse) durch eine Reihe von Prozessen und Datenbanken geleitet, wodurch sie letztlich in die BizTalkDTADb-Datenbank geschrieben werden. Nachdem die Elemente in die BizTalkDTADb-Datenbank geschrieben wurden, können die überwachten Informationen mithilfe der Überwachungsfunktion abgefragt werden. Informationen zum Einrichten und Verwenden der BizTalkDTADb-Datenbank und zur Nachverfolgung finden Sie unter Anzeigen von verlaufsbezogenen und nachverfolgten Daten.
Um sicherzustellen, dass das System bei einer bestimmten Nachrichtenflussrate dauerhaft stabil ist und unbegrenzt ausgeführt werden kann, müssen der Pfad, den die Elemente auf Ihrem Weg zur BizTalkDTADb-Datenbank durchlaufen, und die Datenbank selbst fehlerfrei bleiben. Wenn dabei zum Beispiel Nachrichten in der Datenbank oder in der DTA erstellt werden, könnte dies zu einem unkontrollierten Anwachsen der Datenbankdatei führen, die ohne die richtigen Verwaltungsmaßnahmen nicht mehr dauerhaft verwendet werden könnte.
Daher müssen Sie zunächst die Grundlagen der Architektur und Pfade verstehen, die überwachte Informationen durchlaufen. Dadurch werden die wichtigsten Ressourcen und Leistungsindikatoren verfügbar gemacht, die Sie überwachen müssen, um zu bestimmen, wie gut das Nachverfolgungssystem mit dem Nachrichtendatenverkehr schritt hält, der über die BizTalk Server-Engine fließt.
Die folgende Abbildung zeigt einen Überblick über die Architektur und Pfade der DTA-Überwachung.
Wenn Sie die nummerierten Prozesse in der Abbildung der Reihe nach betrachten, werden Sie feststellen, dass alle mit DTA überwachten Daten in die und aus der BizTalkDTADb-Datenbank folgendermaßen verlaufen:
Der BizTalk Server-Laufzeitprozess enthält eine als Interceptor bezeichnete Komponente. Aufgabe des Interceptors ist es, die überwachten Elemente zur Laufzeit zwischenzuspeichern und diese beim nächsten Roundtrip der MessageBox-Datenbank (z. B. beim Einstellen einer Nachricht in die Warteschlange der MessageBox-Datenbank) an die MessageBox-Datenbank weiterzuleiten. Der Interceptor ermittelt anhand der aus der Verwaltungsdatenbank abgerufenen und für den Interceptor in jeder Laufzeitinstanz des Hosts zwischengespeicherten Überwachungskonfiguration (auch als Überwachungsprofil bezeichnet), welche Elemente überwacht werden sollen.
Wie aus der obigen Abbildung ersichtlich, werden zwei Nachrichtenstreams in die MessageBox-Datenbank eingefügt:
Der eine wird von der Tabelle "Spool" repräsentiert.
Der andere wird von der Tabelle "TrackingData" repräsentiert.
Überwachte Nachrichtentextteile verwenden beide Streams, das heißt, die Nachrichtentextteile selbst (die man sich als "Datenblobs" vorstellen kann, also als große binäre Objekte voller Daten) werden über eine Gruppe von Tabellen verarbeitet, die von der Spooltabelle repräsentiert werden. Die mit den Nachrichtentextteilen verbundenen Nachrichtenereignisse (z. B. Nachrichtenbezeichner, wann die Nachrichtentextteile überwacht wurden, mit welchen Instanzen die Nachrichtentextteile verbunden sind) werden über die TrackingData-Tabelle verarbeitet. Alle nicht mit der Überwachung von Nachrichtentextteilen verbundenen überwachten Elemente werden nur über die TrackingData-Tabelle verarbeitet.
Die MessageBox-Datenbank ist nur das erste Ziel für überwachte Daten und dient zum Zwischenspeichern, damit das Laufzeitmodul die Verarbeitung fortsetzen kann, ohne direkt von der Verarbeitung weiterer Überwachungsdaten blockiert zu werden.
Um die nachverfolgten Nachrichtentexte (Blobs) in die BizTalkDTADb-Datenbank zu übertragen, wo Sie sie anzeigen und in einem dauerhafteren Speicher archivieren können, verwendet BizTalk Server einen SQL-Agent-Auftrag namens TrackedMessages_Copy_BizTalkMsgBoxDb der auf jedem MessageBox-Datenbankserver ausgeführt wird. Dieser Auftrag hat die Aufgabe, die zur Überwachung markierten Nachrichtentextteile in die BizTalkDTADb-Datenbank zu kopieren.
Alle nachverfolgten Daten mit Ausnahme von Nachrichtentexten werden von einem Dienst namens TDDS aus der MessageBox-Datenbank in die BizTalkDTADb-Datenbank verschoben, der in einem oder mehreren der BizTalk Server Hosts ausgeführt wird. Wenn ein Host auf den Hosteigenschaftenseiten in der BizTalk Server-Verwaltungskonsole zur Hostüberwachung konfiguriert wurde, wird der TDDS-Subdienst in jeder Instanz dieses Hosts ausgeführt.
Wenn der Inhalt der BizTalkDTADb-Datenbank nicht regelmäßig gelöscht wird, wächst ihre Größe unkontrolliert an. Dies führt schließlich zu Problemen beim Betrieb. Sie können den Inhalt der BizTalkDTADb-Datenbank mit einem SQL Agent-Auftrag, dem DTA-Lösch- und -Archivierungsauftrag (BizTalkDTADb), löschen. Dieser Auftrag wird standardmäßig jede Minute ausgeführt und löscht alle abgeschlossenen Instanzen, die älter als der konfigurierte Zeitraum (z. B. 24 Stunden) sind.
Weitere Informationen neben dem DTA-Bereinigungs- und Archivauftrag finden Sie unter Konfigurieren des DTA-Bereinigungs- und Archivauftrags.
Sie haben mit dem DTA-Lösch- und -Archivierungsauftrag auch die Möglichkeit, die BizTalkDTADb-Daten als SQL-Sicherung für die langfristige Speicherung und/oder zum Offline-Anzeigen der Daten zu archivieren. Um die archivierten BizTalkDTADb-Daten abzufragen, müssen Sie sie zunächst als neue Datenbank in SQL Server wiederherstellen und diese dann mithilfe der Überwachungsfunktion oder mit SQL Query Analyzer abfragen.
In diesem Abschnitt
Testszenarios zum Messen des maximalen dauerhaften Durchsatzes der DTA-Überwachung
Tipps und Tricks zum Suchen des maximalen dauerhaften Durchsatzes bei der DTA-Überwachung
Weitere Informationen
Richtlinien zum Festlegen der Größe der Überwachungsdatenbank