OmniLab Android 測試站

OmniLab ATS 是一種測試工具,可供 Android 開發人員和測試工程師使用,用來採用使用者介面執行標準 Android 測試套件,例如 Android Compatibility Test Suite (CTS)。這項工具可做為各種測試架構 (例如貿易聯盟 (TF)Google Mobly) 的網路介面,方便您以最少設定的測試裝置執行 CTS 和多裝置測試,並建立時間表以持續執行測試。

設定 OmniLab ATS

本節說明如何安裝及設定 OmniLab ATS。

OmniLab ATS 會使用下列位置的原始碼:

安裝 OmniLab ATS

遵循執行測試套件的硬體和軟體需求。

如要查看 CTS 的相關規定,請前往 source.android.com

OmniLab ATS 沒有額外的硬體需求,但建議您以 CTS 主機需求做為起點。

安裝 OmniLab ATS 的方法有兩種:

使用安裝程式安裝

在 Ubuntu 20.04 以上版本中,安裝程式會安裝並設定執行 OmniLab ATS 所需的所有程式和資源。

如何使用安裝程式:

  1. 執行安裝程式:

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. 執行 mtt version 查看已安裝的 OmniLab ATS CLI 版本。

手動安裝

安裝 Docker
  1. 請按照安裝 Docker Community Edition (CE) 的操作說明在 Linux 機器上安裝 Docker Community Edition。

  2. 請按照以非 root 使用者身分管理 Docker 的安裝後操作說明

  3. 您可能需要重新啟動終端機視窗,或登出再重新登入,權限變更才會生效。

安裝 Python 3

OmniLab ATS CLI 已通過 Python 3.7 至 3.11 版的驗證。

如果是 Ubuntu 16.04 或更早版本,請先執行下列任一操作,新增 Python 3 的存放區:

  • 執行下列指令:

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • 從來源建構及安裝存放區。

如要安裝 Python 3,請執行下列指令:

sudo apt-get update
sudo apt install python3 python3-distutils

如要安裝特定的 Python 3 版本 (例如 3.10),請改為執行下列指令:

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

取得 OmniLab ATS CLI

在這裡下載指令列介面 (CLI) 套件。

啟動 OmniLab ATS

使用下列指令啟動 OmniLab ATS:

mtt start

首次啟動使用者介面時,可能需要幾分鐘才會顯示。CLI 會顯示用於在瀏覽器中存取 UI 的網址。根據預設,網頁網址為 localhost:8000。如有需要,您可以使用 --port 標記,在啟動時變更預設連接埠。

如果有較新的版本可供使用,您可以更新至目前版本。如需最新版本資訊,請參閱版本資訊

如要更新至目前版本,請執行:

mtt start --force_update

如要停止應用程式,請執行以下命令:

mtt stop

如要查看其他指令的清單,請使用:

mtt --help

備份及還原資料庫

如要備份 OmniLab ATS 資料庫,請停止應用程式並執行下列指令,將目前的資料庫備份到主目錄中名為 mtt-backup.tar 的 TAR 檔案:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

如要還原,請在啟動應用程式前執行下列指令:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

設定精靈

首次安裝及執行 OmniLab ATS 後,設定精靈會引導您完成幾個步驟,協助您依環境需求自訂工具。您在這裡所做的任何變更,日後都可透過「設定」頁面重新設定。

還原設定備份

如果您有從其他 OmniLab ATS 主機備份的設定檔,只要按一下「上傳檔案」按鈕,即可上傳該檔案,並複製該主機中修改過的任何設定。

還原設定備份

圖 1. 還原設定備份。

設定預設服務帳戶

您可以設定服務帳戶,讓 OmniLab ATS 在存取資源 (例如 Google Cloud Storage、Google 雲端硬碟) 時預設使用該帳戶。如要驗證服務帳戶,請按一下「Upload Service Account Key」,然後選取服務帳戶的 JSON 金鑰檔案。

設定服務帳戶

圖 2. 設定服務帳戶。

服務帳戶驗證成功後,頁面右上角會顯示帳戶電子郵件地址。如要變更服務帳戶,請按一下帳戶名稱、移除目前的預設帳戶,然後上傳新的服務帳戶金鑰。

變更服務帳戶

圖 3. 變更服務帳戶。

匯入設定集

