共用方式為


管理搜尋索引編製

Azure DevOps Server 2022 - Azure DevOps Server 2019

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

先決條件

類別 要求
權限 專案集合系統管理員 群組的成員。
任務 完成 安裝和設定搜尋

管理索引

搜尋會藉由執行 PowerShell 和 SQL 腳本來管理。 所有這些文稿都可以從 Code-Search 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 腳本,並輸入下列資訊:

    • SQL Server 實例名稱TFS 組態資料庫 所在的位置。
    • 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 組態資料庫的名稱
  • 集合的名稱
  • 要重新編製索引的實體,AllCodeWorkItemWiki

搜尋限制

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