Administrera arbetsflödesinstanser administering-workflow-instances

Arbetsflödeskonsolen innehåller flera verktyg för att administrera arbetsflödesinstanser för att säkerställa att de körs som förväntat.

NOTE
The JMX-konsol tillhandahåller ytterligare underhållsåtgärder för arbetsflöden.

Det finns en rad konsoler som du kan använda för att administrera dina arbetsflöden. Använd global navigering för att öppna verktyg välj Arbetsflöde:

  • Models: Hantera arbetsflödesdefinitioner
  • Instanser: Visa och hantera pågående arbetsflödesinstanser
  • Startare: Hantera hur arbetsflöden startas
  • Arkiv: Visa historik över arbetsflöden som har slutförts
  • Fel: Visa historik över arbetsflöden som slutförts med fel
  • Tilldela automatiskt: Konfigurera automatisk tilldelning av arbetsflöden till mallar

Övervaka status för arbetsflödesinstanser monitoring-the-status-of-workflow-instances

  1. Använda navigeringsval verktyg sedan Arbetsflöde.

  2. Välj Instanser så att du kan visa en lista över pågående arbetsflödesinstanser.

    wf-96

Göra uppehåll, återuppta och avsluta en arbetsflödesinstans suspending-resuming-and-terminating-a-workflow-instance

  1. Använda navigeringsval verktyg sedan Arbetsflöde.

  2. Välj Instanser så att du kan visa en lista över pågående arbetsflödesinstanser.

    wf-96-1

  3. Markera ett specifikt objekt och använd sedan Avsluta, Gör uppehåll, eller Återuppta, beroende på vad som är tillämpligt; bekräftelse och/eller ytterligare uppgifter krävs:

    wf-97-1

Visa arkiverade arbetsflöden viewing-archived-workflows

  1. Använda navigeringsval verktyg sedan Arbetsflöde.

  2. Välj Arkiv så att du kan visa en lista över arbetsflödesinstanser som har slutförts.

    wf-98

    note note
    NOTE
    Avbrottsstatusen betraktas som ett slutfört avbrott eftersom det inträffar som ett resultat av en användaråtgärd, till exempel:
    • användning av Avsluta åtgärd
    • när en sida som är underställd ett arbetsflöde tas bort (framtvingad) avslutas arbetsflödet
  3. Markera ett specifikt objekt och sedan Öppna historik om du vill ha mer information:

    wf-99

Åtgärdar fel i arbetsflödesinstansen fixing-workflow-instance-failures

När ett arbetsflöde misslyckas, innehåller AEM Fel konsol där du kan undersöka och vidta lämpliga åtgärder när originalorsaken har hanterats:

  • Felinformation
    Öppnar ett fönster för att visa Felmeddelande, Steg och Felstapel.

  • Öppna historik
    Visar information om arbetsflödeshistoriken.

  • Försök igen - Kör komponentinstansen Script Step igen. Använd kommandot Försök igen när du har åtgärdat orsaken till det ursprungliga felet. Du kan till exempel försöka utföra steget igen när du har åtgärdat ett fel i skriptet som utförs av processteget.

  • Avsluta - Avsluta arbetsflödet om felet har orsakat en oförenlig situation för arbetsflödet. Arbetsflödet kan t.ex. förlita sig på miljöförhållanden som information i databasen som inte längre är giltig för arbetsflödesinstansen.

  • Avsluta och försök igen - Liknar Avsluta förutom att en ny arbetsflödesinstans startas med den ursprungliga nyttolasten, titeln och beskrivningen.

Så här undersöker du fel och sedan återupptar eller avslutar du arbetsflödet:

  1. Använda navigeringsval verktyg sedan Arbetsflöde.

  2. Välj Fel så att du kan visa en lista över arbetsflödesinstanser som inte har slutförts korrekt.

  3. Välj ett specifikt objekt och sedan lämplig åtgärd:

    wf-47

Vanlig tömning av arbetsflödesinstanser regular-purging-of-workflow-instances

Om du minimerar antalet arbetsflödesinstanser ökas arbetsflödesmotorns prestanda, så att du regelbundet kan rensa avslutade eller pågående arbetsflödesinstanser från databasen.

