管理搜尋索引編製

Azure DevOps Server 2022 - Azure DevOps Server 2019

您可以管理搜尋延伸模組和索引狀態,其中包括下列動作:

必要條件

管理索引編製

搜尋會藉由執行 PowerShell 和 SQL 腳本來管理。 所有這些腳本都可以從 程式代碼搜尋 GitHub 存放庫下載。 您可以將所有文稿下載到伺服器上的本機資料夾。 此伺服器會使用 [下載 ZIP ] 選項來執行適用於 Azure DevOps Server 的資料庫。

PowerShell 腳本需要 SQL 腳本檔案,因此請確定 SqlScripts 資料夾及其內容,以及 PowerShell 腳本。

顯示下載腳本檔案以進行管理的螢幕快照。

注意

當您執行文稿時,請確定您為版本執行適當的文稿:

檢查索引編製狀態

若要在設定搜尋之後,或在為集合安裝擴充功能之後檢查索引狀態,請執行下列步驟。

  1. ExtensionInstallIndexingStatus.ps1系統管理許可權執行文稿,並輸入下列資訊:

    • Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱。
    • Azure DevOps Server 集合資料庫的名稱。
    • Azure DevOps Server 組態資料庫的名稱。
    • 集合的名稱。
    • 要檢查索引編製狀態的前幾天數目。
  2. 檢閱下列輸出:

    • 已成功觸發集合索引編製: 表示編製索引正在進行中。
    • 存放庫索引編製已完成: 列出索引編製已完成且可搜尋的存放庫。
    • 目前編製索引的存放庫狀態: 列出仍在編製索引且部分可搜尋的所有存放庫名稱。 編製索引需要一些時間才能完成。
  3. RecentIndexingActivity.ps1依間隔執行腳本以編製索引進度。 此文稿接受與 ExtensionInstallIndexingStatus.ps1 文稿相同的參數:

    • 存放庫已完成全新編製索引: 顯示索引編製在指定時間間隔內完成的存放庫數目。
    • 進行中全新編製索引的存放庫計數: 顯示索引編製未完成的存放庫數目。 這些存放庫仍在編製索引,且部分可搜尋。
    • 存放庫已完成連續編製索引: 顯示指定時間間隔中處理的認可數目。 因為合併在編製索引時認可合併,所以數目可能不完全符合推送至存放庫的總數。
    • 進行中持續編製索引的存放庫計數: 顯示認可仍在處理的存放庫數目。 這些存放庫會顯示不完整的結果,直到編製索引完成為止。
    • 編製索引作業失敗的計數: 顯示失敗的編製索引作業數目。 與這些索引作業相關聯的存放庫可能會顯示不完整的結果,直到稍後為相同存放庫編製索引作業修補失敗的索引。
  1. CheckIndexingStatus.ps1系統管理許可權執行文稿,並輸入下列資訊:

    • TFS 組態資料庫所在的 SQL Server 實例名稱
    • TFS 集合資料庫的名稱
    • TFS 組 態資料庫的名稱。
    • 集合的名稱
    • 要檢查索引編製狀態的前幾天數目。
  2. 檢閱下列輸出:

    • 已成功觸發集合索引編製: 表示編製索引正在進行中。
    • 存放庫索引編製已完成: 列出索引編製已完成且可搜尋的存放庫。
    • 檔案探索階段中的存放庫: 尚未探索檔案的存放庫。 這些檔案會在這個階段之後編製索引。
    • 存放庫索引進行中: 部分編製索引且應該可搜尋的存放庫,即使結果只是部分。 編製索引可能需要一些時間才能完成。
  3. 監視進度:

    1. CheckIndexingStatus.ps1依間隔執行腳本以編製索引進度。
    2. 如果索引編製無法運作,或暫止檔案的數目不會變更一段時間,請使用系統管理許可權執行 TriggerCollectionIndexing.ps1 腳本。

如果您遇到任何問題,請取得 開發人員社群 的支援

暫停編製索引

若要暫停所有編製索引,請執行: PauseSearchIndexing.ps1,如果您在設定搜尋之後看到 CPU 使用率尖峰,這會很有用。 系統會提示您輸入下列資訊。

  • Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱
  • Azure DevOps Server 組態資料庫的名稱

繼續編製索引

如果您暫停編製索引,請執行: ResumeIndexing.ps1 以再次啟動。 系統會提示您輸入下列資訊。

  • Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱
  • Azure DevOps Server 組態資料庫的名稱

重新編製存放庫或集合的索引

若要重新編製 Git 或 TFVC 存放庫的索引,請針對您的 Azure DevOps Server 版本執行適當的腳本 Re-IndexingRepository.ps1版本。 系統會提示您輸入下列資訊。

  • Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱
  • Azure DevOps Server 集合資料庫的名稱
  • Azure DevOps Server 組態資料庫的名稱
  • 要執行的重新編製索引類型,或Git\_RepositoryTFVC\_Repository
  • 集合的名稱
  • 要重新編製索引的存放庫名稱

若要重新編製集合的索引,請執行腳本:TriggerCollectionIndexing.ps1 系統會提示您輸入下列資訊。

  • Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱
  • Azure DevOps Server 集合資料庫的名稱
  • Azure DevOps Server 組態資料庫的名稱
  • 集合的名稱
  • 要重新編製索引的實體、All、、 CodeWorkItemWiki

搜尋限制

如果您執行災害復原 (DR) 作業,並將伺服器移回先前的 SQL 資料庫快照集,請 重新編制所有集合的索引。