mcpField
A
alibabacloud-oss-manage-network-probe

alibabacloud-oss-manage-network-probe

github.com/aliyunクラウド・DevOps281225 回インストール1 日前に更新
リポジトリ

alibabacloud-oss-manage-network-probe について

Alibaba Cloud CLI経由で ossutil 2.0を使い、ワークステーションと OSS 間の接続、転送帯域、ダウンロード時間、シンボリックリンクの異常を診断するスキルです。リンクの自動修復や根本原因の特定を保証するものではありません。

主な機能

  1. 01アップロードとダウンロードの接続テスト
  2. 02転送帯域の測定
  3. 03ダウンロード時間の統計
  4. 04異常なシンボリックリンクの検査
  5. 05診断結果と並列数の提案

活用シーン

  1. 01ワークステーションから OSS へのアップロード問題の調査
  2. 02OSS のダウンロード速度と所要時間の評価
  3. 03転送時の並列数の選定
  4. 04ローカルディレクトリ内の異常なシンボリックリンクの確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-oss-manage-network-probe

インストール後、Claude Code で/alibabacloud-oss-manage-network-probeを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
acceptance-criteria.md
cli-installation-guide.md
implementation-boundaries.md
ram-polices.md
related-apis.md
verification-method.md

詳細

シナリオのアプリケーションと目的の詳細

Alibaba Cloud CLI と統合された ossutil 2.0 を使用して、ローカルワークステーションと OSS 間のネットワーク接続、アップロード/ダウンロード帯域幅、ダウンロード時間、ローカルシンボリックリンクの異常を診断します。

アーキテクチャ:ローカルワークステーション + Alibaba Cloud CLI 3.3.3+ + aliyun ossutil + OSS バケット + 任意の対象オブジェクトまたは事前署名 URL + 任意のプローブドメイン

シナリオ推奨コマンド出力
アップロード接続プローブaliyun ... ossutil probe --uploadアップロード所要時間、オブジェクト名、ログファイル
ダウンロード接続プローブaliyun ... ossutil probe --downloadダウンロード所要時間、ローカルファイルパス、ログファイル
アップロード帯域幅の推奨値aliyun ... ossutil probe --probe-item upload-speed推奨同時実行数
ダウンロード帯域幅の推奨値aliyun ... ossutil probe --probe-item download-speed推奨同時実行数
ダウンロード時間の測定aliyun ... ossutil probe --probe-item download-time同時実行数/パートサイズ/所要時間の統計
シンボリックリンク異常の確認aliyun ... ossutil probe --probe-item cycle-symlink異常なシンボリックリンクの有無

重要な実装上の制限

  • probe は aliyun ossutil が提供するクライアント側の複合診断コマンドです。同等の aliyun oss api probe はありません。
  • cycle-symlink で検出できるのは異常なシンボリックリンクのみであり、対象パスを安全に自動修正することはできません。
  • プローブの出力から症状を特定し、同時実行数を提案できますが、すべてのネットワーク異常の根本原因を自動で正確に特定できるとは限りません。
  • download-speed には実在するオブジェクトが必要です。公式では 5 MiB を超えるオブジェクトが推奨されています。適切なオブジェクトがない場合、ユーザーはまず既存オブジェクトのパスを確認するか、aliyun ossutil cp でアップロードするローカルファイルを確認してからプローブを実行する必要があります。

インストール

事前確認:Aliyun CLI >= 3.3.3 が必要です aliyun version を実行して、バージョンが >= 3.3.3 であることを確認してください。未インストールの場合、またはバージョンが古い場合は、 インストール手順について references/cli-installation-guide.md を参照してください。 次に、認証情報の確認として aliyun configure list を実行します。 configure list で有効なプロファイルが表示された場合に限り、aliyun configure set --auto-plugin-install true と aliyun ossutil version を実行してください。

まずバージョンと認証情報を確認します:

aliyun version
aliyun configure list

configure list で有効なプロファイルが確認できた場合に限り、次に進みます:

aliyun configure set --auto-plugin-install true
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe"
aliyun ossutil version
aliyun plugin update

AI セーフティモード:configure ai-mode enable を実行すると、CLI に組み込まれた安全ガードが有効になり、危険な操作(重要なリソースの削除など)が CLI レベルでブロックされます。ossutil コマンドを実行する前に有効にする必要があります。

