Ignorer les liens de navigation | |
Quitter l'aperu | |
![]() |
Guide d'administration des systèmes Oracle® ZFS Storage Appliance |
Utilisation de la présente documentation
Chapitre 1 Présentation d'Oracle ZFS Storage Appliance
Chapitre 3 Configuration initiale
Chapitre 4 Configuration réseau
Chapitre 5 Configuration de stockage
Chapitre 6 Configuration du réseau de stockage SAN
Chapitre 7 Configuration utilisateur
Chapitre 8 Définition des préférences de ZFSSA
Chapitre 9 Configuration des alertes
Chapitre 10 Configuration de cluster
Chapitre 12 Partages, projets et schéma
Chapitre 15 Ecriture de scripts à l'aide de la CLI
Chapitre 16 Maintenance des workflows
Contexte d'exécution des workflows
Validation des entrées des workflows
Exécution d'un audit des workflows
Rapports sur l'exécution des workflows
Gestion des versions des workflows
Workflows en tant qu'actions d'alerte
Contexte d'exécution des actions d'alerte
Réalisation d'audits sur les actions d'alerte
Utilisation de workflows programmés
Exemple : sélection du type de périphérique
Si une erreur se produit lors de l'exécution d'un workflow, une exception est levée. Si l'exception n'est pas interceptée par le workflow lui-même (ou si le workflow lève une exception non interceptée par ailleurs), le workflow échoue et les informations relatives à l'exception sont affichées à la vue de l'utilisateur. Pour permettre une gestion correcte des erreurs, les exceptions doivent être interceptées et traitées. Dans l'exemple qui précède par exemple, une tentative de créer un partage dans un projet inexistant se solde par une exception non interceptée. Cet exemple peut être modifié de manière à intercepter l'erreur et à créer le projet, dans l'hypothèse où il n'existe pas :
var workflow = { name: 'Create share', description: 'Creates a new share in a business unit', parameters: { name: { label: 'Name of new share', type: 'String' }, unit: { label: 'Business unit', type: 'ChooseOne', options: [ 'development', 'finance', 'qa', 'sales' ], optionlabels: [ 'Development', 'Finance', 'Quality Assurance', 'Sales/Administrative' ], } }, execute: function (params) { try { run('shares select ' + params.unit); } catch (err) { if (err.code != EAKSH_ENTITY_BADSELECT) throw (err); /* * We haven't yet created a project that corresponds to * this business unit; create it now. */ run('shares project ' + params.unit); run('commit'); run('shares select ' + params.unit); } run('filesystem ' + params.name); run('commit'); return ('Created new share "' + params.name + '"'); } };