Nachverfolgungsdatensätze

Die Workflowlaufzeit ist so instrumentiert, dass Überwachungsdatensätze im Zusammenhang mit der Ausführung einer Workflowinstanz ausgegeben werden.

Nachverfolgungsdatensätze

In der folgenden Tabelle sind die Überwachungsdatensätze aufgeführt, die von der Workflowlaufzeit ausgegeben werden.

Überwachungsdatensatz BESCHREIBUNG
Datensätze zum Workflowlebenszyklus Werden in verschiedenen Phasen des Lebenszyklus der Workflowinstanz ausgegeben. Z. B. Datensätze, die beim Starten oder Beenden des Workflows ausgegeben werden.
Datensätze zum Aktivitätslebenszyklus Führen Einzelheiten zur Aktivitätsausführung auf. Diese Datensätze geben den Zustand einer Workflowaktivität an, z. B. wenn eine Aktivität geplant oder abgeschlossen wird oder wenn ein Fehler auftritt.
Datensätze zur Wiederaufnahme von Lesezeichen. Wird immer dann ausgegeben, wenn ein Lesezeichen in einer Workflowinstanz wieder aufgenommen wird.
Benutzerdefinierte Überwachungsdatensätze Ein Workflowautor kann benutzerdefinierte Überwachungsdatensätze erstellen und in einer benutzerdefinierten Aktivität ausgeben.

Alle überwachungsbezogenen Datensätze, die von der WF-Laufzeit ausgegeben werden, leiten sich von der TrackingRecord-Basisklasse ab, die den allgemeinen Satz von Daten enthält. Überwachungsdatensätze zeigen den Lebenszyklus eines einfachen Workflows an. Jeder Überwachungsdatensatz enthält Details zum zugeordneten Überwachungsereignis, z. B. das InstanceId-Objekt, das RecordNumber-Objekt und weitere Informationen, die spezifisch für den Typ des Überwachungsdatensatzes sind.

Die folgenden TrackingRecord-Objekttypen werden von der Workflowlaufzeit ausgegeben:

  • WorkflowInstanceRecord Dieses TrackingRecord-Objekt beschreibt den Lebenszyklus der Workflowinstanz. Es wird unter anderem ein Datensatz ausgegeben, wenn der Workflow gestartet oder abgeschlossen wird. Der Datensatz enthält den Zustand der Workflowinstanz. Die Details dieses Datensatzes werden im WorkflowInstanceRecord-Objekt angezeigt.

  • WorkflowInstanceAbortedRecord Dieses TrackingRecord-Objekt wird ausgegeben, wenn eine Workflowinstanz abgebrochen wird. Der Datensatz enthält den Grund für den Abbruch der Workflowinstanz. Die Details dieses Datensatzes werden im WorkflowInstanceAbortedRecord-Objekt angezeigt.

  • WorkflowInstanceUnhandledExceptionRecord Dieses TrackingRecord-Objekt wird ausgegeben, wenn eine Ausnahme in der Workflowinstanz auftritt und von keiner Aktivität behandelt wird. Der Datensatz enthält die Details zur Ausnahme. Die Details dieses Datensatzes werden im WorkflowInstanceUnhandledExceptionRecord-Objekt angezeigt.

  • WorkflowInstanceSuspendedRecord - Dieses TrackingRecord-Objekt wird immer dann ausgegeben, wenn eine Workflowinstanz angehalten wird. Der Datensatz enthält den Grund für das Anhalten der Workflowinstanz. Die Details dieses Datensatzes werden im WorkflowInstanceSuspendedRecord-Objekt angezeigt.

  • WorkflowInstanceTerminatedRecord - Diese TrackingRecord wird immer dann ausgegeben, wenn eine Workflow-Instanz beendet wird. Der Datensatz enthält den Grund für das Beenden der Workflowinstanz. Die Details dieses Datensatzes werden im WorkflowInstanceTerminatedRecord-Objekt angezeigt.

  • ActivityStateRecord- Dieses TrackingRecord-Objekt wird ausgegeben, wenn eine Aktivität innerhalb eines Workflows ausgeführt wird. Diese Datensätze geben den Zustand der Aktivität innerhalb der Workflowinstanz an. Die Details dieses Datensatzes werden im ActivityStateRecord-Objekt angezeigt.

  • ActivityScheduledRecord- Dieses TrackingRecord-Objekt wird ausgegeben, wenn eine Aktivität eine untergeordnete Aktivität plant. Dieser Datensatz enthält Details für die übergeordnete Aktivität (Planungsaktivität) und die untergeordnete Aktivität (geplante Aktivität). Die Details dieses Datensatzes werden im ActivityScheduledRecord-Objekt angezeigt.

  • FaultPropagationRecord- Dieses TrackingRecord-Objekt wird für jeden Handler ausgegeben, der den Datensatz anzeigt, bis er behandelt wird. Es wird verwendet, um den Pfad eines Fehlers innerhalb der Workflowinstanz zu bezeichnen. Die Details dieses Datensatzes werden im FaultPropagationRecord-Objekt angezeigt.

  • CancelRequestedRecord- Dieses TrackingRecord-Objekt wird immer dann ausgegeben, wenn eine Aktivität versucht, eine untergeordnete Aktivität abzubrechen. Dieser Datensatz enthält Details für die übergeordnete Aktivität und die untergeordnete Aktivität, die abgebrochen wird. Die Details dieses Datensatzes werden im CancelRequestedRecord-Objekt angezeigt.

  • BookmarkResumptionRecord- Dieses TrackingRecord-Objekt verfolgt alle Lesezeichen nach, die erfolgreich fortgesetzt werden. Die Details dieses Datensatzes werden im BookmarkResumptionRecord-Objekt angezeigt.

  • CustomTrackingRecord- Dieses TrackingRecord-Objekt wird von einem Workflowautor in einer benutzerdefinierten Workflowaktivität erstellt und ausgegeben. Benutzerdefinierte Überwachungsdatensätze können mit Daten aufgefüllt werden, die mit den Datensätzen ausgegeben werden. Die Details dieses Datensatzes werden im CustomTrackingRecord-Objekt angezeigt.

Beispielsweise könnte eine einfache Sequence-Aktivität vorhanden sein, die einen WriteLine-Vorgang mit Überwachungsdatensätzen enthält, die in der folgenden Reihenfolge ausgegeben werden:

  1. Das WorkflowInstanceRecord-Objekt gibt an, dass der Workflow gestartet wird.

  2. Das ActivityScheduledRecord-Objekt gibt an, dass eine Aktivität geplant wurde. In diesem Fall handelt es sich um eine Sequence-Aktivität.

  3. Das ActivityScheduledRecord-Objekts stellt die WriteLine-Aktivität dar.

  4. Es gibt zwei ActivityStateRecord-Datensätze, die die zwei Aktivitäten darstellen, die abgeschlossen werden.

  5. Das WorkflowInstanceRecord-Objekt gibt an, dass der Workflow abgeschlossen wird.

Siehe auch