[必須] CLI User-Agent — aliyun CLI コマンドを呼び出す際は、毎回次の値を含める必要があります: --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

環境変数

環境変数必須/任意説明デフォルト値
ALIBABA_CLOUD_PROFILE任意使用する CLI プロファイルを指定します現在のデフォルトプロファイル
HTTP_PROXY任意プロキシ環境での HTTP プロキシアドレスなし
HTTPS_PROXY任意プロキシ環境での HTTPS プロキシアドレスなし
NO_PROXY任意プロキシをバイパスする対象の一覧なし

パラメーターの確認

重要:パラメーターの確認 — コマンドまたは API 呼び出しを実行する前に、 ユーザーがカスタマイズできるすべてのパラメーター(例:RegionId、インスタンス名、CIDR ブロック、 パスワード、ドメイン名、リソース仕様など)をユーザーに確認する必要があります。 ユーザーの明示的な承認なしに、値を推測したりデフォルト値を使用したりしないでください。

パラメーター名必須/任意説明デフォルト値
profile任意使用する CLI プロファイル現在のデフォルトプロファイル
region_id任意バケットが配置されているリージョン。自動検出が信頼できない場合や、明示的な指定が必要な場合に使用なし
bucket_nameバケットベースのプローブでは必須対象のバケット名なし
object_namedownload-speed と download-time では必須。その他のバケットベースのプローブでは任意オブジェクトの完全なパス。例:dir/example.txt。download-speed では、安定した結果を得るために 5 MiB を超えるオブジェクトを推奨なし
local_path任意ローカルのアップロードファイルパス、シンボリックリンクのスキャン対象ディレクトリ、またはダウンロードファイルの保存先なし
download_urlURL ベースのダウンロードプローブでは必須パブリック読み取り可能な URL または署名付きプライベート URLなし
endpoint任意ユーザーが明示的に指定した場合、またはエラーメッセージが特定のエンドポイントを明確に示している場合にのみ使用なし
addr任意--addr ネットワーク接続チェック用のドメイン。ユーザーが明示的に承認した場合に限り www.aliyun.com を使用なし
upmode任意アップロードプローブのモードnormal
runtime任意upload-speed/download-speed の最大実行時間(秒)CLI のデフォルト
parallel任意download-time の単一ファイル並列数1
part_size任意download-time のパートサイズ(バイト)CLI による自動設定/デフォルト

認証

事前確認:Alibaba Cloud の認証情報が必要です

セキュリティルール:

  • 絶対に AK/SK の値を読み取ったり、エコーしたり、表示したりしないでください(例:echo $ALIBABA_CLOUD_ACCESS_KEY_ID は禁止です)
  • 絶対に会話中またはコマンドラインで、AK/SK を直接入力するようユーザーに求めないでください
  • 絶対にリテラルの認証情報を指定して aliyun configure set を使用しないでください
  • 絶対に ~/.aliyun/config.json などの認証情報ファイルを読み取ったり、認証情報を調べるために環境変数をダンプしたりしないでください
  • 絶対にクエリ文字列の署名パラメーターを含む完全な事前署名付き URL をログや最終出力に記録しないでください。言及が必要な場合は、? 以降をすべて伏せてください
  • 認証情報の状態確認には 必ず aliyun configure list のみを使用してください
aliyun configure list

出力を確認し、有効なプロファイル(AK、STS、または OAuth ID)があることを確認してください。

有効なプロファイルがない場合は、ここで中止してください。

  1. Alibaba Cloud コンソールから認証情報を取得します
  2. このセッションの外部で認証情報を設定します(ターミナルで aliyun configure を実行するか、シェルプロファイルに環境変数を設定します)
  3. aliyun configure list で有効なプロファイルが表示されたら、戻って再実行します

複数のプロファイルがある場合は、以降のコマンドに --profile <profile> を明示的に追加してください。aliyun の後、ossutil の前に置きます。例:aliyun --profile <profile> ossutil version。

RAM ポリシー

