Delen via


Uitvoeringen van levenscyclusbeheerbeleid bewaken

U kunt het levenscyclusbeheerbeleid van Azure Blob Storage bewaken met behulp van gebeurtenissen, metrische gegevens en logboeken. U kunt bepalen wanneer de uitvoering van een levenscyclusbeheer is voltooid door u te abonneren op een gebeurtenis. U kunt gebeurteniseigenschappen gebruiken om problemen te identificeren en deze problemen vervolgens te diagnosticeren met behulp van metrische gegevens en logboeken.

Meldingen ontvangen wanneer een uitvoering is voltooid

Als u een melding wilt ontvangen wanneer de uitvoering van een levenscyclusbeheer is voltooid, abonneert u zich op de LifecyclePolicyCompleted gebeurtenis. Deze gebeurtenis wordt gegenereerd wanneer de acties die zijn gedefinieerd door een levenscyclusbeheerbeleid worden uitgevoerd. Er wordt een overzichtssectie weergegeven voor elke actie die is opgenomen in de beleidsdefinitie. In de volgende json ziet u een voorbeeld LifecyclePolicyCompleted van een gebeurtenis voor een beleid. Er wordt een overzichtssectie weergegeven voor de delete, tierToCoolen tierToColdtierToArchive acties. In de volgende JSON ziet u een voorbeeld van een gebeurtenismelding.

{
    "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"
}

Zie Gebeurtenis-handlers in Azure Event Grid voor meer informatie over hoe u zich op verschillende manieren op een gebeurtenis kunt abonneren.

Fouten onderzoeken met behulp van metrische gegevens en logboeken

In het voorbeeld van het reactievoorbeeld van de gebeurtenis uit de vorige sectie ziet u dat het levenscyclusbeheerbeleid vijf objecten heeft verwijderd, maar dat er slechts drie zijn geslaagd. De testFile4.txt en testFile5.txt bestanden zijn niet succesvol verwijderd als onderdeel van dat proces. Als u wilt vaststellen waarom sommige objecten niet zijn verwerkt, kunt u Metrics Explorer gebruiken en resourcelogboeken opvragen in Azure Monitor.

Statistieken

Gebruik Metrics Explorer om precies te bepalen wanneer bewerkingen zijn mislukt. U kunt alle transacties zien die zijn toegepast op het account in het tijdsbestek tussen de scheduleTime en eventTime waarde die in de LifecyclePolicyCompleted eigenschappen worden weergegeven.

Gebruik de volgende metrische filters om transacties te beperken tot transacties die worden uitgevoerd door het beleid:

Filteren Operateur Waarde
Transactietype gelijk system
API-naam gelijk DeleteBlob
Antwoordtype niet gelijk Success

In de volgende afbeelding ziet u een voorbeeld van de query en het queryresultaat. In het lijndiagram dat in het queryresultaat wordt weergegeven, wordt de tijd weergegeven waarop deze bewerkingen zijn mislukt.

Schermopname van metrische gegevens die worden toegepast om te bepalen welke verwijderingsbewerkingen zijn mislukt.

Logboeken

Als u wilt achterhalen waarom objecten niet succesvol door het beleid zijn verwerkt, kunt u de resource-logboeken bekijken. Beperk de logboeken tot de periode van de fouten. Bekijk vervolgens de vermeldingen waarin het veld UserAgentHeader is ingesteld op ObjectLifeCycleScanner of OLCMScanner. Als u een diagnostische instelling hebt geconfigureerd voor het verzenden van logboeken naar de Azure Monitor Log Analytics-werkruimte, kunt u een Kusto-query gebruiken om die logboekvermeldingen te vinden. Ga naar Blob Storage bewaken voor meer informatie over hoe je een diagnostische instelling kunt configureren.

De volgende voorbeeldquery vindt logboekvermeldingen voor mislukte verwijderingsbewerkingen die zijn geïnitieerd door een levenscyclusbeheerbeleid.

StorageBlobLogs
| where OperationName contains "DeleteBlob" and UserAgentHeader contains "ObjectLifeCycleScanner"
| project TimeGenerated, StatusCode, StatusText

De StatusCode en StatusText geven aan wat de fout heeft veroorzaakt. In de volgende afbeelding ziet u de uitvoer van die query. Beide logboekvermeldingen geven een StatusText-waarde van LeaseIdMissing weer. Dit betekent dat beide objecten een actieve lease hebben die moet worden verbroken of vrijgegeven voordat de bewerking kan slagen.

Schermopname van een kusto-query en de resultaten van de query waarin mislukte pogingen om objecten te verwijderen worden weergegeven.

Zie ook