設定集是執行測試套件 (包括相關裝置動作) 的設定組合,以及建構管道。設定集會託管在特定的 Google Cloud Storage (GCS) 值區中。使用 Google 帳戶驗證 GCS 建構管道後,畫面上會列出您可以使用的所有設定集。

選取要新增至 Test Station 主機的任何設定組合,然後按一下「Import Selected」

匯入設定組

圖 4. 匯入設定集。

納入 Wi-Fi 設定

部分 CTS 測試需要裝置連線至 Wi-Fi 無線基地台。如要選取 Wi-Fi 網路,請輸入 WiFi SSID 和選用的 WiFi PSK

Wi-Fi 設定

圖 5. Wi-Fi 無線基地台設定。

完成設定精靈後,頁面會重新載入並套用新設定。

連線至裝置

您必須啟用 USB 偵錯功能,才能使用裝置進行測試。如要啟用偵錯功能,請按照下列步驟操作:

  1. 請按照「啟用開發人員選項和偵錯」一文的說明操作。

  2. 如果您打算使用預先載入自訂 ADB 金鑰的測試 Android 版本,請將自訂 .adb_key 檔案放在 ~/.android/ 目錄下。

    系統會自動載入這些檔案,並在執行這些版本的裝置完成刷機後,將檔案傳遞至 ADB,以便自動啟用 USB 偵錯功能。

  3. 使用 USB 將裝置連接至主體機器。

    在重新整理網頁介面後,裝置會在一分鐘內顯示在 OmniLab ATS Devices 分頁中。您也可以在這個分頁中查看裝置的狀態。

    連接裝置

    圖 6. 連線至裝置。

不同的裝置狀態如下:

  • 可用:裝置已連接,可以執行測試。
  • 已分配:裝置已連線並正在執行測試。每部裝置一次只能執行一項測試,因此裝置必須先完成目前的測試,才能執行新的測試。

進行測試

選取測試

OmniLab ATS 隨附一組預先綁定的 CTS 設定。如要執行上述其中一項測試,請前往「Test Suite」分頁,針對所選測試按一下「Run test」

選取測試

圖 7. 選取測試。

如要編輯或新增測試,請參閱「新增測試」。

設定測試執行

編輯要用於這項特定測試執行作業的參數。大部分參數都會預先填入所選測試設定中定義的值。

您可以使用預設值完成這個步驟,但也可以視需要變更任何參數,例如 Max RetryCommand

設定測試執行作業

圖 8. 設定測試執行作業。

測試執行參數如下:

  • 名稱:要執行的測試套件名稱。
  • 執行次數:排定執行時應執行此測試的次數。測試執行作業會以貿易聯盟的方式進行排程,如果有足夠的容量,最多可同時執行 20 項測試。
  • 重試次數上限:如果至少有一個測試失敗,則重試測試執行次數的上限。為了執行完整的 CTS 來處理不穩定的測試,通常請將此設定設為 4 到 6 次重試。
  • 佇列逾時:如果測試執行作業處於「佇列」狀態太久,系統會自動取消該作業。請在此指定取消前要等待的時間長度。預設值為 24 小時。
  • 指令:執行測試套件的指令。您可以在這裡輸入其他指令列引數。例如,在 CTS 8.1 中執行特定模組,方法如下:

    cts-suite -m ShortModuleName
    
  • 重試指令:用於重試測試套件的指令。您可以在這裡新增其他指令列引數。舉例來說,如要只重試 CTS 8.1 中的特定模組,請使用以下命令:

    cts --retry 0 -m ShortModuleName
    

    重試引數可能與初始指令可用的引數不同,因此請在官方網站上查看所選測試套件的支援參數。

  • 「Previous Test Run」:如要重新執行先前的測試:

    • 本機 - 如果執行作業是在目前主機上啟動,請在查看測試執行作業詳細資料時,輸入看到的測試執行作業 ID。

      本機先前執行的測試

      圖 9.本機先前執行的測試。

    • 遠端 - 如果執行作業是在不同的主機上啟動,請依序選取「Remote」(遠端) 和「Upload Test Results File」(上傳測試結果檔案),然後從本機儲存空間選取檔案,即可上傳測試結果檔案。

      遠端先前測試執行

      圖 10. 遠端執行先前的測試。

選取裝置

