probe命令是針對OSS訪問的探測命令,可用於排查本地與OSS之間的網路狀態、上傳下載頻寬、本地符號連結(軟連結)狀態等。
注意事項
要探測上傳頻寬,您必須具有oss:GetObject
、oss:PutObject
和oss: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-speed
或download-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