Les flux de travaux peuvent être modifiés pour consigner des événements de contrôle en appui des rapports de flux de travaux (Rapports de flux de travaux). Les événements de contrôle standard se limitent à consigner qu'un événement s'est produit tandis que les événements de contrôle de synchronisation consignent le démarrage et l'arrêt d'un événement ce qui permet d'effectuer des calculs de durée. En plus des données des événements de synchronisation, la plupart des informations enregistrées par les événements de contrôle standard sont également enregistrées. Pour plus d'informations, voir Informations stockées par les événements de contrôle de synchronisation.
Pour consigner les événements de contrôle de synchronisation, vous devez commencer par activer le contrôle du flux de travaux pour chacun des types de flux de travaux que vous envisagez de contrôler.
Pour les flux de travaux que vous pouvez configurer dans l'interface Administrateur en utilisant les modèles de tâches, commencez par activer le modèle de tâche correspondant au flux de travaux à contrôler. Pour les instructions, voir Activation des modèles de tâches.
Activez ensuite le contrôle des flux de travaux en sélectionnant la case à cocher Contrôler l’intégralité du flux de travaux. Pour les instructions, voir Configuration de l'onglet Vérification informatique .
Pour les flux de travaux qui n'ont pas de modèles de tâches, définissez une variable nommée auditWorkflow et définissez-en la valeur sur true.
Sachez toutefois que l'audit des flux de travaux dégrade la performance.
L'Exemple 10–3 indique le code nécessaire pour créer des événements de contrôle de synchronisation. Pour consigner les événements de contrôle de synchronisation, l'argument op doit être sur défini sur auditWorkflow.
L'argument action est également obligatoire et doit être défini sur l'une des valeurs suivantes :
StartWorkflow
EndWorkflow
StartProcess
EndProcess
StartActivity
EndActivity
Des arguments d'action supplémentaires peuvent être définis dans auditconfig.xml.
L'Exemple 10–3 illustre l'activation des événements de contrôle de synchronisation dans un flux de travaux. Pour instrumenter un flux de travaux, les événements auditWorkflow doivent être ajoutés au début et à la fin des flux de travaux, processus et activités.
L'opération auditWorkflow est définie dans com.waveset.session.WorkflowServices . Pour plus d'informations, voir la section L'application com.waveset.session.WorkflowServices.
<Action application=’com.waveset.session.WorkflowServices’> <Argument name=’op’ value=’auditWorkflow’/> <Argument name=’action’ value=’StartWorkflow’/> </Action> |
Pour arrêter la consignation des événements de contrôle de synchronisation dans un flux de travaux, ajoutez le code de l'Exemple 10–4 à une activité pre-end près de la conclusion du flux de travaux. Sachez que lors de l'instrumentation d'un flux de travaux ou d'un processus, vous n'êtes pas autorisé à mettre quoi que soit dans une activité end. Vous devez créer une activité pre-end qui effectue l'événement auditWorkflow final et passe sans conditions à l'événement end.
<Action application=’com.waveset.session.WorkflowServices’> <Argument name=’op’ value=’auditWorkflow’/> <Argument name=’action’ value=’EndWorkflow’/> </Action> |
Par défaut, les événements de contrôle de synchronisation consignent la plupart des informations stockées par les événements de contrôle standard, notamment les attributs suivants :
Attribut |
Description |
---|---|
WORKFLOW |
Nom du flux de travaux en cours d'exécution |
PROCESS |
Nom du processus courant en cours d'exécution |
INSTANCEID |
ID d'instance unique du flux de travaux en cours d'exécution |
ACTIVITY |
Activité dans laquelle l'événement est consigné |
MATCH |
Identificateur unique au sein d'une instance de flux de travaux |
Les attributs ci-dessus sont stockés dans le tableau logattr et sont issus de auditableAttributesList. Identity Manager vérifie également si l'attribut workflowAuditAttrConds est défini.
Il est possible d'appeler plusieurs fois certaines activités au sein d'une unique instance de processus ou flux de travaux. Pour faire correspondre les événements de contrôle pour une instance d'activité donnée, Identity Manager stocke un identificateur unique au sein d'une instance de flux de travaux dans le tableau logattr.
Pour stocker des attributs supplémentaires dans le tableau logattr d'un flux de travaux, vous devez définir une liste workflowAuditAttrConds, que l'on assume être une liste de GenericObjects. Si vous définissez un attribut attrName dans la liste workflowAuditAttrConds, Identity Manager extrait attrName de l'objet dans le code, d'abord en utilisant attrName en tant que clé puis en stockant la valeur d'attrName. L'ensemble des clés et valeurs sont stockées sous forme de valeurs en majuscules.