다음을 통해 공유


Azure 앱 Service 앱에 .NET Profiler 사용

.NET용 Application Insights Profiler는 Azure 앱 Service 런타임의 일부로 미리 설치됩니다. 기본 서비스 계층 이상을 사용하여 App Service에서 실행되는 ASP.NET 및 ASP.NET Core 앱에서 Profiler를 실행할 수 있습니다.

.NET용 Application Insights Profiler의 코드리스 설치:

Linux 에서 .NET Profiler를 사용하도록 설정하려면 ASP.NET Core Azure Linux 웹앱 지침을 안내합니다.

필수 조건

"Always On"이 사용하도록 설정되어 있는지 확인합니다.

  1. Azure Portal에서 App Service 인스턴스로 이동합니다.

  2. 왼쪽 메뉴에서 설정>구성을 선택합니다.

    왼쪽 창에서 구성을 선택하는 것을 보여 주는 스크린샷.

  3. 일반 설정 탭을 선택합니다.

  4. Always On>켜기가 선택되어 있는지 확인합니다.

    참고 항목

    Always On 토글을 사용하지 않도록 설정한 경우 기본 계층 이상에서 실행되도록 App Service 웹앱을 업그레이드합니다.

    Always On이 사용하도록 설정되었음을 표시하는 구성 창의 일반 탭을 보여 주는 스크린샷.

  5. 변경 내용을 적용한 경우 저장을 선택합니다.

Application Insights 및 .NET Profiler 사용

다음과 같은 경우 프로파일러를 사용하도록 설정할 수 있습니다.

동일한 구독의 Application Insights 및 App Service의 경우

Application Insights 리소스가 App Service 인스턴스와 동일한 구독에 있는 경우:

  1. 왼쪽 메뉴에서 Application Insights 모니터링을>선택합니다.

  2. Application Insights에서 사용을 선택합니다.

  3. Application Insights 리소스를 앱에 연결했는지 확인합니다.

    앱에서 Application Insights 사용하도록 설정을 보여 주는 스크린샷.

  4. 아래로 스크롤하고 앱에 따라 .NET 또는 .NET Core 탭을 선택합니다.

  5. 컬렉션 수준>권장이 선택되어 있는지 확인합니다.

  6. Profiler에서 켜기를 선택합니다.

    이전에 기본 컬렉션 수준을 선택한 경우 Profiler 설정이 사용되지 않습니다.

  7. 적용>를 선택하여 확인합니다.

    앱에서 Profiler를 사용하도록 설정하는 것을 보여 주는 스크린샷.

다른 구독의 Application Insights 및 App Service의 경우

Application Insights 리소스가 App Service 인스턴스와 다른 구독에 있는 경우 App Service 인스턴스에 대한 앱 설정을 만들어 수동으로 .NET용 Profiler를 사용하도록 설정해야 합니다. 템플릿이나 다른 방법을 사용하여 이러한 설정 만들기를 자동화할 수 있습니다. Profiler를 사용하도록 설정하는 데 필요한 설정은 다음과 같습니다.

앱 설정
APPINSIGHTS_INSTRUMENTATIONKEY Application Insights 리소스용 iKey
APPINSIGHTS_PROFILERFEATURE_VERSION 1.0.0
DiagnosticServices_EXTENSION_VERSION ~3

다음을 사용하여 이러한 값을 설정합니다.

지역별 클라우드에 .NET Profiler 사용

현재 엔드포인트 수정이 필요한 유일한 지역은 Azure Government21Vianet에서 운영하는 Microsoft Azure입니다.

앱 설정 미국 정부 클라우드: 중국 클라우드
ApplicationInsightsProfilerEndpoint https://profiler.monitor.azure.us https://profiler.monitor.azure.cn
ApplicationInsightsEndpoint https://dc.applicationinsights.us https://dc.applicationinsights.azure.cn

프로필 수집에 Microsoft Entra 인증 사용

.NET용 Application Insights Profiler는 프로필 수집을 위한 Microsoft Entra 인증을 지원합니다. 애플리케이션의 모든 프로필을 수집하려면 애플리케이션을 인증하고 애플리케이션이 Profiler 에이전트에 필수 애플리케이션 설정을 제공해야 합니다.

Profiler는 애플리케이션에서 Application Insights SDK를 사용하여 Microsoft Entra ID를 참조하고 구성할 때만 Microsoft Entra 인증을 지원합니다.

프로필 수집에 Microsoft Entra ID를 사용하도록 설정하려면 다음을 수행합니다.

  1. 관리 ID를 만들고 App Service에 추가하여 Application Insights 리소스에 대해 인증합니다.

    1. 시스템이 할당한 관리 ID 설명서

    2. 사용자가 할당한 관리 ID 설명서

  2. Application Insights 리소스에서 Microsoft Entra ID를 구성하고 사용하도록 설정합니다.

  3. 다음 애플리케이션 설정을 추가하여 Profiler 에이전트가 사용할 관리 ID를 알 수 있도록 합니다.

    • 시스템 할당 ID의 경우:

      앱 설정
      APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AAD
    • 사용자가 할당한 ID의 경우:

      앱 설정
      APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AAD;ClientId={Client id of the User-Assigned Identity}

.NET Profiler 사용 안 함

개별 앱의 인스턴스에 대해 Profiler를 중지하거나 다시 시작하려면:

  1. 왼쪽 창의 설정에서 WebJobs를 선택합니다.

    왼쪽 창에서 웹 작업 선택을 보여 주는 스크린샷.

  2. ApplicationInsightsProfiler3라는 WebJob을 선택합니다.

  3. 중지를 선택합니다.

    웹 작업 중지를 위한 중지 선택을 보여 주는 스크린샷.

  4. 를 선택하여 확인합니다.

성능 문제를 가능한 한 빨리 검색하려면 모든 앱에서 Profiler를 사용하도록 설정하는 것이 좋습니다.

WebDeploy를 사용하여 웹 애플리케이션에 변경 내용을 배포할 때 Profiler의 파일을 삭제할 수 있습니다. 배포하는 동안 삭제되지 않도록 App_Data 폴더를 제외하여 삭제를 방지할 수 있습니다.

다음 단계