このスキルに必要な最小限の OSS 権限は、プローブのモードによって異なります。シナリオごとの権限テーブルとポリシー例については、references/ram-polices.md を参照してください。

  • アップロードプローブ、アップロード帯域幅プローブ、一時オブジェクトプローブ:少なくとも oss:GetObject、oss:PutObject、oss:DeleteObject が必要です
  • ダウンロードプローブ、ダウンロード帯域幅プローブ、ダウンロード時間プローブ:少なくとも oss:GetObject が必要です
  • テストオブジェクトの事前アップロードに aliyun ossutil cp を使用する場合:oss:PutObject が必要です
  • 明示的に指定したテストオブジェクトのクリーンアップに aliyun ossutil rm を使用する場合:oss:DeleteObject が必要です

コアワークフロー

1. CLI 環境を検証する

次の順序で実行してください。手順を省略しないでください。

  1. 最初に CLI のバージョンを確認します。
aliyun version
  1. 次に、認証情報/プロファイルを確認します。
aliyun configure list
  1. configure list に有効なプロファイルが表示されない場合、または設定ファイルが見つからないと報告された場合は、直ちに中止してください。
    • configure set --auto-plugin-install true を実行しないでください。
    • ossutil version を実行しないでください。
    • バケット、オブジェクト、プロファイル、リージョン、またはプローブの成功結果を捏造しないでください。
  2. プロファイルが有効であることを確認してから、プラグインの準備、AI セーフティモードの有効化、ossutil の検証に進んでください。
aliyun configure set --auto-plugin-install true
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe"
aliyun ossutil version
1.1 ログファイル名とコマンド置換
  • 実行ログを保存する場合は、ファイル名に固定文字列を使用してください(例:probe_download_time.log)。ファイル名に $(date ...)、$(...)、またはバッククォートによるシェルコマンド置換を使用しないでください。 実行環境によってシェルの展開への対応が異なり、構文エラーが発生しやすくなります。
  • 一部の実行環境では、$() によるコマンド置換が全面的にブロックされます。コマンドの出力を変数に取り込む必要がある場合(例:署名付き URL の場合)は、ファイル+スクリプトのパターンを使用してください。出力を一時ファイルにリダイレクトしてから、そのファイルを読み取り値を使用するシェルスクリプトを作成します。具体例は §B を参照してください。
2. プローブモードを選択する
A. アップロード接続プローブ
  • ユーザーがオブジェクトを保持せずにネットワーク/アップロード接続の診断のみを希望する場合は、local_path と object_name を省略し、probe が一時ファイルを使用して完了後に自動削除するようにしてください。
  • ユーザーが特定の実ファイルのアップロード経路を検証したい場合は、local_path を確認してください。
  • アップロードプローブが AccessDenied を返した場合は、エラーをそのまま引用し、少なくとも oss:GetObject、oss:PutObject、oss:DeleteObject が必要であることを説明してください。バケットやリージョンの一覧表示、または従来のコマンド形式へのフォールバックは行わないでください。
aliyun ossutil probe \
  --upload "<LOCAL_PATH_IF_ANY>" \
  --bucket "<BUCKET_NAME>" \
  --object "<OBJECT_NAME_IF_USER_WANTS_TO_KEEP_IT>" \
  --addr "<ADDR_IF_CONFIRMED>" \
  --upmode "<UPMODE_IF_CONFIRMED>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

LOCAL_PATH_IF_ANY が指定されていない場合は、その位置引数を完全に削除してください。空文字列を渡さないでください。

B. URL 経由のダウンロードプローブ
  • パブリック読み取り可能なオブジェクトの場合は、直接アクセスできる URL をユーザーに確認してください。
  • プライベートオブジェクトの場合は、まず署名付き URL を生成してから、probe --download --url を実行してください。

署名付き URL を生成して一時ファイルに保存し、その後シェルスクリプト経由でプローブを実行します。この 2 段階の方法を使うと、コマンド履歴に URL 全体が表示されるのを防げます。また、$() によるコマンド置換がブロックされる環境でも動作します。

手順 1 — 署名付き URL を生成し、出力を一時ファイルにリダイレクトします。

aliyun ossutil presign \
  "oss://<BUCKET_NAME>/<OBJECT_NAME>" \
  --expires-duration 1h \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe > /tmp/_presign_url.txt

手順 2 — ファイルから URL を読み取り、ダウンロードプローブを実行するプローブスクリプトを作成します。