按一下核取方塊,選取要用於執行測試套件的裝置。資料分割數量應會自動變更,以符合所選裝置數量。

選取裝置

圖 11. 選取裝置。

如要依據裝置序號以外的屬性選取裝置,您可以手動輸入「裝置規格」。舉例來說,如要選取 3 個產品名稱為「bramble」的裝置,請輸入以下內容:

product:bramble;product:bramble;product:bramble

支援的屬性如下:

  • build_id
  • device_serial
  • device_type
  • 主機名稱
  • 產品
  • product_variant
  • sim_state

所有所選裝置都必須處於「可用」狀態才能執行測試,且在執行測試時,所有裝置都會切換至「已指派」狀態。等待裝置可用時,測試執行作業會處於「佇列」狀態。

新增裝置動作

裝置動作是指可在每次測試執行前執行的指令碼。部分裝置動作已完成設定,例如閃燈和重新啟動。如要建立新的裝置動作,請參閱「建立新的裝置動作」。

裝置動作

圖 12. 裝置動作。

如要在測試執行中新增裝置動作,請按一下「新增動作」,選取要新增的動作核取方塊,然後按一下「新增動作」。裝置動作會依序執行。您可以拖曳操作來調整順序。

新增動作

圖 13. 重新排序動作。

設定測試資源

測試資源是執行測試時所需的檔案。舉例來說,執行 CTS 需要 android-cts*.zip 檔案,而刷新裝置則需要提供建構映像檔。

測試套件 ZIP 檔案的下載網址預設為合作夥伴提供的 Google 雲端硬碟連結。您可以點選「瀏覽」選取其他檔案。在彈出式視窗中,您可以輸入檔案下載連結、使用已驗證的建構管道中的檔案,或上傳要使用的本機儲存空間檔案。

測試資源

圖 14. 測試資源。

以下是彈出式視窗,可讓您透過網址選取測試資源。您可以輸入下載網址連結,然後按一下「Select」按鈕確認選取。

測試資源選取器 - 網頁網址

圖 15.測試資源選取器 - 網頁網址。

如果您已將資源上傳至 Google Grive、Google Cloud Storage (GCS) 或其他管道,也可以前往特定管道的分頁,然後選取該管道中的資源。以下是從 Google 雲端硬碟選取資源的範例。

測試資源選取器 - Google 雲端硬碟

圖 16. 測試資源選取器 - Google 雲端硬碟。

除了選取檔案之外,Filename 欄位也支援萬用字元。說明文件請見這裡

測試資源選取器 - 萬用字元模式支援

圖 17. 測試資源選取器 - 萬用字元模式支援。

您也可以從 OmniLab ATS 的本機檔案儲存空間中選取檔案。您可以將檔案上傳至這個儲存空間,也可以直接使用本機檔案和目錄

測試資源選取器 - 本機檔案儲存空間

圖 18. 測試資源選取器 - 本機檔案儲存庫。

新增重播設定

您可以安排在主要執行作業完成並載入結果後開始重播作業,但可以使用不同的裝置、動作或資源。

新增重複執行設定

圖 19. 新增重複執行設定。

啟動測試執行作業

輸入測試執行作業所需的資訊後,請按一下「開始測試執行作業」。如果所有資訊皆有效,系統就會開始執行測試,並將您重新導向至可查看測試執行詳細資料和進度的頁面。

開始執行測試

圖 20. 開始執行測試。

建立測試計畫

測試計畫可用於定期建立測試執行作業。例如,每天下午 5 點執行 CTS 9.0。如要建立新的測試計畫,請按一下「建立新的測試計畫」

建立測試計畫

圖 21. 建立測試計畫。

設定測試計畫

輸入測試計畫的名稱,以及要新增的所有標籤。然後選取要使用的時間表。

  • 手動:只有在使用者點選測試計畫清單頁面中的「執行測試計畫」時,測試計畫才會建立測試執行作業。
  • 週期性:測試計畫會根據所選週期性排程自動安排測試執行作業。例如,排定每天下午 5 點執行測試。
  • 自訂:測試計畫會根據您輸入的 cron 運算式自動安排測試執行作業。舉例來說,如要安排每天下午 5 點執行測試,Cron 運算式為 0 17 * * *

設定測試計畫

圖 22. 設定測試計畫。

