管理搜尋索引編製
Azure DevOps Server 2022 - Azure DevOps Server 2019
您可以管理搜尋延伸模組和索引狀態,其中包括下列動作:
必要條件
管理索引編製
搜尋會藉由執行 PowerShell 和 SQL 腳本來管理。 所有這些腳本都可以從 程式代碼搜尋 GitHub 存放庫下載。 您可以將所有文稿下載到伺服器上的本機資料夾。 此伺服器會使用 [下載 ZIP ] 選項來執行適用於 Azure DevOps Server 的資料庫。
PowerShell 腳本需要 SQL 腳本檔案,因此請確定 SqlScripts 資料夾及其內容,以及 PowerShell 腳本。
注意
當您執行文稿時,請確定您為版本執行適當的文稿:
檢查索引編製狀態
若要在設定搜尋之後,或在為集合安裝擴充功能之後檢查索引狀態,請執行下列步驟。
ExtensionInstallIndexingStatus.ps1
以系統管理許可權執行文稿,並輸入下列資訊:- Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱。
- Azure DevOps Server 集合資料庫的名稱。
- Azure DevOps Server 組態資料庫的名稱。
- 集合的名稱。
- 要檢查索引編製狀態的前幾天數目。
檢閱下列輸出:
- 已成功觸發集合索引編製: 表示編製索引正在進行中。
- 存放庫索引編製已完成: 列出索引編製已完成且可搜尋的存放庫。
- 目前編製索引的存放庫狀態: 列出仍在編製索引且部分可搜尋的所有存放庫名稱。 編製索引需要一些時間才能完成。
RecentIndexingActivity.ps1
依間隔執行腳本以編製索引進度。 此文稿接受與ExtensionInstallIndexingStatus.ps1
文稿相同的參數:- 存放庫已完成全新編製索引: 顯示索引編製在指定時間間隔內完成的存放庫數目。
- 進行中全新編製索引的存放庫計數: 顯示索引編製未完成的存放庫數目。 這些存放庫仍在編製索引,且部分可搜尋。
- 存放庫已完成連續編製索引: 顯示指定時間間隔中處理的認可數目。 因為合併在編製索引時認可合併,所以數目可能不完全符合推送至存放庫的總數。
- 進行中持續編製索引的存放庫計數: 顯示認可仍在處理的存放庫數目。 這些存放庫會顯示不完整的結果,直到編製索引完成為止。
- 編製索引作業失敗的計數: 顯示失敗的編製索引作業數目。 與這些索引作業相關聯的存放庫可能會顯示不完整的結果,直到稍後為相同存放庫編製索引作業修補失敗的索引。
CheckIndexingStatus.ps1
以系統管理許可權執行文稿,並輸入下列資訊:- TFS 組態資料庫所在的 SQL Server 實例名稱。
- TFS 集合資料庫的名稱。
- TFS 組 態資料庫的名稱。
- 集合的名稱。
- 要檢查索引編製狀態的前幾天數目。
檢閱下列輸出:
- 已成功觸發集合索引編製: 表示編製索引正在進行中。
- 存放庫索引編製已完成: 列出索引編製已完成且可搜尋的存放庫。
- 檔案探索階段中的存放庫: 尚未探索檔案的存放庫。 這些檔案會在這個階段之後編製索引。
- 存放庫索引進行中: 部分編製索引且應該可搜尋的存放庫,即使結果只是部分。 編製索引可能需要一些時間才能完成。
監視進度:
CheckIndexingStatus.ps1
依間隔執行腳本以編製索引進度。- 如果索引編製無法運作,或暫止檔案的數目不會變更一段時間,請使用系統管理許可權執行
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\_Repository
TFVC\_Repository
- 集合的名稱
- 要重新編製索引的存放庫名稱
若要重新編製集合的索引,請執行腳本:TriggerCollectionIndexing.ps1
。
系統會提示您輸入下列資訊。
- Azure DevOps Server 組態資料庫所在的 SQL Server 實例名稱
- Azure DevOps Server 集合資料庫的名稱
- Azure DevOps Server 組態資料庫的名稱
- 集合的名稱
- 要重新編製索引的實體、
All
、、Code
WorkItem
或Wiki
搜尋限制
如果您執行災害復原 (DR) 作業,並將伺服器移回先前的 SQL 資料庫快照集,請 重新編制所有集合的索引。