Amministrazione delle istanze dei flussi di lavoro

La console Flusso di lavoro fornisce diversi strumenti per l’amministrazione delle istanze del flusso di lavoro, in modo che vengano eseguite come previsto.

NOTA

Il Console JMX fornisce ulteriori operazioni di manutenzione del flusso di lavoro.

Sono disponibili diverse console per l’amministrazione dei flussi di lavoro. Utilizza la navigazione globale per aprire il riquadro Strumenti, quindi selezionare Flusso di lavoro:

  • Modelli: gestire le definizioni dei flussi di lavoro
  • Istanze: visualizzazione e gestione delle istanze di flussi di lavoro in esecuzione
  • Moduli di avvio: gestire le modalità di avvio dei flussi di lavoro
  • Archiviazione: visualizzazione della cronologia dei flussi di lavoro completati con successo
  • Errori: visualizzazione della cronologia dei flussi di lavoro completati con errori
  • Assegnazione automatica: configura l’assegnazione automatica dei flussi di lavoro ai modelli

Monitoraggio dello stato delle istanze del flusso di lavoro

  1. Tramite navigazione, seleziona Strumenti, quindi Flusso di lavoro.

  2. Seleziona Istanze per visualizzare l’elenco delle istanze del flusso di lavoro attualmente in corso.

    wf-96

Sospensione, Ripresa e Chiusura di un’istanza di flusso di lavoro

  1. Tramite navigazione, seleziona Strumenti, quindi Flusso di lavoro.

  2. Seleziona Istanze per visualizzare l’elenco delle istanze del flusso di lavoro attualmente in corso.

    wf-96-1

  3. Seleziona un elemento specifico, quindi utilizza Termina, Sospendi oppure Riprendi, a seconda del caso; conferma e/o ulteriori dettagli richiesti:

    wf-97-1

Visualizzazione dei flussi di lavoro archiviati

  1. Tramite navigazione, seleziona Strumenti, quindi Flusso di lavoro.

  2. Seleziona Archivio per visualizzare l’elenco delle istanze del flusso di lavoro completate correttamente.

    wf-98

    NOTA

    Lo stato di interruzione viene considerato come una terminazione corretta in quanto si verifica in seguito a un’azione dell’utente; ad esempio:

    • utilizzo dell’azione Termina
    • quando una pagina, soggetta a un flusso di lavoro, viene eliminata (forzatamente), il flusso di lavoro viene terminato
  3. Seleziona un elemento specifico, quindi Cronologia elementi aperti per ulteriori dettagli:

    wf-99

Correzione degli errori di un'istanza del flusso di lavoro

Quando un flusso di lavoro non riesce, AEM mette a disposizione la console Errori per indagare e intraprendere azioni appropriate una volta gestita la causa originale:

  • Dettagli errore
    Apre una finestra per visualizzare
    Messaggio di errore, Passaggio, e Stack errori.

  • Cronologia elementi aperti
    Mostra i dettagli della cronologia del flusso di lavoro.

  • Ritenta passaggio Esegue nuovamente lo script del passaggio dell’istanza del componente. Utilizza il comando Ritenta passaggio dopo aver risolto la causa dell’errore originale. Ad esempio, prova a ripetere il passaggio dopo aver corretto un bug nello script eseguito dal passaggio del processo.

  • Termina Termina il flusso di lavoro se l’errore ha causato una situazione inconciliabile per il flusso di lavoro. Ad esempio, il flusso di lavoro può basarsi su condizioni ambientali quali le informazioni nell’archivio che non sono più valide per l’istanza del flusso di lavoro.

  • Termina e riprova Simile a Termina tranne per il fatto che una nuova istanza di flusso di lavoro viene avviata utilizzando il payload, il titolo e la descrizione originali.

Per approfondire gli errori, quindi riprendere o terminare il flusso di lavoro in seguito, utilizza i seguenti passaggi:

  1. Tramite navigazione, seleziona Strumenti, quindi Flusso di lavoro.

  2. Seleziona Errori per visualizzare l’elenco delle istanze del flusso di lavoro che non sono state completate correttamente.

  3. Seleziona un elemento specifico, quindi l’azione appropriata:

    wf-47

Rimozione regolare delle istanze del flusso di lavoro

Minimizzare il numero di istanze del flusso di lavoro aumenta le prestazioni del motore del flusso di lavoro, in modo da poter eliminare regolarmente dall’archivio le istanze del flusso di lavoro completate o in esecuzione.

Configura Adobe configurazione eliminazione flusso di lavoro Granite per eliminare le istanze del flusso di lavoro in base alla loro età e al loro stato. È inoltre possibile eliminare le istanze del flusso di lavoro di tutti i modelli o di un modello specifico.

Puoi anche creare più configurazioni del servizio per eliminare le istanze del flusso di lavoro che soddisfano criteri diversi. Ad esempio, crea una configurazione che elimina le istanze di un particolare modello di flusso di lavoro quando restano in esecuzione per molto più tempo del tempo previsto. Crea un’altra configurazione che elimina tutti i flussi di lavoro completati dopo un certo numero di giorni per ridurre al minimo le dimensioni dell’archivio.

