Freigeben über


Verwalten der Suchindizierung

Azure DevOps Server | Azure DevOps Server 2022

Sie können Ihren Sucherweiterungs- und Indizierungsstatus verwalten. Zu diesen Aktionen gehören die folgenden Aufgaben:

Voraussetzungen

Kategorie Anforderungen
Erlaubnisse Mitglied der Gruppe Projektsammlungsadministratoren.
Aufgaben Vollständige Installation und Konfiguration der Suche.

Indizierung verwalten

Um die Suche zu verwalten, führen Sie PowerShell- und SQL-Skripts aus. Sie können alle diese Skripts aus dem Code-Search GitHub-Repository herunterladen. Verwenden Sie die OPTION "ZIP herunterladen ", um alle Skripts in einen lokalen Ordner auf dem Server herunterzuladen, auf dem die Datenbank für Azure DevOps Server ausgeführt wird.

Für die PowerShell-Skripts sind die SQL-Skriptdateien erforderlich. Stellen Sie sicher, dass der Ordner "SqlScripts " und dessen Inhalt vorhanden sind, zusammen mit den PowerShell-Skripts.

Screenshot des Herunterladens von Skriptdateien für die Verwaltung.

Indizierungsstatus überprüfen

Führen Sie die folgenden Schritte aus, um den Indizierungsstatus nach der Konfiguration der Suche oder nach der Installation der Erweiterung für eine Sammlung zu überprüfen.

  1. Führen Sie das ExtensionInstallIndexingStatus.ps1 Skript mit Administratorrechten aus, und geben Sie die folgenden Informationen ein:

    • Der Name der SQL Server-Instanz, in der sich die Azure DevOps Server-Konfigurationsdatenbank befindet.
    • Der Name der Azure DevOps Server-Sammlungsdatenbank.
    • Der Name der Azure DevOps Server-Konfigurationsdatenbank.
    • Der Name der Sammlung.
    • Die Anzahl der vorherigen Tage, um den Indizierungsstatus zu überprüfen.
  2. Überprüfen Sie die folgenden Ergebnisse:

    • Die Sammlungsindizierung wurde erfolgreich ausgelöst: Gibt an, dass die Indizierung ausgeführt wird.
    • Repositorysindizierung abgeschlossen: Listet Repositorys auf, deren Indizierung abgeschlossen wurde und durchsuchbar ist.
    • Status der zurzeit indizierenden Repositorys: Listet die Namen aller Repositorys auf, die noch indiziert werden und teilweise durchsuchbar sind. Es dauert einige Zeit, bis die Indizierung abgeschlossen ist.
  3. Führen Sie das RecentIndexingActivity.ps1 Skript in Intervallen für den Indizierungsfortschritt aus. Dieses Skript verwendet dieselben Parameter wie das ExtensionInstallIndexingStatus.ps1 Skript:

    • Repositorys wurden neu indiziert: Zeigt die Anzahl der Repositorys an, für die die Indizierung innerhalb des angegebenen Zeitintervalls abgeschlossen wurde.
    • Anzahl der Repositories mit laufender Indizierung: Zeigt die Anzahl der Repositories an, für die die Indizierung nicht abgeschlossen ist. Diese Repositorys werden noch indiziert und sind teilweise durchsuchbar.
    • Repositories haben die kontinuierliche Indizierung abgeschlossen: Zeigt die Anzahl der verarbeiteten Commits im angegebenen Zeitintervall an. Die Zahl stimmt möglicherweise nicht genau mit der Gesamtanzahl der Pushvorgänge zum Repository überein, da Zusammenführungen beim Indizieren committet werden.
    • Anzahl der Repositorys mit fortlaufender Indizierung: Zeigt die Anzahl der Repositorys an, für die die Commits noch verarbeitet werden. Diese Repositorys zeigen unvollständige Ergebnisse an, bis die Indizierung abgeschlossen ist.
    • Anzahl der Indizierungsfehler: Sie zeigt die Anzahl der fehlgeschlagenen Indizierungsaufträge an. Repositorys, die diesen Indizierungsaufträgen zugeordnet sind, könnten möglicherweise unvollständige Ergebnisse anzeigen, bis spätere Indizierungsaufträge für dieselben Repositorys die fehlgeschlagene Indizierung gepatcht haben.

Wenn Probleme auftreten, erhalten Sie Support in der Entwicklercommunity.

Indizierung anhalten

Um die gesamte Indexierung anzuhalten, führen Sie den folgenden Befehl PauseSearchIndexing.ps1 aus. Das Anhalten der Indizierung ist nützlich, wenn nach der Konfiguration der Suche Spitzen in der CPU-Auslastung auftreten. Sie werden aufgefordert, die folgenden Informationen einzugeben.

  • Der Name der SQL Server-Instanz, in der die Azure DevOps Server-Konfigurationsdatenbank vorhanden ist
  • Der Name der Azure DevOps Server-Konfigurationsdatenbank

Fortsetzen der Indizierung

Wenn Sie die Indizierung angehalten haben, führen Sie die Ausführung ResumeIndexing.ps1 aus, um sie erneut zu starten. Sie werden aufgefordert, die folgenden Informationen einzugeben.

  • Der Name der SQL Server-Instanz, in der die Azure DevOps Server-Konfigurationsdatenbank vorhanden ist
  • Der Name der Azure DevOps Server-Konfigurationsdatenbank

Erneutes Indizieren eines Repositorys oder einer Sammlung

Um ein Git- oder TFVC-Repository neu zu indexieren, führen Sie die entsprechende Version des Skripts für Ihre Version von Azure DevOps Server aus. Sie werden aufgefordert, die folgenden Informationen einzugeben.

  • Der Name der SQL Server-Instanz, in der die Azure DevOps Server-Konfigurationsdatenbank vorhanden ist
  • Der Name der Azure DevOps Server-Sammlungsdatenbank
  • Der Name der Azure DevOps Server-Konfigurationsdatenbank
  • Der Typ der erneuten Indizierung, die ausgeführt werden soll, entweder Git\_Repository oder TFVC\_Repository
  • Der Name der Sammlung
  • Der Name des Repositorys, das neu indiziert werden soll

Führen Sie das Skript aus, um eine TriggerCollectionIndexing.ps1 neu zu indizieren. Sie werden aufgefordert, die folgenden Informationen einzugeben.

  • Der Name der SQL Server-Instanz, in der die Azure DevOps Server-Konfigurationsdatenbank vorhanden ist
  • Der Name der Azure DevOps Server-Sammlungsdatenbank
  • Der Name der Azure DevOps Server-Konfigurationsdatenbank
  • Der Name der Sammlung
  • Die Entitäten, die neu indiziert werden sollen, entweder All, Code, , WorkItemoder Wiki

Suchbeschränkungen

Wenn Sie eine Notfallwiederherstellung (DR) durchführen und den Server auf ein früheres Sicherungsabbild Ihrer SQL-Datenbank zurücksetzen, indizieren Sie alle Ihre Sammlungen erneut.