cat > /tmp/_run_presign_probe.sh << 'PROBE_SCRIPT'
#!/bin/bash
PRESIGN_URL=$(cat /tmp/_presign_url.txt)
aliyun ossutil probe \
  --download \
  --url "$PRESIGN_URL" \
  "<LOCAL_PATH_IF_USER_WANTS_TO_RENAME>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe
PROBE_SCRIPT
bash /tmp/_run_presign_probe.sh

重要 — 署名付き URL を使って probe --download --url を必ず実行してください。

  • 署名付き URL 全体を --url パラメーターに直接コピー&ペーストすることは絶対に避けてください。上記のファイル+スクリプトのパターンを使用し、URL がコマンド履歴や実行ログに表示されないようにしてください。
  • /tmp/ に書き込めない場合は、一時ファイルとスクリプトの保存先として現在のワークスペースディレクトリを使用してください。

--url が受け付けるのは HTTP/HTTPS URL のみです。oss://bucket/object は指定できません。

  • ossutil presign が成功しても、署名付き URL が生成されたことを意味するだけです。バケットやオブジェクトの存在、または後続のダウンロードの成功を保証するものではありません。
  • 実行ログを残す必要がある場合は、署名付き URL 全体を保存しないでください。クエリ文字列なしのオブジェクトアドレスだけを残すか、? 以降の署名パラメーターをすべて伏せてください。
  • probe --download --url が 404/403 を返した場合は、まず生の HTTP エラーをそのまま引用してください。バケット/オブジェクトがすでに入力として確認済みの場合は、同じ bucket + object + region を指定して ossutil stat で 1 回だけ検証してもかまいません。バケット一覧の表示、無作為なリージョンの試行、ローカルの認証情報ファイルの読み取りによって、根本原因を「推測」しようとしないでください。
C. Bucket/Object を使ったダウンロードプローブ
  • ユーザーが object_name を確認済みの場合、コマンドはそのオブジェクトを直接ダウンロードします。
  • ユーザーが object_name を指定しない場合、probe は一時オブジェクトを作成してダウンロードし、完了後に一時オブジェクトを削除します。
aliyun ossutil probe \
  --download \
  --bucket "<BUCKET_NAME>" \
  --object "<OBJECT_NAME_IF_ANY>" \
  --addr "<ADDR_IF_CONFIRMED>" \
  "<LOCAL_PATH_IF_USER_WANTS_TO_RENAME>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe
  • コマンドが NoSuchBucket、NoSuchKey、またはその他のオブジェクトレベルのエラーを報告した場合は、同じ対象を検証するため、ossutil stat "oss://<BUCKET_NAME>/<OBJECT_NAME>" --region "<REGION_ID_IF_NEEDED>" の実行を優先してください。
  • すべてのバケットを一覧表示したり、未確認のリージョンを試したり、対象オブジェクトの存在を確認するために、このスキルの範囲外の aliyun oss api / GetBucketLocation やその他のコマンドに切り替えたりしないでください。
D. ローカルシンボリックリンク異常プローブ

このモードではローカルのディレクトリ/ファイルパスのみを確認し、OSS にはアクセスしません。

aliyun ossutil probe \
  --probe-item cycle-symlink \
  "<LOCAL_DIRECTORY_OR_FILE>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe
  • コマンドが stat <path>: no such file or directory を返した場合は、ローカルパスが現在の実行環境に存在しないことを明示してください。これは引き続き OSS にアクセスしないローカル限定の処理です。

  • ローカルパスが存在しない場合、決して以下のことをしてはいけません:

    • これを「コンテナ化/サンドボックス環境の制約」と解釈する
    • 自動的に「ユーザーは別のマシン/本番環境で実行すべき」と言い換える
    • 「正しい環境でこのコマンドを実行する」ためのスクリプトファイルを生成する
    • ls で親ディレクトリを確認してから諦める

    正しい対応:生のエラー stat <path>: no such file or directory をそのまま引用し、パスが現在の環境に存在しないことを明示して、正しいパスが指定されているかユーザーに確認してください。ユーザーから現在のセッションが対象マシン上にないと明示されない限り、その判断をユーザーに代わって下してはいけません。

