Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
För att förhindra att minnesgränsen för en kapacitetsenhet (CU) nås är det bästa praxis att regelbundet rensa orkestreringshistorikdata. Durable Task Scheduler erbjuder en enkel, konfigurerbar funktion för automatisk hantering som hjälper dig att hantera orkestreringsdatarensning utan manuella åtgärder.
Autopurge fungerar asynkront i bakgrunden, optimerad för att minimera användningen av systemresurser och förhindra interferens med andra durable task-åtgärder. Även om autopurge inte följer ett strikt schema, överensstämmer dess rensningsfrekvens vanligtvis med din orkestreringsschemaläggningshastighet.
Så här fungerar det
Autopurge är en opt-in-funktion. Du kan aktivera det genom att definiera kvarhållningsprinciper som styr hur länge orkestreringsdata ska hållas i vissa statusar. Funktionen för automatisk rensning rensar orkestreringsdata som är associerade med slutstatusar. "Terminal" avser orkestreringar som har nått ett slutligt tillstånd utan ytterligare schemaläggning, händelsebearbetning eller generering av arbetsobjekt. Terminalstatusar omfattar:
- Completed
- Failed
- Canceled
- Terminated
Orkestreringsinstanserna som kan autopurge matchar de som är måltavlor för Durable SDK PurgeInstancesAsync API.
Autopurge ignorerar orkestreringsdata som är associerade med icke-terminalstatusar. Statusen "Icke-terminal" anger att orkestreringsinstansen antingen aktivt körs, är pausad eller befinner sig i ett tillstånd där den kan återupptas i framtiden (väntar på externa händelser eller tidsgränser). Dessa orkestreringar som fortsätter som nya, där den aktuella körningen har slutförts, men en ny instans har startats som en fortsättning.
Dessa statusar är:
- Pending
- Running
- Suspended
- Continued_As_New
När den är aktiverad tar autopurge regelbundet bort orkestreringsdata som är äldre än den kvarhållningsperiod som du anger. Endast automatisk rensning
Anmärkning
Kvarhållningsprinciper som du definierar tillämpas på alla aktivitetshubbar i en schemaläggare.
Principvärde
Kvarhållningsvärdet kan variera från 0 (rensa så snart som möjligt) till det maximala heltalsvärdet, där enheten är dagar.
Standardinställning och maximal kvarhållning
Som standard är automatisk rensning inställd på 30 dagar. Det här värdet säkerställer en balanserad metod för datarensning och resurseffektivitet.
Du kan förlänga kvarhållningsperioden till högst 90 dagar, vilket ger flexibilitet för scenarier som kräver längre kvarhållning av orkestreringshistorik.
Kvarhållningsperioden avser tidsperioden efter att orkestreringen övergick till slutligt tillstånd. Du kan till exempel ange ett kvarhållningsvärde på 1 dag. Om orkestreringen tar 10 dagar att slutföra tar autopurge inte bort den förrän följande dag. Autopurge utlöses inte förrän orkestreringen har slutförts.
Även om kvarhållningsperioder inte har någon maximal gräns rekommenderar vi att du undviker att behålla stora mängder inaktuella orkestreringsdata under längre perioder. Den här metoden säkerställer effektiv användning av lagringsresurser och upprätthåller optimala appprestanda.
Typer av principer
När du konfigurerar en kvarhållningspolicy för automatiskt rensning kan du ange antingen en specifik policy eller en standardpolicy.
- Standardprincip rensar orkestreringsdata oavsett - orchestrationState. Följande princip rensar orkestreringsdata för alla statusar som omfattas av funktionen efter 2 dagar:- { "retentionPeriodInDays": 2 }
- Specifik princip definierar rensning av orkestreringsdata för specifika - orchestrationState. Följande princip instruerar Durable Task Scheduler att behålla slutförda orkestreringsdata i 1 dag, varefter dessa data rensas.- { "retentionPeriodInDays": 1, "orchestrationState": "Completed" }
Lägg till specifika principer för att åsidosätta standardprincipen som tillämpas på orkestreringar. I följande exempel åsidosätter den andra och tredje principen standardprincipen ("retentionPeriodInDays": 1).
- Data som är associerade med - completedorkestreringar tas bort så snart som möjligt.
- Data som är associerade med - failedorkestreringar rensas efter 60 dagar.- [ { "retentionPeriodInDays": 1 }, { "retentionPeriodInDays": 0, "orchestrationState": "Completed" }, { "retentionPeriodInDays": 60, "orchestrationState": "Failed" } ]
Eftersom ingen specifik princip har angetts för canceled eller terminated orkestreringar gäller standardprincipen fortfarande för dem och rensar deras data efter en dag.
Aktivera autopurge
Du kan definiera kvarhållningsprinciper med hjälp av:
- Durable Task CLI
- Azure Resource Manager (ARM)
- Biceps
Kontrollera att du har den senaste versionen av DURABLE Task CLI-tillägget.
az extension add --name durabletask
az extension update --name durabletask
Skapa eller uppdatera kvarhållningsprincipen genom att köra följande kommando.
az durabletask retention-policy create --scheduler-name SCHEDULER_NAME --resource-group RESOURCE_GROUP --default-days 1 --completed-days 0 --failed-days 60
Följande egenskaper anger kvarhållningstiden för orkestreringsdata med olika statusar.
| Fastighet | Beskrivning | 
|---|---|
| --canceled-dayseller-x | Antal dagar som orkestreringarna har avbrutits. | 
| --completed-dayseller-c | Antalet dagar för att behålla slutförda orkestreringar. | 
| --default-dayseller-d | Antal dagar som orkestrering ska behållas. | 
| --failed-dayseller-f | Antalet dagar för att behålla misslyckade orkestreringar. | 
| --terminated-dayseller-t | Antal dagar som avslutade orkestreringar ska behållas. | 
Exempelsvar
Om skapandet lyckas får du följande svar.
{
  "id": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/SCHEDULER_NAMER/retentionPolicies/default",
  "name": "default",
  "properties": {
    "provisioningState": "Succeeded",
    "retentionPolicies": [
      {
        "retentionPeriodInDays": 1
      },
      {
        "orchestrationState": "Completed",
        "retentionPeriodInDays": 0
      },
      {
        "orchestrationState": "Failed",
        "retentionPeriodInDays": 60
      }
    ]
  },
  "resourceGroup": "RESOURCE_GROUP",
  "systemData": {
    "createdAt": "2025-04-23T23:41:17.3165122Z",
    "createdBy": "someone@microsoft.com",
    "createdByType": "User",
    "lastModifiedAt": "2025-04-23T23:41:17.3165122Z",
    "lastModifiedBy": "someone@microsoft.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.durabletask/schedulers/retentionpolicies"
}
Tips/Råd
Lär dig mer om kommandot för lagringspolicy via CLI-referensen.
Inaktivera autopurge
Ta bort kvarhållningsprinciperna med hjälp av följande kommando. Durable Task Scheduler slutar rensa orkestreringsdata inom 5 till 10 minuter.
az durabletask retention-policy delete --scheduler-name SCHEDULER_NAME --resource-group RESOURCE_GROUP
Nästa steg
Övervaka och hantera orkestreringsstatusen och historiken med instrumentpanelen Durable Task Scheduler.