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.

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 för att visa en lista över pågående arbetsflödesinstanser.

  3. På den övre listen i det högra hörnet visas arbetsflödesinstanserna Köra arbetsflöden, Status och Information.

  4. Köra arbetsflöden visar antalet arbetsflöden som körs och deras status. I de angivna bilderna visas t.ex. antalet Köra arbetsflöden och Status AEM:

    • Status: felfri

      status-hälsosam

    • Status: Ohälsosam

      status-ohälsosam

  5. För Statusinformation av arbetsflödesinstanser klickar du på Information för att visa antal arbetsflödesinstanser som körs, slutförda arbetsflödesinstanser, avbrutna arbetsflödesinstanser, misslyckade arbetsflödesinstanser och så vidare. nedan visas till exempel de bilder som visas Statusinformation med:

    • Statusinformation: felfri

      status-details-good

    • Statusinformation: Ohälsosam

      status-details-unsafe

    note note
    NOTE
    Om du vill att arbetsflödesinstansen ska vara felfri följer du god praxis på regelbunden rensning av arbetsflödesinstanser eller arbetsflöden.

Sök efter arbetsflödesinstanser search-workflow-instances

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

  2. Välj Instanser om du vill visa en lista över pågående arbetsflödesinstanser. I den övre rälen, i det vänstra hörnet, väljer du Filter. Du kan också använda tangenterna Alt+1. Följande dialogruta visas:

    wf-99-1

  3. Välj sökvillkor för arbetsflödet i dialogrutan Filter. Du kan söka baserat på följande indata:

    • Nyttolastsökväg: Välj en specifik sökväg
    • Arbetsflödesmodell: Välj en arbetsflödesmodell
    • Tilldelad: Välj en arbetsflödestilldelad
    • Typ: Aktivitet, arbetsflödesobjekt eller arbetsflödesfel
    • Aktivitetsstatus: Aktiv, Fullständig eller Avbruten
    • Var jag är: Ägare OCH tilldelad, Endast ägare, Endast tilldelad
    • Startdatum: Startdatum före eller efter ett angivet datum
    • Slutdatum: Slutdatum före eller efter ett angivet datum
    • Förfallodatum: Förfallodatum före eller efter ett angivet datum
    • Uppdateringsdatum: Uppdateringsdatum före eller efter ett angivet datum

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 om du vill 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

    note note
    NOTE
    Om du vill avsluta eller avbryta ett arbetsflöde måste det vara i ett läge där användaren väntar på att göra något, t.ex. i ett deltagarsteg. Om du försöker avbryta ett arbetsflöde som för närvarande kör jobb (aktiva trådar som körs) kanske inte resultatet blir som du förväntar dig.

Visa arkiverade arbetsflöden viewing-archived-workflows

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

  2. Välj Arkiv om du vill visa en lista över arbetsflödesinstanser som har slutförts.

    arkiverade instanser

    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, (framtvingas) tas bort, 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 så att 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, Step 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 för att visa en lista över arbetsflödesinstanser som inte har slutförts korrekt.

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

arbetsflödesfel

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 mycket längre än förväntat. Skapa en annan konfiguration som tömmer alla slutförda arbetsflöden efter några dagar för att minimera databasens storlek.

Om du vill konfigurera tjänsten kan du konfigurera OSGi-konfigurationsfilerna på OSGi-konfigurationsfiler. 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:
/conf/global/settings/workflow/models/dam/update_asset/jcr:content/model
Ange inget värde för att rensa instanser av alla arbetsflödesmodeller.

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

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, se lägga till en OSGi-konfiguration i databasen. I följande tabell beskrivs egenskapen som du konfigurerar.

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 måste du implementera 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
fbcff2a9-b6fe-4574-b04a-21e75df764ab