新增測試套件

按一下「+ 新增測試執行設定」,即可新增要由測試計畫排定的測試套件。從「Name」下拉式選單中選取測試套件,然後按一下「Next step」。接著,選取要執行測試的裝置,然後按一下「新增設定」。您可以為每個測試計畫新增多項設定。

設定測試執行作業

圖 23. 設定測試執行作業。

新增裝置動作

新增要在每次測試執行前執行的裝置動作。詳情請參閱「新增裝置動作」。

新增裝置動作

圖 24. 新增裝置動作。

設定測試資源

將測試資源新增至測試計畫的做法,與將資源新增至個別測試執行作業相同。詳情請參閱「設定測試資源」。

設定測試資源

圖 25. 設定測試資源。

查看測試執行作業

測試執行作業清單

在「測試執行」頁面上查看排定的測試執行作業清單。按一下「查看」,即可查看測試執行作業的詳細資料。

您也可以在篩選列中輸入字串,然後按下 Enter 鍵,即可篩選清單。您可以使用多個篩選條件,只要用半形逗號分隔即可。篩選器會傳回任何資料欄中包含完全相符文字 (不包含子字串比對) 的所有資料列,但 StatusCreated 除外。

空白篩選器會傳回所有資料列。目前無法篩選空白值的資料列。

測試執行作業清單

圖 26.測試執行作業清單。

測試執行作業詳細資料

您可以在此查看測試執行作業的詳細資料,例如狀態、記錄和結果。

測試執行作業詳細資料

圖 27.測試執行作業詳細資料。

測試執行狀態

測試執行進度會顯示在「狀態」部分。如果有相關訊息 (例如下載進度、取消原因或錯誤訊息),也會顯示在這裡。

測試執行狀態

圖 28. 測試執行作業狀態。

測試執行狀態如下:

  • 待處理:正在下載必要資源。
  • Queued (已排入佇列):測試可在裝置可供使用時執行測試。
  • 執行中:測試在已指派的裝置上執行。
  • 已完成:測試已完成並回報結果。
  • 已取消:使用者已取消測試,或在嘗試尋找可用裝置時逾時。
  • 錯誤:發生錯誤,導致測試無法執行。

取消測試執行作業

如果測試執行作業尚未完成,您可以按一下「取消」,然後在確認對話方塊中按一下「是」來取消測試。如果測試執行時間超過 queue_timeout_seconds 欄位指定的時間,系統也會自動取消測試執行。在「Running」狀態下取消測試執行作業可能需要幾分鐘的時間才會生效。

取消測試執行

圖 29. 取消測試執行作業。

測試執行結果

測試執行完畢後,系統會收集並顯示結果。您可以按一下每個執行作業的箭頭,查看其他詳細資料。按一下「View Output Files」,即可查看收集到的測試構件,例如 test_result.xmltest_result_failures.html

測試執行結果

圖 30. 測試執行結果。

您可以在「記錄檔」分頁中查看即時主機和交易記錄檔。

測試執行記錄

圖 31.「Logs」分頁。

個別模組的結果會顯示在「Test Results」(測試結果) 分頁中。

測試結果分頁

圖 32.「Test Results」分頁。

您可以點選「Test Resources」分頁中的「Open」,下載用於測試資源的檔案。

測試資源分頁

圖 33. 「Test Resources」分頁。

如要查看測試執行作業的詳細資料 (例如 create_time),請前往「設定」分頁。

「Test Config」分頁

圖 34.「Config」分頁。

進階功能

管理設定檔

OmniLab ATS 使用以 YAML 編寫的設定檔來載入預先定義選項,例如測試、建構管道和裝置動作。以下是設定檔範例:

// example_file.yaml
tests:
- id : android.cts.9_0.arm
  name: CTS 9.0 (ARM)
  test_resource_defs:
  - name: android-cts.zip
    default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
    test_resource_type: TEST_PACKAGE
  command: cts
  env_vars:
  - name: TF_PATH
    value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
  - name: LD_LIBRARY_PATH
    value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
  setup_scripts:
  output_file_patterns:
  - android-cts/logs/latest/.*
  - android-cts/results/latest/.*\.html
  - android-cts/results/latest/compatibility_result\..*
  - android-cts/results/latest/logo.png
  - android-cts/results/latest/test_result.xml
  result_file: test_result.xml
  java_properties:
  - name: CTS_ROOT
    value: ${TF_WORK_DIR}
  context_file_dir: android-cts/results/
  context_file_pattern: '[\d_\.]+\.zip'
  retry_command_line: retry --retry 0
  runner_sharding_args: --shard-count ${TF_SHARD_COUNT}

