全部產品
Search
文件中心

Object Storage Service:probe(探測狀態)

更新時間:Aug 07, 2024

probe命令是針對OSS訪問的探測命令,可用於排查本地與OSS之間的網路狀態、上傳下載頻寬、本地符號連結(軟連結)狀態等。

注意事項

要探測上傳頻寬,您必須具有oss:GetObjectoss:PutObjectoss:DeleteObject許可權;要探測下載頻寬,您必須具有oss:GetObject許可權。具體操作,請參見為RAM使用者授權自訂的權限原則

使用說明

當您需要瞭解本地與OSS之間的網路異常、查看上傳下載頻寬、上傳大量軟連結檔案時,都可以使用probe進行探測。

  • 探測網路異常

    ossutil通過上傳或下載的方式探測本地與OSS之間的網路狀況。如果您在探測的同時需要將指定檔案上傳或下載到指定位置,建議您使用實際的檔案進行上傳下載探測;若您僅需要探測網路異常,可以在上傳或下載探測時不添加檔案名稱,ossutil會使用臨時檔案進行探測,並在探測結束後刪除這些檔案。

  • 查看上傳下載頻寬

    探測上傳下載頻寬時,OSS會根據您的裝置CPU及您的頻寬給出一個上傳下載的並發建議值。您可以按照ossutil的建議設定並發,以最大限度地利用您的頻寬。

  • 探測本地軟連結狀態

    當您上傳大量軟連結檔案時,若某個連結出現異常會導致上傳中斷。建議您在上傳前,先探測本地軟連結檔案是否存在異常。若存在異常,請修複異常檔案後再進行批量上傳。

probe命令運行後,您可以查看到任務執行的步驟及結果。

  • 上傳和下載探測

    • 執行步驟出現✓表示本項檢測通過,×表示未通過。

    • 若探測成功,ossutil會給出檔案的大小、上傳下載時間、檔案路徑等資訊。

    • 若探測失敗,ossutil會給出導致錯誤的原因或錯誤碼,您可以根據提示排查問題原因。

      關於錯誤碼的介紹,請參見錯誤碼概述

    • 探測結束後會在ossutil的安裝目錄產生一個格式為logOssProbe+探測結束時間.log的記錄檔,裡麵包含此次probe命令執行的詳細資料。

  • 指定專案探測

    探測上傳下載頻寬、本地軟連結狀態時,ossutil會直接給出探測結果和可能的建議。

上傳檔案並輸出探測報告

ossutil上傳檔案到目標儲存空間(Bucket)的方式探測本地和目標Bucket之間的網路狀態。

  • 命令格式

    ossutil probe {--upload [file_name]} {--bucket bucket_name} [--object object_name] [--addr domain_name] [--upmode]

    參數說明如下:

    參數

    類型

    是否必選

    說明

    --upload

    /

    指定探測方式為上傳探測。

    file_name

    string

    填寫要上傳至目標Bucket的本地檔案完整路徑;置空此項時,ossutil會產生一個臨時檔案進行上傳探測。

    --bucket

    string

    目標Bucket名稱。

    --object

    string

    增加此項並指定檔案名稱,ossutil會將上傳檔案按指定名稱儲存在Bucket中;若不增加此項,ossutil會在探測結束後刪除上傳的檔案。

    --addr

    string

    增加此項並填寫正確的網路地址,ossutil會通過ping操作驗證本地到目標地址的網路連通性。

    預設值:www.aliyun.com

    --upmode

    string

    指定檔案的上傳方式。

    取值:

    • normal(預設值):簡單上傳

    • append:追加上傳

    • multipart:分區上傳

  • 使用樣本

    • 上傳隨機檔案並指定ping操作的目標地址

      上傳的目標Bucket名為examplebucket,ping操作的目標網路地址為aliyun.com。命令如下:

      ossutil probe --upload --bucket examplebucket --addr aliyun.com

      輸出如下:

      begin parse parameters and prepare file...[√]
      begin network detection...[√]
      begin upload file(normal)...[√]
      
      *************************  upload result  *************************
      upload file:success
      upload file size:143360(byte)
      upload time consuming:456(ms)
      (only the time consumed by probe command)
      
      upload object is oss-test-probe-1716280906324488100-quky8a902r
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521164146.log
    • 使用預設上傳方式上傳指定檔案,並在探測結束後刪除該檔案

      將D:\localpath中的檔案example.txt上傳到名為examplebucket的Bucket。命令如下:

      ossutil probe --upload D:\localpath\example.txt --bucket examplebucket 

      輸出如下:

      begin parse parameters and prepare file...[√]
      begin network detection...[√]
      begin upload file(normal)...[√]
      
      *************************  upload result  *************************
      upload file:success
      upload file size:9(byte)
      upload time consuming:366(ms)
      (only the time consumed by probe command)
      
      upload object is oss-test-probe-1716281191298397500-hi8237d15e
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521164631.log