Konfigurera Rensa arbetsflöde för Adobe Granite för att rensa arbetsflödesinstanser utifrån deras ålder och status. Du kan också rensa arbetsflödesinstanser av alla modeller eller av en viss modell.

Du kan också skapa flera konfigurationer av tjänsten för att rensa arbetsflödesinstanser som uppfyller olika villkor. Skapa till exempel en konfiguration som tömmer instanser av en viss arbetsflödesmodell när de körs längre än förväntat. Skapa en annan konfiguration som tömmer alla slutförda arbetsflöden efter ett visst antal dagar för att minimera databasens storlek.

Om du vill konfigurera tjänsten kan du använda Webbkonsol eller lägga till en OSGi-konfiguration i databasen. I följande tabell beskrivs de egenskaper som du behöver för båda metoderna.

NOTE
För att lägga till konfigurationen i databasen är tjänst-PID:
com.adobe.granite.workflow.purge.Scheduler
Eftersom tjänsten är en fabrikstjänst är namnet på sling:OsgiConfig noden kräver ett identifierarsuffix, till exempel:
com.adobe.granite.workflow.purge.Scheduler-myidentifier
Egenskapsnamn (webbkonsol)
OSGi-egenskapsnamn
Beskrivning
Jobbnamn
scheduledpurge.name
Ett beskrivande namn för den schemalagda rensningen.
Arbetsflödesstatus
scheduledpurge.workflowStatus

Status för de arbetsflödesinstanser som ska rensas. Följande värden är giltiga:

  • SLUTFÖRT: Slutförda arbetsflödesinstanser rensas.
  • KÖRNING: Körande arbetsflödesinstanser rensas.
Modeller att tömma
scheduledpurge.modelIds

ID:t för arbetsflödesmodellerna som ska rensas. ID är sökvägen till modellnoden, till exempel:
/var/workflow/models/dam/update_asset

Om du vill ange flera modeller klickar du på plusknappen (+) i webbkonsolen.

Ange inget värde för att rensa instanser av alla arbetsflödesmodeller.

Arbetsflödesålder
scheduledpurge.daysold
Åldern på arbetsflödesinstanserna som ska rensas i dagar.

Ange maximal storlek för inkorgen setting-the-maximum-size-of-the-inbox

Du kan ange den maximala storleken för inkorgen genom att konfigurera Adobe Granite Workflow Service, med Webbkonsol eller lägga till en OSGi-konfiguration i databasen. I följande tabell beskrivs egenskapen som du konfigurerar för båda metoderna.

NOTE
För att lägga till konfigurationen i databasen är tjänst-PID:
com.adobe.granite.workflow.core.WorkflowSessionFactory.
Egenskapsnamn (webbkonsol)
OSGi-egenskapsnamn
Max Inbox Query Size
granite.workflow.inboxQuerySize

Använda arbetsflödesvariabler för kundägda datalager using-workflow-variables-customer-datastore

Data som bearbetas av arbetsflöden lagras i den Adobe-tillhandahållna lagringen (JCR). Dessa data kan vara känsliga till sin natur. Du kanske vill spara alla användardefinierade metadata/data i ditt egna hanterade lagringsutrymme i stället för det lagringsutrymme som Adobe tillhandahåller. I dessa avsnitt beskrivs hur du ställer in dessa variabler för extern lagring.

Ange modellen för extern lagring av metadata set-model-for-external-storage

På arbetsflödesmodellnivån anges en flagga som anger att modellen (och dess körningsinstanser) har extern lagring av metadata. Arbetsflödesvariabler sparas inte i JCR för arbetsflödesinstanser av modeller som är markerade för extern lagring.

Egenskapen userMetadataPersistenceEnabled lagras på jcr:innehållsnod av arbetsflödesmodellen. Den här flaggan bevaras i arbetsflödets metadata som cq:userMetaDataCustomPersistenceEnabled.

Bilden nedan visar hur du anger flaggan i ett arbetsflöde.

workflow-externalize-config

API:er för metadata i extern lagring apis-for-metadata-external-storage

Om du vill lagra variablerna externt implementerar du de API:er som arbetsflödet visar.

UserMetaDataPersistenceContext

I följande exempel visas hur du använder API:t.

@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;
}
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2