build_channels:
- id: google_drive
  name: Google Drive
  provider_name: Google Drive

device_actions:
- id: flash
  name: Flash
  test_resource_defs:
  - name: bootloader.img
    test_resource_type: DEVICE_IMAGE
  - name: radio.img
    test_resource_type: DEVICE_IMAGE
  - name: img.zip
    test_resource_type: DEVICE_IMAGE
  tradefed_target_preparers:
  - class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
    option_values:
    - name: work-dir
      values:
      - ${TF_WORK_DIR}
    - name: host-setup-command
      values:
      - adb -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL flash bootloader bootloader.img
      - fastboot -s $SERIAL flash radio radio.img
      - fastboot -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL -w update img.zip
      - adb -s $SERIAL wait-for-device
    - name: host-cmd-timeout
      values:
      - 10m

設定 OmniLab ATS 執行個體時,可將設定匯出為檔案,與其他使用者共享。方法是前往「設定」頁面,然後按一下右上方的「匯出」

設定檔管理

圖 35. 設定檔管理。

下載設定檔後,請與其他使用者分享該檔案。 只要按一下「Import」並選取設定檔,即可將設定檔新增至 OmniLab ATS 執行個體。

建立新的裝置動作

裝置動作可用於自動執行裝置設定程序。「動作」是指在每次測試執行前,於每部裝置上執行的指令碼,包含重試前。如要查看可用的裝置動作清單,請前往「Settings」頁面,然後按一下「Device Actions」分頁標籤。系統已預先設定多項裝置動作,例如重新啟動和閃燈。

「裝置動作」分頁

圖 36. 「裝置動作」分頁。

新增裝置動作

  1. 按一下「新增裝置動作」

    「New Device Action」按鈕

    圖 37. 新裝置動作按鈕。

  2. 輸入名稱和說明。

    裝置動作名稱

    圖 38. 裝置動作名稱。

  3. 按一下「新增指定目標準備人員」

  4. 輸入 Trade Federation 目標預備工具完整類別名稱,例如 com.android.tradefed.targetprep.RunHostCommandTargetPreparer

    新增指定目標準備工具

    圖 39.新增目標準備工具。

    如需可用目標準備工具的清單,請參閱 com.android.tradefed.targetprep 參考資料。

    目標準備者清單

    圖 40. 目標準備者清單。

  5. 新增要與目標準備工具搭配使用的任何選項。如要查看可用選項,請查看 targetprep,找到 Android 開放原始碼計畫每個目標準備工具的原始碼:

    動作選項範例

    圖 41. 動作選項範例。

  6. 如要新增選項,請按一下「Add Target Preparer Option」,然後輸入必要值。

    動作指令範例

    圖 42. 動作指令範例。

  7. 定義執行裝置動作所需的測試資源,例如建構用於刷新的映像檔。如要新增資源定義,請按一下「Add Test Resource」,然後填寫必填欄位。如果您知道檔案的所在位置,可以按一下「Browse」(瀏覽) 來提供預設的下載網址。如果目標準備工具接受目錄做為測試資源,請選取「Decompress」。接著,指定臨時工作目錄下方的相對「Destination」目錄,以及要解壓縮的「File Names」(檔案名稱)。如果未提供檔案名稱,系統會從測試資源中解壓縮所有檔案。

    動作測試資源

    圖 43. 動作測試資源。

  8. 按一下「更新」

    動作 儲存變更

    圖 44. 儲存動作變更。

管理測試

編輯測試

如要編輯已儲存的測驗,請前往「測驗」頁面,然後在要修改的測驗資料列中按一下「編輯」。變更測試設定後,按一下「Update」

編輯測試

圖 45. 編輯測試。

新增測試

如要新增測試,請前往「測試」頁面,然後點選「建立新測試」。輸入適當資訊,然後按一下「建立」

建立測試

圖 46. 建立測試。

複製測試

圖 47. 複製測試。

匯出主機設定

