Azure DevOps Server 2022 - Azure DevOps Server 2019
検索拡張機能とインデックス作成の状態を管理できます。これには、次のアクションが含まれます。
[前提条件]
カテゴリ | 要求事項 |
---|---|
アクセス許可 | プロジェクト コレクション管理者 グループのメンバー。 |
タスク | 検索のインストールと構成を完了します。 |
インデックス作成の管理
検索は、PowerShell スクリプトと SQL スクリプトを実行して管理されます。 これらのスクリプトはすべて、 Code-Search GitHub リポジトリからダウンロードできます。 すべてのスクリプトをサーバー上のローカル フォルダーにダウンロードできます。 このサーバーは、 ZIP のダウンロード オプションを使用して Azure DevOps Server のデータベースを実行します。
PowerShell スクリプトには SQL スクリプト ファイルが必要であるため、PowerShell スクリプトと共に SqlScripts フォルダーとその内容が存在することを確認します。
インデックス作成の状態を確認する
Search を構成した後、またはコレクションの拡張機能がインストールされた後にインデックス作成の状態を確認するには、次の手順を実行します。
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 データベースの以前のスナップショットに戻す場合は、 すべてのコレクションのインデックスを再作成します。