このプローブの結果を報告する際は、最低限、以下を含めてください:

  • これはローカル限定の処理であり、OSS にはアクセスしていないこと
  • 異常なシンボリックリンクと、直接確認できたリンクチェーン。チェーンの一部のみ確認できる場合は、「確認済みのチェーン区間」と「プローブのエラーによって確認された異常箇所」を明確に区別してください。例:loop-b -> loop-a、また loop-a を解決すると too many levels of symbolic links が報告される場合
  • プローブの出力に生のエラーが含まれる場合は、too many levels of symbolic links などの重要なエラーを少なくとも 1 つ引用すること
  • 再試行の前に、循環しているリンクのいずれかを切る、または異常なリンクの参照先を実在する対象に変更するなど、最低限必要な修正事項

異常なリンクチェーンを明確にする必要がある場合は、同じパスに対して読み取り専用のローカル調査(例:readlink、stat -f "%N -> %Y")を行ってもかまいません。こうした補足調査の結果を実際に読み取れた場合に限り、正確なチェーンを記述してください。補足調査自体に失敗した場合は、確認できた区間のみを報告し、完全な循環を捏造してはいけません。

異常なシンボリックリンクが出力に表示された場合は、ユーザーまたはローカルスクリプトが、業務上の意味に従って修正する必要があります。このスキルではシンボリックリンクの参照先を自動で書き換えません。

E. 推奨並列数付きアップロード帯域幅プローブ

基本コマンド:

aliyun ossutil probe \
  --probe-item upload-speed \
  --bucket "<BUCKET_NAME>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

実行時間を制限するには、次を追加します:

aliyun ossutil probe \
  --probe-item upload-speed \
  --bucket "<BUCKET_NAME>" \
  --runtime "<RUNTIME_IF_CONFIRMED>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

成功すると、出力に suggest parallel is <N> が含まれます。

F. 推奨並列数付きダウンロード帯域幅プローブ
  • object_name は必須です。
  • 公式の推奨事項:対象オブジェクトは 5 MiB より大きくしてください。
  • 適切なオブジェクトがない場合は、まずローカルファイルのパスを確認してから、後で削除可能なテストオブジェクトを aliyun ossutil cp でアップロードしてください。

任意の準備手順:

aliyun ossutil cp \
  "<LOCAL_FILE_TO_UPLOAD>" \
  "oss://<BUCKET_NAME>/<OBJECT_NAME>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

ダウンロード帯域幅プローブを実行します:

aliyun ossutil probe \
  --probe-item download-speed \
  --bucket "<BUCKET_NAME>" \
  --object "<OBJECT_NAME>" \
  --runtime "<RUNTIME_IF_CONFIRMED>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe
G. ダウンロード時間プローブ

基本コマンド:

aliyun ossutil probe \
  --probe-item download-time \
  --bucket "<BUCKET_NAME>" \
  --object "<OBJECT_NAME>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

並列数とパートサイズを明示的に指定するには、次を追加します:

aliyun ossutil probe \
  --probe-item download-time \
  --bucket "<BUCKET_NAME>" \
  --object "<OBJECT_NAME>" \
  --parallel "<PARALLEL_IF_CONFIRMED>" \
  --part-size "<PART_SIZE_IF_CONFIRMED>" \
  --region "<REGION_ID_IF_NEEDED>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

--parallel と --part-size が有効なのは download-time シナリオのみです。upload-speed では誤用しないでください。

3. 出力を解釈する
  • アップロード/ダウンロードのプローブが成功すると、出力に upload file:success または download file:success が含まれます
  • 帯域幅のプローブが成功すると、複数の parallel:<N> 統計情報と suggest parallel is <N> が出力に含まれます
  • ダウンロード時間のプローブが成功すると、total bytes、cost、avg speed が出力に含まれます
  • すべてのプローブモードでは通常、ローカルログファイル logOssProbe*.log が生成されます。プローブ実行後、現在のディレクトリに logOssProbe*.log が生成されているか確認し、最終回答にログのパスを記載してください
  • 実際のコマンドがエラーを返した場合、または成功マーカーがない場合は、最終結論で失敗/ブロックされたことを明示し、エラーメッセージの生の内容を引用する必要があります。「タスクは正常に完了しました」と記載したり、失敗を検証成功として説明したりしないでください
  • コマンドが失敗した場合、最終回答で停止理由(例:「AccessDenied のため停止」「パスが見つからないため停止」)を明示してください。理由を述べずに回答を終えないでください
  • The bucket you are attempting to access must be addressed using the specified endpoint のようなエラーは、現在のアクセスエンドポイントがバケットの要件と一致していないことを意味するだけです。直ちに停止し、正しいリージョン/エンドポイントをユーザーに確認してください。独自にリージョンやエンドポイントを推測したり、別のものを試したりしないでください