設定主機後,您可以將主機的設定匯出至檔案。您可以將這個檔案上傳至其他主機,複製已儲存的設定。

如要匯出主機設定,請前往「設定」頁面,然後按一下右上角的「匯出」

匯出主機設定

圖 48. 匯出主機設定。

如要匯入主機設定檔,請前往「設定」頁面,然後按一下右上角的「匯入」

匯入主機設定

圖 49.匯入主機設定。

使用本機檔案和目錄

從 R11 版開始,$HOME/.ats_storage 目錄中的檔案會自動在 OmniLab ATS 中提供存取權。將檔案複製或移動至該目錄,然後在排定測試執行作業時,從「本機檔案」分頁中選取該檔案。

cp /path/to/file $HOME/.ats_storage

選取本機檔案

圖 50.$HOME/.ats_storage 目錄選取檔案。

您可以使用 --mount_local_path 標記,將其他目錄掛載至本機檔案儲存空間。

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

其他已掛接的目錄

圖 51. 本機檔案儲存庫中掛接的其他目錄。

啟用多主機模式

在多主機模式下,使用者可以使用單一 ATS 控制器主機,管理多個 ATS 工作站主機上的裝置和測試。

多主機模式架構

圖 52. 多主機模式架構。

  1. 如要啟動 ATS 控制器,請使用下列指令:

    mtt start --operation_mode=ON_PREMISE
    
  2. 確認控制器是否可在 http://${CONTROLLER_HOSTNAME}:8000 上使用。

  3. 如要啟動 worker,請使用下列指令:

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

如果您的網路不允許主機互相通訊,則需要在 ATS 工作站上採用更進階的設定操作說明。

  1. 使用 SSH 安全殼層通道連線至兩個主機。選取主要和檔案伺服器的連接埠,例如 9000 和 9006。

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. 設定及啟動 ATS。

    DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
    socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
    socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
    mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \
                    --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \
                    --operation_mode=ON_PREMISE
    

檔案清理工具

檔案清理工具是每小時執行一次的 cron 工作,可根據使用者定義的設定清理檔案。ATS 有兩種預設設定,可封存測試執行結果並刪除暫存檔。本指南說明如何自訂政策和設定,有效管理檔案。

政策

政策會定義要對檔案或目錄執行的作業,以及選取目標的條件。可用的運算作業如下表所示:

作業類型參數
ARCHIVEremove_file:如果為 true,請在封存檔案後移除檔案。
DELETE

條件是根據檔案屬性和系統資訊而定。下表列出可用的篩選條件:

條件類型說明參數
LAST_MODIFIED_TIME依據檔案上次修改的日期和時間篩選檔案。ttl:支援各種時間運算式,例如 10m2h7 days4w。如要瞭解支援的格式,請參閱 pytimeparse
LAST_ACCESS_TIME根據上次存取日期和時間篩選檔案。LAST_MODIFIED_TIME 相同。
NAME_MATCH使用規則運算式,根據檔案名稱進行篩選。pattern:規則運算式,例如 [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip,用於比對結果 zip。
SYSTEM_AVAILABLE_SPACE根據系統的可用空間觸發動作。threshold:當可用空間低於閾值時觸發動作,例如 200(B)、200KB200MB200GB2TB

新增檔案清理政策

圖 53. 新增檔案清理政策。

設定

設定會將一或多項政策與特定目錄結合。指定目錄中的檔案和目錄會根據定義的政策進行處理。系統會按照政策在設定檔中顯示的順序套用。

所有目標目錄都必須位於 /data 目錄下方。如果設定檔將目標目錄指定為 logs,系統會將其解讀為 /data/logs

編輯檔案清理工具設定

圖 54.編輯檔案清理工具設定。

重設

按一下「Reset Settings」,將檔案清理工具設定還原為預設狀態。這項操作會清除所有自訂項目。

重設檔案清理工具設定

圖 55. 重設檔案清理工具設定。

支援

錯誤報告

您對 OmniLab ATS 的貢獻有助於改善工具的開發作業,我們希望能獲得您的意見回饋!如需最新版本的詳細資訊,請參閱 OmniLab ATS 版本資訊。如要回報錯誤或提供建議,請提交錯誤報告。合作夥伴應透過合作夥伴管道回報錯誤或建議。