검색 인덱싱 관리

Azure DevOps Server | Azure DevOps Server 2022

검색 확장 및 인덱싱 상태를 관리할 수 있습니다. 이러한 작업에는 다음 작업이 포함됩니다.

필수 구성 요소

범주 요구 사항
사용 권한 프로젝트 컬렉션 관리자 그룹의 구성원입니다.
작업 설치 및 검색구성 완료.

인덱싱 관리

검색을 관리하려면 PowerShell 및 SQL 스크립트를 실행합니다. Code-Search GitHub 리포지토리에서 이러한 스크립트를 모두 다운로드할 수 있습니다. ZIP 다운로드 옵션을 사용하여 Azure DevOps Server용 데이터베이스를 실행하는 서버의 로컬 폴더에 모든 스크립트를 다운로드합니다.

PowerShell 스크립트에는 SQL 스크립트 파일이 필요합니다. PowerShell 스크립트와 함께 SqlScripts 폴더 및 해당 내용이 있는지 확인합니다.

관리용 다운로드 스크립트 파일을 보여 주는 스크린샷

인덱싱 상태 확인

검색을 구성한 후 또는 컬렉션에 대한 확장을 설치한 후 인덱싱 상태를 확인하려면 다음 단계를 완료합니다.

  1. ExtensionInstallIndexingStatus.ps1으로 스크립트를 실행하고 다음 정보를 입력합니다.

    • Azure DevOps Server 구성 데이터베이스가 있는 SQL Server 인스턴스 이름입니다.
    • Azure DevOps Server 컬렉션 데이터베이스의 이름입니다.
    • Azure DevOps Server 구성 데이터베이스의 이름입니다.
    • 컬렉션의 이름입니다.
    • 인덱싱 상태를 확인할 이전의 일 수입니다.
  2. 다음 출력을 검토합니다.

    • 컬렉션 인덱싱이 트리거되었습니다. 인덱싱이 진행 중임을 나타냅니다.
    • 리포지토리 인덱싱 완료: 인덱싱이 완료되고 검색 가능한 리포지토리를 나열합니다.
    • 현재 인덱싱 중인 리포지토리의 상태: 인덱싱되고 있고 부분적으로 검색 가능한 모든 리포지토리의 이름을 나열합니다. 인덱싱을 완료하는 데 다소 시간이 걸립니다.
  3. RecentIndexingActivity.ps1 인덱싱 진행률을 위해 간격으로 스크립트를 실행합니다. 이 스크립트는 ExtensionInstallIndexingStatus.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 데이터베이스의 이전 스냅샷으로 다시 이동하는 경우 모든 컬렉션을 다시 인덱싱할있습니다.