通過檔案URL下載檔案並輸出探測報告

ossutil通過使用檔案URL下載目標檔案到本地的方式探測本地和目標Bucket之間的網路狀態。

  • 命令格式

    ossutil probe {--download} {--url http_url} [--addr=domain_name] [file_name]

    參數說明如下:

    參數

    類型

    是否必選

    說明

    --download

    /

    指定探測方式為下載探測。

    --url

    string

    填寫檔案URL,ossutil會將URL對應的檔案下載到本地。

    • 公用讀取檔案:直接填寫檔案URL。例如https://examplebucket.oss-cn-beijing.aliyuncs.com/example.jpg

    • 私人檔案:填寫帶簽名的檔案URL,URL需使用雙引號(“”)包裹。例如“https://examplebucket.oss-cn-beijing.aliyuncs.com/example.jpg?Expires=1552015472&OSSAccessKeyId=TMP.******5r9f1FV12y8_Qis6LUVmvoSCUSs7aboCCHtydQ0axN32Sn-UvyY3AAAwLAIUarYNLcO87AKMEcE5O3A******oCFAQuRdZYyVFyqOW8QkGAN-bamUiQ&Signature=bIa4llbMbldrl7rwckr%2FXXvTtxw%3D”

    --addr

    string

    增加此項並填寫正確的網路地址,ossutil會通過ping操作驗證本地到目標地址的網路連通性。

    預設值:www.aliyun.com

    file_name

    string

    設定檔案下載到本地後的儲存路徑。

    • 僅指定檔案名稱,未指定目錄:ossutil會將檔案按指定名稱儲存到ossutil的安裝目錄。

    • 僅指定目錄,未指定檔案名稱:ossutil會將檔案按原名稱儲存到指定目錄。

    • 置空此項:ossutil會將檔案按原名稱儲存到ossutil的安裝目錄。

  • 使用樣本

    • 通過檔案URL下載目標檔案並重新命名

      檔案URL為https://examplebucket.oss-cn-beijing.aliyuncs.com/example.txt,指向examplebucket中一個公用讀取檔案example.txt,下載到本地後重新命名為/localfile/test.txt。命令如下:

      ossutil probe --download --url https://examplebucket.oss-cn-beijing.aliyuncs.com/example.txt  /localfile/test.txt

      輸出如下:

      begin parse parameters and prepare object...[√]
      begin network detection...[√]
      begin download file...[√]
      
      *************************  download result  *************************
      download file:success
      download file size:9(byte)
      download time consuming:278(ms)
      (only the time consumed by probe command)
      
      download file is E:\localfile\test.txt
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521173050.log
                                      
    • 通過檔案URL下載目標檔案並指定ping操作的目標地址

      檔案URL為https://examplebucket.oss-cn-beijing.aliyuncs.com/example.txt,指向examplebucket中一個公用讀取檔案example.txt,ping操作的目標地址為aliyun.com。命令如下:

      ossutil probe --download --url https://examplebucket.oss-cn-beijing.aliyuncs.com/example.txt --addr aliyun.com

      輸出如下:

      begin parse parameters and prepare object...[√]
      begin network detection...[√]
      begin download file...[√]
      
      *************************  download result  *************************
      download file:success
      download file size:9(byte)
      download time consuming:316(ms)
      (only the time consumed by probe command)
      
      download file is E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\example.txt
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521173448.log                               

直接下載指定檔案並輸出探測報告

