Hitta fel och återuppta jobb med hjälp av logg- och planfiler i AzCopy
AzCopy är ett kommandoradsverktyg som du kan använda för att kopiera blobar eller filer till eller från ett lagringskonto. Den här artikeln hjälper dig att använda loggar för att diagnostisera fel och sedan använda planfiler för att återuppta jobb. Den här artikeln visar också hur du konfigurerar logg- och planfiler genom att ändra deras detaljnivå och standardplatsen där de lagras.
Anteckning
Om du letar efter innehåll som hjälper dig att komma igång med AzCopy kan du läsa Kom igång med AzCopy. Den här artikeln gäller AzCopy V10 eftersom det är den version av AzCopy som stöds för närvarande. Om du behöver använda en tidigare version av AzCopy kan du läsa Använda den tidigare versionen av AzCopy.
Logg- och planfiler
AzCopy skapar logg- och planfiler för varje jobb. Du kan undersöka och felsöka eventuella problem med hjälp av dessa loggar.
Loggarna innehåller statusen för felet (UPLOADFAILED
, COPYFAILED
och DOWNLOADFAILED
), den fullständiga sökvägen samt orsaken till felet.
Som standard finns logg- och planfilerna i katalogen %USERPROFILE%\.azcopy
i Windows eller i katalogen $HOME$\.azcopy
på Mac och Linux, men du kan byta plats om du vill.
Det relevanta felet är inte nödvändigtvis det första felet som visas i filen. För fel som till exempel nätverksfel, överskriden tidsgräns och upptagen server gör AzCopy upp till 20 återförsök, som ofta lyckas. Det första felet som visas kan vara något ofarligt som har gjorts om. I stället för att titta på det första felet i filen letar du efter felen som är nära UPLOADFAILED
, COPYFAILED
eller DOWNLOADFAILED
.
Viktigt
När du skickar en begäran till Microsoft Support (eller felsöker problemet med tredje part) delar du den redigerade versionen av kommandot som du vill köra. Detta säkerställer att SAS inte delas med någon av misstag. Du hittar den redigerade versionen i början av loggfilen.
Kontrollera om loggarna innehåller fel
Med följande kommando hämtas alla fel med statusen UPLOADFAILED
från loggen 04dc9ca9-158f-7945-5933-564021086c79
:
Windows (PowerShell)
Select-String UPLOADFAILED .\04dc9ca9-158f-7945-5933-564021086c79.log
Linux
grep UPLOADFAILED .\04dc9ca9-158f-7945-5933-564021086c79.log
Visa och återuppta jobb
För varje överföringsåtgärd skapas ett AzCopy-jobb. Kör följande kommando om du vill visa jobbhistoriken:
azcopy jobs list
Om du vill visa jobbstatistiken använder du följande kommando:
azcopy jobs show <job-id>
Om du vill filtrera överföringarna efter status kör du följande kommando:
azcopy jobs show <job-id> --with-status=Failed
Tips
Värdet för --with-status
flaggan är skiftlägeskänsligt.
Kör följande kommando om du vill återuppta ett misslyckat/avbrutet jobb. Det här kommandot använder identifieraren tillsammans med SAS-token eftersom den inte är beständig av säkerhetsskäl:
azcopy jobs resume <job-id> --source-sas="<sas-token>" --destination-sas="<sas-token>"
Tips
Omsluta sökvägsargument som SAS-token med enkla citattecken (''). Använd enkla citattecken i alla kommandogränssnitt förutom Windows-kommandogränssnittet (cmd.exe). Om du använder ett Windows-kommandogränssnitt (cmd.exe) omger du sökvägsargument med dubbla citattecken ("") i stället för enkla citattecken ('').
När du återupptar ett jobb tittar AzCopy på jobbplansfilen. Planfilen visar alla filer som identifierades för bearbetning när jobbet först skapades. När du återupptar ett jobb försöker AzCopy överföra alla filer som anges i planfilen som inte redan har överförts.
Ändra platsen för planfiler
Använd något av dessa kommandon.
Operativsystem | Kommando |
---|---|
Windows | Powershell:$env:AZCOPY_JOB_PLAN_LOCATION="<value>" I en kommandotolk använder du:: set AZCOPY_JOB_PLAN_LOCATION=<value> |
Linux | export AZCOPY_JOB_PLAN_LOCATION=<value> |
macOS | export AZCOPY_JOB_PLAN_LOCATION=<value> |
azcopy env
Använd för att kontrollera det aktuella värdet för den här variabeln. Om värdet är tomt skrivs planfilerna till standardplatsen.
Byta plats på loggfiler
Använd något av dessa kommandon.
Operativsystem | Kommando |
---|---|
Windows | Powershell:$env:AZCOPY_LOG_LOCATION="<value>" I en kommandotolk använder du:: set AZCOPY_LOG_LOCATION=<value> |
Linux | export AZCOPY_LOG_LOCATION=<value> |
macOS | export AZCOPY_LOG_LOCATION=<value> |
azcopy env
Använd för att kontrollera det aktuella värdet för den här variabeln. Om värdet är tomt skrivs loggarna till standardplatsen.
Ändra standardloggnivå
Som standard är AzCopy-loggnivån inställd på INFO
. Om du vill minska loggens detaljnivå för att spara diskutrymme skriver du över den här inställningen med hjälp --log-level
av alternativet .
Tillgängliga loggnivåer är: DEBUG
, INFO
, WARNING
, ERROR
och NONE
.
Ta bort plan- och loggfiler
Om du vill ta bort alla plan- och loggfiler från den lokala datorn för att spara diskutrymme kör du kommandot azcopy jobs clean
.
Om du vill ta bort plan- och loggfiler som endast är associerade med ett jobb använder du azcopy jobs rm <job-id>
. Ersätt <job-id>
-platshållaren i det här exemplet med jobbets jobb-ID.