Partager via


ChaosTargetFilter Classe

Définition

Définit tous les filtres pour les erreurs Chaos ciblées, par exemple, l’erreur uniquement de certains types de nœuds ou l’erreur de certaines applications uniquement. Si ChaosTargetFilter n’est pas utilisé, Chaos génère des erreurs dans toutes les entités de cluster. Si ChaosTargetFilter est utilisé, Chaos génère uniquement des erreurs aux entités qui répondent à la spécification ChaosTargetFilter. NodeTypeInclusionList et ApplicationInclusionList autorisent uniquement une sémantique d’union. Il n’est pas possible de spécifier une intersection de NodeTypeInclusionList et d’ApplicationInclusionList. Par exemple, il n’est pas possible de spécifier « provoquer une erreur sur cette application uniquement si elle se trouve sur ce type de nœud ». Une fois qu’une entité est incluse dans NodeTypeInclusionList ou ApplicationInclusionList, elle ne peut pas être exclue à l’aide de ChaosTargetFilter. Même si applicationX n’apparaît pas dans ApplicationInclusionList, dans une itération Chaos, applicationX peut être défectueux, car il se trouve qu’il se trouve sur un nœud de nodeTypeY inclus dans NodeTypeInclusionList.Si NodeTypeInclusionList et ApplicationInclusionList sont null ou vides, une exception ArgumentException est levée.

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

Constructeurs

ChaosTargetFilter()

Initialise une nouvelle instance de la classe ChaosTargetFilter.

Propriétés

ApplicationInclusionList

Liste des URI d’application à inclure dans les erreurs Chaos. Tous les réplicas appartenant aux services de ces applications peuvent être réplica erreurs (redémarrer réplica, supprimer réplica, déplacer principal et déplacer secondaire) par Chaos. Chaos peut redémarrer un package de code uniquement si celui-ci héberge uniquement des réplicas de ces applications. Si une application ne figure pas dans cette liste, elle peut toujours faire l’objet d’une erreur dans une itération de Chaos si elle se termine sur un nœud dont le type est inclus dans NodeTypeInclusionList. Toutefois, si applicationX est liée à nodeTypeY par l’intermédiaire de contraintes de placement, qu’applicationX est absente de ApplicationInclusionList et que nodeTypeY est absent de NodeTypeInclusionList, applicationX ne fait jamais l’objet d’une erreur. Cette liste peut inclure au maximum 1 000 noms d’applications. Pour augmenter ce nombre, vous devez mettre à niveau la configuration de MaxNumberOfApplicationsInChaosEntityFilter.

NodeTypeInclusionList

Liste des types de nœuds à inclure dans les erreurs de Chaos. Tous les types d’erreurs (redémarrage du nœud, redémarrage du package de code, suppression du réplica, redémarrage du réplica, déplacement du réplica principal et déplacement du réplica secondaire) sont activés pour les nœuds de ces types de nœuds. Si un nodetype (par exemple NodeTypeX) ne figure pas dans NodeTypeInclusionList, des erreurs au niveau du nœud (comme NodeRestart) ne sont jamais activées pour les nœuds de NodeTypeX, mais les erreurs de package de code et de réplica peuvent toujours être activées pour NodeTypeX si une application dans ApplicationInclusionList réside sur un nœud de NodeTypeX. Cette liste peut inclure au maximum 100 noms de types de nœuds. Pour augmenter ce nombre, vous devez mettre à niveau la configuration de MaxNumberOfNodeTypesInChaosEntityFilter.

Méthodes

FromBytes(Byte[])

Il s’agit de l’implémentation par défaut pour masquer un objet à partir d’un tableau d’octets

(Hérité de ByteSerializable)
Read(BinaryReader)

Lit l’état de cet objet à partir d’un tableau d’octets.

ToBytes()

Il s’agit de l’implémentation par défaut pour convertir un objet en tableau d’octets

(Hérité de ByteSerializable)
ToString()

Obtient une représentation sous forme de chaîne de l’objet ChaosTargetFilter.

Write(BinaryWriter)

Écrit l’état de cet objet dans un tableau d’octets.

S’applique à