Freigeben über


ChaosTargetFilter Klasse

Definition

Definiert alle Filter für gezielte Chaosfehler, z. B. nur bestimmte Knotentypen oder nur bestimmte Anwendungen. Wenn ChaosTargetFilter nicht verwendet wird, gibt Chaos alle Clusterentitäten an. Wenn ChaosTargetFilter verwendet wird, gibt Chaos nur die Entitäten aus, die die ChaosTargetFilter-Spezifikation erfüllen. NodeTypeInclusionList und ApplicationInclusionList gestatten lediglich eine Vereinigungssemantik. Es ist nicht möglich, eine Schnittmenge von NodeTypeInclusionList und ApplicationInclusionList anzugeben. Es ist z. B. nicht möglich, Folgendes anzugeben: „Diese Anwendung nur bemängeln, wenn sie sich auf diesem Knotentyp befindet“. Sobald eine Entität entweder in „NodeTypeInclusionList“ oder „ApplicationInclusionList“ enthalten ist, kann diese Entität nicht mit „ChaosTargetFilter“ ausgeschlossen werden. Auch wenn applicationX nicht in ApplicationInclusionList angezeigt wird, kann in einigen Chaos-Iterationen applicationX fehlerhaft sein, da sie sich auf einem Knoten von nodeTypeY befindet, der in NodeTypeInclusionList enthalten ist. Wenn sowohl NodeTypeInclusionList als auch ApplicationInclusionList null oder leer sind, wird eine ArgumentException ausgelöst.

public sealed class ChaosTargetFilter : System.Fabric.ByteSerializable
type ChaosTargetFilter = class
    inherit ByteSerializable
Public NotInheritable Class ChaosTargetFilter
Inherits ByteSerializable
Vererbung
ChaosTargetFilter

Konstruktoren

ChaosTargetFilter()

Initialisiert eine neue Instanz der ChaosTargetFilter-Klasse.

Eigenschaften

ApplicationInclusionList

Eine Liste der Anwendungs-URIs, die in Chaosfehler eingeschlossen werden sollen. Alle Replikate, die zu Diensten dieser Anwendungen gehören, sind von Chaos für Replikatfehler (Replikat neu starten, Replikat entfernen, primär verschieben und sekundär verschieben) verfügbar. Chaos startet ein Codepaket möglicherweise nur neu, wenn das Codepaket nur Replikate dieser Anwendungen hostet. Wenn eine Anwendung nicht in dieser Liste enthalten ist, kann sie dennoch in einer Chaos-Iteration fehlerhaft werden, wenn die Anwendung auf einem Knoten eines Knotentyps landet, der in „NodeTypeInclusionList“ enthalten ist. Wenn „applicationX“ jedoch durch Platzierungseinschränkungen an „nodeTypeY“ gebunden ist und „applicationX“ in „ApplicationInclusionList“ fehlt und „nodeTypeY“ in „NodeTypeInclusionList“ fehlt, dann wird „applicationX“ niemals fehlerhaft sein. Es können maximal 1.000 Anwendungsnamen in diese Liste aufgenommen werden. Um diese Zahl zu erhöhen, ist ein Upgrade der MaxNumberOfApplicationsInChaosEntityFilter-Konfiguration erforderlich.

NodeTypeInclusionList

Eine Liste von Knotentypen, die in Chaosfehler einbezogen werden sollen. Für die Knoten dieser Knotentypen sind alle Arten von Fehlern („Knoten neu starten“, „Codepaket neu starten“, „Replikat entfernen“, „Replikat neu starten“, „primäres Replikat verschieben“ und „sekundäres Replikat verschieben“) aktiviert. Wenn ein Knotentyp (z. B. „NodeTypeX“) nicht in „NodeTypeInclusionList“ enthalten ist, dann werden Fehler auf Knotenebene (z. B. „NodeRestart“) niemals für die Knoten von „NodeTypeX“ aktiviert, aber Codepaket- und Replikatfehler können für „NodeTypeX“ weiterhin aktiviert werden, wenn sich eine Anwendung in „ApplicationInclusionList“ zufällig auf einem Knoten von „NodeTypeX“ befindet. Es können maximal 100 Knotentypnamen in diese Liste aufgenommen werden. Um diese Zahl zu erhöhen, ist ein Upgrade der MaxNumberOfNodeTypesInChaosEntityFilter-Konfiguration erforderlich.

Methoden

FromBytes(Byte[])

Dies ist die Standardimplementierung zum Zurückverdecken eines Objekts aus einem Bytearray.

(Geerbt von ByteSerializable)
Read(BinaryReader)

Liest den Zustand dieses Objekts aus dem Bytearray.

ToBytes()

Dies ist die Standardimplementierung zum Konvertieren eines Objekts in ein Bytearray.

(Geerbt von ByteSerializable)
ToString()

Ruft eine Zeichenfolgendarstellung des ChaosTargetFilter-Objekts ab.

Write(BinaryWriter)

Schreibt den Zustand dieses Objekts in ein Bytearray.

Gilt für: