AzCopy は、ストレージ アカウント間の BLOB またはファイル コピーに利用できるコマンドライン ユーティリティです。 この記事は、ログを使用してエラーを診断し、プラン ファイルを使用してジョブを再開するのに役立ちます。 この記事では、ログ ファイルとプラン ファイルの詳細レベルを変更して構成する方法と、それらが格納される既定の場所についても説明します。
注
AzCopy の使用を開始するのに役立つコンテンツをお探しの場合は、「 AzCopy の使用を開始する」を参照してください。 この記事は、現在サポートされているバージョンの AzCopy V10 に適用されます。 以前のバージョンの AzCopy を使用する必要がある場合は、「 以前のバージョンの AzCopy を使用する」を参照してください。
ログとプランのファイル
AzCopy は、すべてのジョブの ログ ファイルと プラン ファイルを作成します。 これらのログを使用することで、潜在的な問題を調査してトラブルシューティングできます。
ログには、エラーの状態 (UPLOADFAILED
、COPYFAILED
、および DOWNLOADFAILED
)、完全なパス、エラーの理由が含まれます。
既定では、ログとプランのファイルは、Windows では %USERPROFILE%\.azcopy
ディレクトリに、Mac および Linux では $HOME$\.azcopy
ディレクトリにありますが、その場所は変更できます。
関連するエラーは、必ずしもファイルに表示される最初のエラーであるとは限りません。 ネットワーク エラー、タイムアウト、サーバー ビジー エラーなどのエラーの場合、AzCopy は最大 20 回再試行し、通常は再試行プロセスは成功します。 最初に表示されるエラーは、正常に再試行された無害なものである可能性があります。 したがって、ファイルの最初のエラーを確認するのではなく、 UPLOADFAILED
、 COPYFAILED
、または DOWNLOADFAILED
に近いエラーを探します。
Von Bedeutung
Microsoft サポートに要求を送信する場合 (またはサード パーティが関係する問題のトラブルシューティングを行う場合) は、実行するコマンドの編集されたバージョンを共有します。 これにより、SAS が誤って誰かと共有されることがなくなります。 修正済みバージョンは、ログ ファイルの先頭にあります。
ログでエラーを確認する
次のコマンドでは、UPLOADFAILED
ログから状態が 04dc9ca9-158f-7945-5933-564021086c79
であるすべてのエラーが取得されます。
Windows (PowerShell) の場合
Select-String UPLOADFAILED .\04dc9ca9-158f-7945-5933-564021086c79.log
リナックス
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 トークンと共に識別子を使用します。SAS トークンは、セキュリティ上の理由で、永続的ではないためです。
azcopy jobs resume <job-id> --source-sas="<sas-token>" --destination-sas="<sas-token>"
ヒント
SAS トークンなどのパス引数は、一重引用符 ('') で囲みます。 Windows コマンド シェル (cmd.exe) を除き、すべてのコマンド シェルで単一引用符を使用します。 Windows コマンド シェル (cmd.exe) を使用している場合は、単一引用符 ('') ではなく、二重引用符 ("") でパス引数を囲みます。
ジョブを再開すると、AzCopy は作業計画ファイルを参照します。 プラン・ファイルには、ジョブが最初に作成されたときに処理対象として識別されたすべてのファイルがリストされます。 ジョブを再開すると、AzCopy は、プラン ファイルにリストされているファイルのうち、まだ転送されていないすべてのファイルの転送を試みます。
プラン ファイルの場所を変更する
これらのコマンドのいずれかを使用します。
オペレーティング システム | コマンド |
---|---|
ウィンドウズ | PowerShell の$env:AZCOPY_JOB_PLAN_LOCATION="<value>" コマンドプロンプトで、次のようにします。 set AZCOPY_JOB_PLAN_LOCATION=<value> |
リナックス | export AZCOPY_JOB_PLAN_LOCATION=<value> |
macOS | export AZCOPY_JOB_PLAN_LOCATION=<value> |
この変数の現在の値を確認するには、azcopy env
を使用します。 値が空白の場合、プラン・ファイルはデフォルトの場所に書き込まれます。
ログファイルの場所を変更する
これらのコマンドのいずれかを使用します。
オペレーティング システム | コマンド |
---|---|
ウィンドウズ | PowerShell の$env:AZCOPY_LOG_LOCATION="<value>" コマンドプロンプトで、次のようにします。 set AZCOPY_LOG_LOCATION=<value> |
リナックス | 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
コマンドを使用します。
1 つのジョブのみに関連付けられているプラン ファイルとログ ファイルを削除するには、azcopy jobs rm <job-id>
を使用します。 この例の <job-id>
というプレースホルダーをジョブのジョブ ID に置き換えてください。