ossutil通過直接下載目標Bucket中的檔案到本地的方式探測本地和目標Bucket之間的網路狀態。

  • 命令格式

    ossutil probe {--download} {--bucket bucket_name} [--object object_name] [--addr domain_name] [file_name]

    參數說明如下:

    參數

    類型

    是否必選

    說明

    --download

    /

    指定探測方式為下載探測。

    --bucket

    string

    目標Bucket名稱。

    --object

    string

    增加此項並指定檔案名稱,ossutil會將指定檔案下載到本地;置空此項,ossutil會產生一個臨時檔案上傳到目標Bucket後再將其下載,探測結束後會將該臨時檔案從目標Bucket中刪除。

    --addr

    string

    增加此項並填寫正確的網路地址,ossutil會通過ping操作驗證本地到目標地址的網路連通性。

    預設值:www.aliyun.com

    file_name

    string

    設定檔案下載到本地後的儲存路徑。

    • 僅指定檔案名稱,未指定目錄:ossutil會將檔案按指定名稱儲存到ossutil的安裝目錄。

    • 僅指定目錄,未指定檔案名稱:ossutil會將檔案按原名稱儲存到指定目錄。

    • 置空此項:ossutil會將檔案按原名稱儲存到ossutil的安裝目錄。

  • 使用樣本

    • 下載指定檔案並重新命名

      將名為examplebucket的Bucket中的檔案/ossfolder/example.txt下載到本地後重新命名為/localfolder/text.txt

      ossutil probe --download --bucket examplebucket --object /ossfolder/example.txt /localfolder/text.txt

      輸出如下:

      begin parse parameters and prepare object...[√]
      begin network detection...[√]
      begin download file...[√]
      
      *************************  download result  *************************
      download file:success
      download file size:9(byte)
      download time consuming:416(ms)
      (only the time consumed by probe command)
      
      download file is E:\localfolder\text.txt
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521180217.log
    • 下載臨時檔案並指定ping操作的目標地址

      目標Bucket名為examplebucket,ping操作的目標地址為aliyun.com。命令如下:

      ossutil probe --download --bucket examplebucket --addr aliyun.com

      輸出如下:

      begin parse parameters and prepare object...[√]
      begin network detection...[√]
      begin download file...[√]
      
      *************************  download result  *************************
      download file:success
      download file size:143360(byte)
      download time consuming:865(ms)
      (only the time consumed by probe command)
      
      download file is E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\oss-test-probe-1716286063484973300-rrmrfgtv8w
      
      ************************* report log info*************************
      report log file:E:\00-OSS\01-ossutil\05-v2\ossutil-2.0.0-beta.24041600-windows-amd64\logOssProbe20240521180533.log

指定專案探測