詳しい検証手順については、references/verification-method.md を参照してください。

成功の検証方法

references/verification-method.md の手順に従って、各項目を確認してください。

  1. CLI のバージョンとプロファイルが有効である
  2. プローブの出力に成功マーカーまたは推奨される並列数が含まれている
  3. ls logOssProbe*.log を実行してローカルにログファイルが生成されたか必ず確認し、最終回答にログのパスを記載してください。ログファイルが生成されていない場合、プローブが実際のプローブ段階に到達していない可能性があります
  4. 明示的にテストオブジェクトを使用した場合、保持するか削除手順に進むかを確認する
  5. 上記のいずれかの手順が失敗した場合、最終回答で失敗したことを明示し、停止理由とともにエラーの生の内容を引用する

クリーンアップ

  • --object を明示せずに実行したアップロード/ダウンロード接続プローブでは、一時オブジェクトが自動的にクリーンアップされます
  • download-speed の準備手順でテストオブジェクトを明示的にアップロードした場合、プローブ後にユーザーへ確認し、削除するかどうかを決めてください

OSS テストオブジェクトを削除します:

aliyun ossutil rm \
  "oss://<BUCKET_NAME>/<OBJECT_NAME>" \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-oss-manage-network-probe

一時的なテストファイルをローカルにダウンロードした場合も、ユーザーへの確認に基づいて削除するか保持してください。

すべてのプローブとクリーンアップの手順が完了したら、AI セーフティモードを無効にしてください:

aliyun configure ai-mode disable

API とコマンドの表

すべてのコマンド、基盤となる OSS 機能との対応、およびローカルクライアント側のロジックのみで処理される手順については、references/related-apis.md を参照してください。

ベストプラクティス

  1. 常に aliyun ossutil probe を使用してください。aliyun oss api probe のような存在しないコマンドを作り出さないでください。
  2. 実行前に、ユーザーが指定するすべてのパラメーターを確認してください。特に bucket_name、object_name、download_url、local_path は必ず確認してください。
  3. プローブ用オブジェクトを残すのは、ユーザーが明示的に確認した場合に限ってください。それ以外の場合は、一時オブジェクトの使用または明示的なクリーンアップを優先してください。
  4. download-speed では、より安定した結果を得るため、5 MiB を超える実在のオブジェクトを選んでください。
  5. プロキシ、専用回線、カスタムドメインのシナリオでは、--addr、--region、--endpoint を明示的に確認してください。
  6. 実測に基づく基準値として suggest parallel is <N> を使用し、実際の業務での同時実行数と組み合わせて小規模な検証を行ってください。
  7. cycle-symlink では、診断のみを行い、自動修正はしないでください。
  8. コマンドが失敗した後は、同じ対象に対する検証(例:ossutil stat)を優先してください。バケットの一覧表示、リージョンの推測、未対応フラグの試行、ローカルの認証情報ファイルの読み取りには範囲を広げないでください。
  9. AK/SK、STS トークン、または署名付き URL のクエリ文字列全体をログや最終結果に含めないでください。
  10. 署名付き URL の生成、DNS の解決、ping/traceroute の到達成功は、オブジェクトの存在やプローブの成功を保証しません。結論は実際のプローブ/検証結果に基づいてください。

参考リンク

参考資料目的
references/cli-installation-guide.mdAliyun CLI のインストールとアップグレード
references/verification-method.mdプローブモード別の成功確認
references/related-apis.mdコマンドと、対応する OSS の機能/権限のマッピング
references/ram-polices.mdRAM 権限チェックリストとポリシー例
references/acceptance-criteria.mdスキルの受け入れ基準と反例
references/implementation-boundaries.mdCLI またはコードで完全には自動化できない範囲

コメント