Per configurare il servizio, puoi utilizzare Console web o aggiungere una configurazione OSGi all’archivio. Nella tabella seguente vengono descritte le proprietà necessarie per entrambi i metodi.

NOTA

Per aggiungere la configurazione all’archivio, il PID del servizio è:

com.adobe.granite.workflow.purge.Scheduler

Poiché si tratta di un servizio di fabbrica, il nome del nodo sling:OsgiConfig richiede un suffisso di identificatore, ad esempio:

com.adobe.granite.workflow.purge.Scheduler-myidentifier

Nome proprietà (console Web) Nome proprietà OSGi Descrizione
Nome processo scheduledpurge.name Nome descrittivo per l’eliminazione pianificata.
Stato flusso di lavoro scheduledpurge.workflowStatus

Stato delle istanze del flusso di lavoro da eliminare. I seguenti valori sono validi:

  • COMPLETATO: le istanze del flusso di lavoro completate vengono eliminate.
  • IN ESECUZIONE: le istanze del flusso di lavoro in esecuzione vengono eliminate.
Modelli da eliminare scheduledpurge.modelIds

ID dei modelli di flusso di lavoro da eliminare. L’ID è il percorso del nodo del modello, ad esempio:
/var/workflow/models/dam/update_asset

Per specificare più modelli, fai clic sul pulsante + nella console Web.

Non specificare alcun valore per eliminare le istanze di tutti i modelli di flusso di lavoro.

Età del flusso di lavoro scheduledpurge.daysold Età in giorni delle istanze del flusso di lavoro da eliminare.

Impostazione della dimensione massima della casella in entrata

È possibile impostare la dimensione massima della casella in entrata configurando Servizio flusso di lavoro Adobe Granite, utilizzando Console web o aggiungere una configurazione OSGi all’archivio. Nella tabella seguente viene descritta la proprietà configurata per entrambi i metodi.

NOTA

Per aggiungere la configurazione all’archivio, il PID del servizio è:

com.adobe.granite.workflow.core.WorkflowSessionFactory.

Nome proprietà (console Web) Nome proprietà OSGi
Dimensione massima query casella in entrata granite.workflow.inboxQuerySize

Utilizzo delle variabili del flusso di lavoro per i datastore di proprietà del cliente

I dati elaborati dai flussi di lavoro vengono memorizzati nell’archiviazione fornita da Adobe (JCR). Per loro natura tali dati possono essere sensibili. È possibile salvare tutti i metadati/dati definiti dall’utente nel tuo spazio di archiviazione personale anziché nell’archiviazione fornita da Adobe. Queste sezioni descrivono come impostare queste variabili per l’archiviazione esterna.

Impostare il modello per l’utilizzo dell’archiviazione esterna dei metadati

Viene fornito un flag a livello di modello di flusso di lavoro per indicare che tale modello (e le sue istanze di runtime) dispone di archiviazione esterna dei metadati. Le variabili del flusso di lavoro non saranno rese persistenti in JCR per quelle istanze dei modelli contrassegnati per l’archiviazione esterna.

La proprietà userMetadataPersistenceEnabled verrà memorizzata nel nodo jcr:content del modello di flusso di lavoro. Questo flag verrà reso persistente nei metadati del flusso di lavoro come cq:userMetaDataCustomPersistenceEnabled.

L’illustrazione seguente mostra come impostare il flag su un flusso di lavoro.

workflow-externalize-config

API per metadati nell’archiviazione esterna

Per archiviare le variabili esternamente, devi implementare le API esposte dal flusso di lavoro.

UserMetaDataPersistenceContext

Gli esempi seguenti mostrano come utilizzare l’API.

@ProviderType
public interface UserMetaDataPersistenceContext {

    /**
     * Gets the workflow for persistence
     * @return workflow
     */
    Workflow getWorkflow();

    /**
     * Gets the workflow id for persistence
     * @return workflowId
     */
    String getWorkflowId();

    /**
     * Gets the user metadata persistence id
     * @return userDataId
     */
    String getUserDataId();
}

UserMetaDataPersistenceProvider

/**
 * This provider can be implemented to store the user defined workflow-data metadata in a custom storage location
 */
@ConsumerType
public interface UserMetaDataPersistenceProvider {

   /**
    * Retrieves the metadata using a unique identifier
    * @param userMetaDataPersistenceContext
    * @param metaDataMap of user defined workflow data metaData
    * @throws WorkflowException
    */
   void get(UserMetaDataPersistenceContext userMetaDataPersistenceContext, MetaDataMap metaDataMap) throws WorkflowException;

   /**
    * Stores the given metadata to the custom storage location
    * @param userMetaDataPersistenceContext
    * @param metaDataMap metadata map
    * @return the unique identifier that can be used to retrieve metadata. If null is returned, then workflowId is used.
    * @throws WorkflowException
    */
   String put(UserMetaDataPersistenceContext userMetaDataPersistenceContext, MetaDataMap metaDataMap) throws WorkflowException;
}

In questa pagina