ossutil可通過指定探測專案的方式探測本地軟連結檔案狀態、上傳和下載頻寬,並根據結果給出異常軟連結的名稱、上傳下載並發數建議。

  • 命令格式

    ossutil probe {--probe-item item_value} {--bucket bucket-name} [--object object_name][--parallel <value>][--part-size <value>][--runtime <value>]

    參數說明如下:

    參數

    類型

    是否必選

    說明

    --probe-item

    string

    指定探測專案。

    取值:

    • cycle-symlink:探測本地是否存在異常軟連結。

    • upload-speed:探測上傳頻寬。

    • download-speed:探測下載頻寬。

    • download-time:探測下載時間。

    --bucket

    string

    --probe-item取值不為cycle-symlink時必選

    目標Bucket名稱。

    --object

    string

    --probe-item取值為download-speed時必選

    填寫目標檔案的訪問路徑。目標檔案需真實存在且建議大於5 MB。例如ossfolder/example.txt

    --parallel

    int

    單檔案操作時的並發任務數,預設值為1。

    說明

    僅當--probe-item取值為download-time時生效。

    --part-size

    int

    設定分區大小,單位為位元組。預設情況下ossutil會根據檔案大小自行計算合適的分區大小值。

    取值範圍:1~9223372036854775807

    說明

    僅當--probe-item取值為download-time時生效。

    --runtime

    int

    設定已耗用時間。超過此時間,運行取消。

    說明

    僅當--probe-item取值為upload-speeddownload-speed時生效。

  • 使用樣本

    • 探測本地目錄下localfolder目錄是否存在異常軟連結

      命令如下:

      ossutil probe --probe-item cycle-symlink  D:\localfolder

      輸出如下:

       success
      
      0.009583(s) elapsed

      輸出內容表沒有異常軟連結。

    • 探測上傳頻寬

      上傳一個臨時檔案到examplebucket,並根據當前裝置的硬體設定及上傳頻寬給出上傳並發數的配置建議。

      命令如下:

      ossutil probe --probe-item upload-speed --bucket examplebucket

      輸出如下:

      cpu core count:8
      parallel:8,average speed:1956.41(KB/s),current speed:2976.00(KB/s),max speed:2976.00(KB/s)
      parallel:9,average speed:1903.45(KB/s),current speed:1216.00(KB/s),max speed:2720.00(KB/s)
      parallel:10,average speed:1945.38(KB/s),current speed:1184.00(KB/s),max speed:3168.00(KB/s)
      parallel:11,average speed:2102.07(KB/s),current speed:7840.00(KB/s),max speed:7840.00(KB/s)
      parallel:12,average speed:1899.03(KB/s),current speed:1568.00(KB/s),max speed:3168.00(KB/s)
      parallel:13,average speed:1934.34(KB/s),current speed:1760.00(KB/s),max speed:8544.00(KB/s)
      parallel:14,average speed:1765.52(KB/s),current speed:1984.00(KB/s),max speed:2880.00(KB/s)
      parallel:15,average speed:2284.14(KB/s),current speed:2016.00(KB/s),max speed:6688.00(KB/s)
      parallel:16,average speed:2544.55(KB/s),current speed:4032.00(KB/s),max speed:9344.00(KB/s)
      
      suggest parallel is 16, max average speed is 2544.55(KB/s)

      輸出內容表示裝置CPU為8核,上傳最大平均頻寬為2544.55 KB/s,建議上傳並發數設定為16。

    • 探測下載頻寬

      將examplebucket中的檔案example.txt下載到本地,並根據當前裝置的硬體設定及下載頻寬給出下載並發數的配置建議。

      命令如下:

      ossutil probe --probe-item download-speed --bucket examplebucket --object example.txt

      輸出如下:

      cpu core count:8
      parallel:8,average speed:1.41(KB/s),current speed:1.69(KB/s),max speed:1.78(KB/s)
      parallel:9,average speed:1.48(KB/s),current speed:1.02(KB/s),max speed:1.95(KB/s)
      parallel:10,average speed:1.52(KB/s),current speed:1.60(KB/s),max speed:2.11(KB/s)
      parallel:11,average speed:1.41(KB/s),current speed:2.17(KB/s),max speed:2.34(KB/s)
      parallel:12,average speed:1.86(KB/s),current speed:1.71(KB/s),max speed:2.47(KB/s)
      parallel:13,average speed:1.90(KB/s),current speed:0.58(KB/s),max speed:2.65(KB/s)
      parallel:14,average speed:1.17(KB/s),current speed:0.99(KB/s),max speed:2.29(KB/s)
      parallel:15,average speed:1.86(KB/s),current speed:1.42(KB/s),max speed:2.84(KB/s)
      parallel:16,average speed:1.93(KB/s),current speed:0.76(KB/s),max speed:2.56(KB/s)
      
      suggest parallel is 16, max average speed is 1.93(KB/s)

      輸出內容表示裝置CPU為8核,下載最大平均頻寬為1.93 KB/s,建議下載並發數設定為16。

    • 探測下載頻寬並設定運行時時間

      將examplebucket中的檔案example.zip下載到本地,並根據當前裝置的硬體設定及下載頻寬給出下載並發數的配置建議,同時設定已耗用時間。

      ossutil probe --probe-item download-speed --bucket examplebucket --object  example.zip --runtime 2

      輸出如下:

      cpu core count:8
      parallel:8,average speed:937.76(KB/s),current speed:952.00(KB/s),max speed:1044.00(KB/s)))
      parallel:9,average speed:935.59(KB/s),current speed:936.00(KB/s),max speed:1016.00(KB/s))
      parallel:10,average speed:924.45(KB/s),current speed:940.00(KB/s),max speed:968.00(KB/s)
      parallel:11,average speed:930.48(KB/s),current speed:828.00(KB/s),max speed:1104.00(KB/s))
      parallel:12,average speed:908.21(KB/s),current speed:920.00(KB/s),max speed:1000.00(KB/s))
      parallel:13,average speed:923.86(KB/s),current speed:992.00(KB/s),max speed:992.00(KB/s)
      parallel:14,average speed:794.14(KB/s),current speed:776.00(KB/s),max speed:948.00(KB/s)
      parallel:15,average speed:835.28(KB/s),current speed:936.00(KB/s),max speed:960.00(KB/s)
      parallel:16,average speed:935.62(KB/s),current speed:932.00(KB/s),max speed:984.00(KB/s)
      
      suggest parallel is 8, max average speed is 937.76(KB/s)
      
      run download-speed  2 seconds with parallel 8
      parallel:8,average speed:809.67(KB/s),current speed:651.08(KB/s),max speed:891.08(KB/s)
      281.731035(s) elapsed
    • 探測下載時間

      將examplebucket中的檔案example.txt下載到本地,並探測下載時間。

      ossutil probe --probe-item download-time --bucket examplebucket --object example.txt

      輸出如下:

      download-speed part-size:-1, parallel:1 total bytes:9, cost:0.057 s, avg speed:NaN(kB/s)
      
      0.539351(s) elapsed
    • 探測下載時間並設定分區大小

      將examplebucket中的檔案example.zip下載到本地,探測下載時間,並設定分區大小。

      ossutil probe --probe-item download-time --bucket examplebucket --object example.zip --part-size 10000000

      輸出如下:

      downloading average speed:904.75(KB/s),current speed:1777.62(KB/s),max speed:1868.00(KB/s)
      download-speed part-size:10000000, parallel:1 total bytes:11881599, cost:12.831 s, avg speed:966.92(kB/s)
      
      13.188139(s) elapsed
    • 探測下載時間並設定並發大小

      將examplebucket中的檔案example.zip下載到本地,探測下載時間,並設定並發大小。

      ossutil probe --probe-item download-time --bucket examplebucket --object example.zip --parallel 3

      輸出如下:

      downloading average speed:910.58(KB/s),current speed:1740.00(KB/s),max speed:1876.00(KB/s)
      download-speed part-size:-1, parallel:3 total bytes:11881599, cost:12.728 s, avg speed:966.92(kB/s)
      
      12.984432(s) elapsed