Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile monitorare i criteri di gestione del ciclo di vita di Archiviazione BLOB di Azure usando eventi, metriche e log. È possibile determinare quando un'esecuzione della gestione del ciclo di vita viene completata sottoscrivendo un evento. È possibile usare le proprietà degli eventi per identificare i problemi e quindi diagnosticarli usando metriche e log.
Ricezione di notifiche al termine di un'esecuzione
Per ricevere una notifica quando viene completata un'esecuzione della gestione del ciclo di vita, iscriversi all'evento LifecyclePolicyCompleted. Questo evento viene generato quando vengono eseguite le azioni definite da un criterio di gestione del ciclo di vita. Viene visualizzata una sezione di riepilogo per ogni azione inclusa nella definizione dei criteri. Il codice JSON seguente mostra un evento di esempio LifecyclePolicyCompleted per un criterio. Viene visualizzata una sezione di riepilogo per le azioni delete, tierToCool, tierToCold e tierToArchive. Il codice JSON seguente mostra un esempio di notifica degli eventi.
{
"topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/contosoresourcegroup/providers/Microsoft.Storage/storageAccounts/contosostorageaccount",
"subject": "BlobDataManagement/LifeCycleManagement/SummaryReport",
"eventType": "Microsoft.Storage.LifecyclePolicyCompleted",
"eventTime": "2022-05-26T00:00:40.1880331",
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"data": {
"scheduleTime": "2022/05/24 22:57:29.3260160",
"policyRunSummary": {
"completionStatus": "Completed/CompletedWithError/Incomplete"
},
"deleteSummary": {
"totalObjectsCount": 5,
"successCount": 3,
"errorList": ["testFile4.txt", "testFile5.txt"]
},
"tierToCoolSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
},
"tierToColdSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
},
"tierToArchiveSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
}
},
"dataVersion": "1",
"metadataVersion": "1"
}
Per altre informazioni sui diversi modi per sottoscrivere un evento, vedere Gestori eventi in Griglia di eventi di Azure.
Analisi degli errori tramite metriche e log
L'esempio di risposta all'evento della sezione precedente mostra che i criteri di gestione del ciclo di vita hanno tentato di eliminare cinque oggetti, ma hanno avuto esito positivo solo con tre di essi. I testFile4.txt file e testFile5.txt non sono stati eliminati correttamente durante l'esecuzione. Per diagnosticare il motivo per cui alcuni oggetti non sono stati elaborati correttamente, è possibile usare Esplora metriche ed eseguire query sui log delle risorse in Monitoraggio di Azure.
Metriche
Per determinare esattamente quando le operazioni non sono riuscite, usare Esplora metriche. È possibile visualizzare tutte le transazioni applicate all'account nell'intervallo di tempo compreso tra il valore scheduleTime e eventTime che appare nelle proprietà LifecyclePolicyCompleted.
Usare i seguenti filtri delle metriche per limitare le transazioni a quelle eseguite dalla politica.
| Filtro | Operatore | Valore |
|---|---|---|
| Tipo di transazione | uguale | system |
| Nome API | uguale | DeleteBlob |
| Tipo di risposta | diverso da | Success |
L'immagine seguente mostra un esempio della query e dei risultati. Il grafico a linee visualizzato nel risultato della query mostra l'ora in cui queste operazioni non sono riuscite.
Registrazioni
Per scoprire perché gli oggetti non sono stati elaborati correttamente dai criteri, è possibile esaminare i log delle risorse. Restringere i log all'intervallo di tempo degli errori. Esaminare quindi le voci in cui il campo UserAgentHeader è impostato su ObjectLifeCycleScanner o OLCMScanner. Se è stata configurata un'impostazione di diagnostica per inviare i log all'area di lavoro Log Analytics di Monitoraggio di Azure, è possibile usare una query Kusto per individuare tali voci di log. Per altre informazioni su come configurare un'impostazione di diagnostica, vedere Monitorare l'archiviazione BLOB.
La query di esempio seguente trova le voci di log delle operazioni di eliminazione fallite avviate da una politica di gestione del ciclo di vita.
StorageBlobLogs
| where OperationName contains "DeleteBlob" and UserAgentHeader contains "ObjectLifeCycleScanner"
| project TimeGenerated, StatusCode, StatusText
StatusCode e StatusText indicano cosa ha causato l'errore. L'immagine seguente mostra l'output della query. Entrambe le voci di log mostrano un valore StatusText di LeaseIdMissing. Ciò significa che entrambi gli oggetti hanno un contratto di locazione attivo che deve essere interrotto o rilasciato prima che l'operazione possa riuscire.