Поиск ошибок и возобновление заданий с помощью журналов и файлов планов в AzCopy

AzCopy — это служебная программа командной строки, которую можно использовать для копирования больших двоичных объектов или файлов в учетную запись хранения или из нее. Эта статья поможет вам использовать журналы для диагностики ошибок, а затем использовать файлы планов для возобновления заданий. В этой статье также показано, как настроить файлы журналов и планов, изменив их уровень детализации и расположение для хранения по умолчанию.

Примечание

Если вам требуется информация, которая поможет приступить к работе с AzCopy, см. статью Начало работы с AzCopy. В этой статье описывается AzCopy версии 10 в качестве текущей поддерживаемой версии AzCopy. Если требуется использовать предыдущую версию AzCopy, см. раздел Использование предыдущей версии AzCopy.

Файлы журналов и планов

AzCopy создает файлы журналов и планов для каждого задания. Эти журналы можно использовать для исследования и устранения возможных проблем.

Журналы будут содержать состояния сбоя (UPLOADFAILED,COPYFAILED и DOWNLOADFAILED), полный путь и причину сбоя.

По умолчанию файлы журналов и планов расположены в каталоге %USERPROFILE%\.azcopy в Windows или $HOME$\.azcopy в Mac и Linux, но это расположение можно изменить.

Соответствующая ошибка не обязательно является первой ошибкой в файле. При возникновении ошибок, таких как сетевые ошибки, истечение времени ожидания и ошибки занятости сервера, AzCopy будет выполнять повторные попытки до 20 раз. Обычно этот процесс завершается успешно. Первая ошибка может быть неопасной, и ее можно успешно устранить при выполнении повторной попытки. Поэтому вместо просмотра первой ошибки в файле найдите ошибки, которые находятся рядом с UPLOADFAILED, COPYFAILED или DOWNLOADFAILED.

Важно!

При отправке запроса в службу поддержки Майкрософт (или при устранении проблемы с помощью сторонней службы) предоставьте исправленную версию команды, которую вы хотите выполнить. Это гарантирует, что общий доступ к SAS не будет случайно предоставлен всем. Вы можете найти исправленную версию в начале файла журнала.

Проверка журналов на наличие ошибок

Следующая команда используется для возврата всех ошибок с состоянием UPLOADFAILED из журнала 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

Просмотр и возобновление задания

В рамках каждой операции передачи будет создано задание AzCopy. Чтобы просмотреть журнал заданий, используйте следующую команду:

azcopy jobs list

Чтобы просмотреть статистику задания, используйте следующую команду:

azcopy jobs show <job-id>

Чтобы отфильтровать операции передачи по состоянию, используйте следующую команду:

azcopy jobs show <job-id> --with-status=Failed

Совет

Для значения флага --with-status учитывается регистр.

Чтобы возобновить выполнение неудачного или отмененного задания, используйте следующую команду. Эта команда использует свой идентификатор вместе с маркером SAS, так как он не является постоянным в целях безопасности:

azcopy jobs resume <job-id> --source-sas="<sas-token>" --destination-sas="<sas-token>"

Совет

Заключите аргументы пути, такие как маркер SAS, в одинарные кавычки (''). Используйте одинарные кавычки во всех командных оболочках, кроме командной оболочки Windows (cmd.exe). Если вы используете командную оболочку Windows (cmd.exe), заключите аргументы пути в двойные кавычки ("") вместо одинарных ('').

При возобновлении задания AzCopy ищет файл плана задания. В файле плана перечислены все файлы, обнаруженные для обработки при первом создании задания. При возобновлении задания AzCopy попытается перенести все еще не переданные файлы, перечисленные в файле плана.

Изменение расположения файлов плана

Используйте любую из этих команд.

Операционная система Get-Help
Windows PowerShell:$env:AZCOPY_JOB_PLAN_LOCATION="<value>"
В командной строке используйте: set AZCOPY_JOB_PLAN_LOCATION=<value>
Linux export AZCOPY_JOB_PLAN_LOCATION=<value>
macOS export AZCOPY_JOB_PLAN_LOCATION=<value>

Чтобы проверить текущее значение этой переменной, выполните команду azcopy env. Если значение не указано, файлы планов записываются в расположение по умолчанию.

Изменение расположения файлов журнала

Используйте любую из этих команд.

Операционная система Get-Help
Windows PowerShell:$env:AZCOPY_LOG_LOCATION="<value>"
В командной строке используйте: set AZCOPY_LOG_LOCATION=<value>
Linux export AZCOPY_LOG_LOCATION=<value>
macOS export AZCOPY_LOG_LOCATION=<value>

Чтобы проверить текущее значение этой переменной, выполните команду azcopy env. Если значение пустое, журналы записываются в расположение по умолчанию.

Изменение уровня ведения журнала по умолчанию

По умолчанию для уровня ведения журнала AzCopy присваивается значение INFO. Чтобы уменьшить уровень детализации журнала для экономии места на диске, перезапишите настройку, используя параметр --log-level.

Доступные уровни ведения журнала: DEBUG, INFO, WARNING, ERROR и NONE.

Удаление файлов плана и журнала

Если вы хотите удалить все файлы планов и журналов с локального компьютера, чтобы сэкономить место на диске, используйте команду azcopy jobs clean.

Чтобы удалить файлы плана и журнала, связанные только с одним заданием, используйте azcopy jobs rm <job-id>. Замените заполнитель <job-id> в этом примере идентификатором задания.

См. также