다음을 통해 공유


Application Insights 리소스 만들기 및 구성

중요합니다

이 문서는 작업 영역 기반 Application Insights 리소스에 적용됩니다. 클래식 Application Insights 리소스는 더 이상 제공되지 않습니다. 작업 영역 기반 Application Insights로 전환하여 새로운 기능을 활용합니다.

Application Insights는Log Analytics 와 통합되고 일반적인 Log Analytics 작업 영역으로 원격 분석을 보냅니다. 이 설정은 Log Analytics 기능에 대한 모든 권한을 제공하고, 한 위치에 로그를 통합하며, 통합된 Azure 역할 기반 액세스 제어 를 허용하므로 앱 간/작업 영역 쿼리가 필요하지 않습니다.

향상된 기능은 다음과 같습니다.

이 문서에서는 Application Insights 리소스를 만들고 구성하는 방법을 보여 줍니다. Application Insights 리소스 자체와 함께 일일 한도 설정 및 가격 책정 계획과 같은 다양한 구성을 추가할 수 있습니다. Azure Resource Manager를 사용하여 가용성 테스트를 만들고, 메트릭 경고를 설정하고, 프로세스를 자동화할 수도 있습니다.

참고

작업 영역 기반 Application Insights 리소스에 대한 데이터 수집 및 보존 비용은 데이터가 있는 Log Analytics 작업 영역을 통해 청구됩니다. 청구에 대한 자세한 내용은 Azure Monitor 로그 가격 책정 세부 정보를 참조하세요.

필수 조건

  • 활성 Azure 구독입니다.
  • 리소스를 만드는 데 필요한 권한입니다.

추가 요구 사항

추가 요구 사항은 없습니다.

Application Insights 리소스 만들기

  1. Azure Portal에 로그인합니다.
  2. 리소스 만들기를 선택합니다.
  3. 범주 모니터링 및 진단을 연 다음 Application Insights를 선택합니다.
  4. 모든 관련 정보를 입력한 다음 검토하고 만들기를 클릭하여 Application Insights 리소스를 생성합니다.

Application Insights 리소스를 보여 주는 스크린샷

참고

리소스를 만드는 동안 기존 Log Analytics 작업 영역에 연결하지 않으면 Application Insights 리소스와 함께 새 Log Analytics 리소스가 자동으로 만들어집니다.

리소스를 만든 후 Application Insights 개요 창에서 해당 작업 영역 정보를 찾을 수 있습니다.

작업 영역 이름을 보여 주는 스크린샷.

새 통합 작업 영역 쿼리 환경을 활용할 수 있는 연결된 Log Analytics 작업 영역으로 이동하려면 파란색 링크 텍스트를 선택합니다.

참고

Application Insights 클래식 리소스 쿼리, 통합 문서 및 로그 기반 경고에 대한 완전한 이전 버전과의 호환성을 계속 제공합니다. 새 작업 영역 기반 테이블 구조 또는 스키마를 쿼리하거나 확인하려면 먼저 Log Analytics 작업 영역으로 이동해야 합니다. 클래식 Application Insights 쿼리 환경에 액세스하려면 Application Insights 창에서 로그(분석)를 선택합니다.

모니터링 구성

Application Insights 리소스를 만든 후 모니터링을 구성합니다.

연결 문자열 가져오기

연결 문자열은 원격 분석 데이터를 연결하려는 리소스를 식별합니다. 또한 이를 사용하여 리소스가 원격 분석의 대상으로 사용하는 엔드포인트를 수정할 수도 있습니다. 연결 문자열을 복사하여 애플리케이션 코드나 환경 변수에 추가해야 합니다.

Application Insights 리소스의 연결 문자열을 얻으려면 다음을 수행합니다.

  1. Azure Portal에서 Application Insights 리소스를 엽니다.
  2. Essentials 섹션의 개요 창에서 연결 문자열을 찾습니다.
  3. 연결 문자열을 마우스로 가리키면 클립보드에 복사할 수 있는 아이콘이 나타납니다.

OpenTelemetry를 사용하여 애플리케이션 모니터링

OpenTelemetry를 사용한 애플리케이션 모니터링의 경우 적절한 Azure Monitor OpenTelemetry Distro를 설치하고 연결 문자열을 새로 만든 리소스로 가리킵니다.

OpenTelemetry를 사용하여 애플리케이션 모니터링을 설정하는 방법에 대한 자세한 내용은 언어와 관련된 다음 설명서를 참조하세요.

참고

브라우저를 대상으로 하는 웹앱의 경우 Application Insights JavaScript SDK를 사용하는 것이 좋습니다.

자동 계측

Azure FunctionsAzure App Service와 같은 모니터링 서비스의 경우 먼저 Application Insights 리소스를 만든 다음 모니터링을 사용하도록 설정할 때 해당 리소스를 가리킬 수 있습니다. 또는 사용 프로세스 중에 새 Application Insights 리소스를 만들 수 있습니다.

Application Insights 리소스 구성

연결된 작업 영역 수정

Application Insights 리소스를 만든 후 연결된 Log Analytics 작업 영역을 수정할 수 있습니다.

Application Insights 리소스에서 속성>변경 작업 영역> 선택합니다.

원격 분석 내보내기

작업 영역 기반 리소스에는 레거시 연속 내보내기 기능이 지원되지 않습니다. 대신 진단 설정을 사용합니다.

참고

진단 설정 내보내기는 비용을 증가시킬 수 있습니다. 자세한 내용은 Application Insights에서 원격 분석 내보내기를 참조하세요. 이 기능의 가격 책정 정보는 Azure Monitor 가격 책정 페이지를 참조하세요. 청구가 시작되기 전에 알림이 전송됩니다. 공지 기간 이후에도 원격 분석 내보내기를 계속 사용하면 해당 요금이 청구됩니다.

Application Insights 리소스에서 진단 설정> 추가를 선택합니다.

스토리지 계정에 보관할 모든 테이블 또는 테이블의 하위 집합을 선택할 수 있습니다. 이벤트 허브로 스트리밍할 수도 있습니다.

데이터 보존 기간 설정

Application Insights 리소스에 대한 데이터 보존은 연결된 Log Analytics 작업 영역에서 설정할 수 있습니다.

자세한 내용은 Analytics 테이블의 기본 대화형 보존 기간 구성을 참조하세요.

일일 최대값 설정

Application Insights 및 기본 Log Analytics 작업 영역에 대해 일일 한도를 독립적으로 설정해야 합니다. 유효 일일 한도는 두 설정 중 최소값입니다.

Azure Portal에서 일일 한도를 설정하는 방법을 알아보려면 Log Analytics 작업 영역에서 일일 한도 설정을 참조하세요.

요금제 설정

Application Insights 리소스에 대한 가격 책정 계획은 연결된 Log Analytics 작업 영역에서 설정할 수 있습니다. 사용 가능한 가격 책정 계획에 대한 자세한 내용은 Azure Monitor 로그 비용 계산 및 옵션을 참조하세요.

참고

Application Insights에서 예기치 않은 요금 또는 높은 비용이 표시되는 경우 이 가이드가 도움이 될 수 있습니다. 높은 원격 분석 볼륨, 데이터 수집 급증 및 잘못 구성된 샘플링과 같은 일반적인 원인을 다룹니다. 비용 급증, 원격 분석 볼륨, 샘플링이 작동하지 않음, 데이터 한도, 높은 수집 또는 예기치 않은 청구와 관련된 문제를 해결하는 경우에 특히 유용합니다. 시작하려면 Application Insights에서 높은 데이터 수집 문제 해결을 참조하세요.

Azure Portal에서 가격 책정 계획을 설정하는 방법을 알아보려면 Application Insights 청구를 참조하세요.

IP 마스킹 사용 안 함

기본적으로 Application Insights는 IP 주소를 저장하지 않습니다. IP 마스킹을 사용하지 않도록 설정하는 방법을 알아보려면 지리적 위치 및 IP 주소 처리를 참조하세요.

추가 리소스 만들기

가용성 테스트 생성

Azure Portal에서 가용성 테스트를 만드는 방법을 알아보려면 Application Insights 가용성 테스트를 참조하세요.

메트릭 경고 추가

팁 (조언)

각 Application Insights 리소스에는 기본 제공되는 메트릭이 제공됩니다. 별도의 구성 요소가 동일한 Application Insights 리소스에 대해 보고하는 경우 이러한 메트릭에 대해 경고하는 것이 적합하지 않을 수 있습니다.

Azure Portal에서 메트릭 경고를 만드는 방법을 알아보려면 자습서: Azure 리소스에 대한 메트릭 경고 만들기를 참조하세요.

메트릭 경고 만들기를 자동화하려면 메트릭 경고 템플릿 문서를 참조하세요.

더 많은 Application Insights 리소스 만들기

얼마나 많은 Application Insights 리소스를 배포해야 하나요?

웹 애플리케이션의 다음 버전을 개발할 때 새 버전과 이미 릴리스된 버전의 Application Insights 원격 분석이 혼동되지 않도록 하려고 합니다.

혼동을 방지하기 위해 서로 다른 개발 단계의 원격 분석을 별도의 연결 문자열과 함께 별도의 Application Insights 리소스에 보냅니다.

시스템이 Azure Cloud Services의 인스턴스인 경우 별도의 연결 문자열을 설정하는 다른 방법이 있습니다.

단일 Application Insights 리소스를 사용하는 경우

단일 Application Insights 리소스를 사용합니다.

  • 함께 배포되고 일반적으로 동일한 팀에서 개발하고 관리하는 애플리케이션에 대한 DevOps/ITOps 관리를 간소화합니다.
  • 기본적으로 응답 시간, 실패율 등 핵심 성과 지표를 대시보드에 중앙 집중화합니다. 필요한 경우 메트릭 탐색기에서 역할 이름별로 분류합니다.
  • 애플리케이션 구성 요소 간에 서로 다른 Azure 역할 기반 액세스 제어 관리가 필요하지 않은 경우.
  • 동일한 메트릭 경고 조건, 연속 내보내기 및 구성 요소 전체의 청구/할당량 관리로 충분할 경우.
  • API 키가 모든 구성 요소의 데이터에 동일하게 액세스하는 것이 허용되고 10개의 API 키가 모든 구성 요소의 요구 사항을 충족하는 경우.
  • 동일한 스마트 검색 및 작업 항목 통합 설정이 모든 역할에 적합한 경우.

참고

여러 Application Insights 리소스를 통합하려는 경우 기존 애플리케이션 구성 요소를 통합된 새 Application Insights 리소스로 가리킬 수 있습니다. 이전 리소스에 저장된 원격 분석은 새 리소스로 전송되지 않습니다. 비즈니스 연속성을 위해 새 리소스에 충분한 원격 분석이 있는 경우에만 이전 리소스를 삭제합니다.

기타 고려 사항

포털 환경을 활성화하려면 사용자 지정 코드를 추가하여 Cloud_RoleName 특성에 의미 있는 값을 할당합니다. 이러한 값이 없으면 포털 함수가 작동하지 않습니다.

Azure Service Fabric 애플리케이션 및 클래식 클라우드 서비스의 경우 SDK는 Azure 역할 환경에서 읽어 서비스를 자동으로 구성합니다. 다른 앱 형식의 경우 일반적으로 명시적으로 설정해야 합니다.

라이브 메트릭은 역할 이름별로 데이터를 분할할 수 없습니다.

버전 및 릴리스 추적

새 버전의 애플리케이션을 게시할 때 원격 분석을 다른 빌드와 분리할 수 있어야 합니다. 검색메트릭 탐색기 결과를 필터링할 수 있도록 애플리케이션 버전 속성을 설정할 수 있습니다.

애플리케이션 버전 속성은 몇 가지 다른 방법으로 설정할 수 있습니다.

  • 옵션 1: 직접 버전 설정

    애플리케이션의 초기화 코드에 줄을 telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version; 추가합니다.

    모든 TelemetryClient 인스턴스가 일관되게 설정되도록 하려면 해당 줄을 원격 분석 이니셜라이저에 래핑합니다.

  • 옵션 2: 버전 BuildInfo.config 설정(ASP.NET 전용)

    Application Insights 웹 모듈은 노드에서 BuildLabel 버전을 선택합니다. 프로젝트에 이 파일을 포함하고 솔루션 탐색기에서 항상 복사 속성을 설정합니다.

    <?xml version="1.0" encoding="utf-8"?>
    <DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
      <ProjectName>AppVersionExpt</ProjectName>
      <Build type="MSBuild">
        <MSBuild>
          <BuildLabel kind="label">1.0.0.2</BuildLabel>
        </MSBuild>
      </Build>
    </DeploymentEvent>
    
    

    Microsoft 빌드 엔진에서 BuildInfo.config를 자동으로 생성합니다. .csproj 파일에 다음 줄을 추가합니다.

    <PropertyGroup>
      <GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
      <IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
    </PropertyGroup>
    

    이 단계에서는 yourProjectName.BuildInfo.config이라는 파일을 생성합니다. 게시 프로세스는 이름을 BuildInfo.config로 바꿉니다.

    Visual Studio로 빌드할 때 빌드 레이블에는 자리 표시자 (*AutoGen_...*)이 포함되어 있습니다. Microsoft 빌드 엔진을 사용하여 빌드하면 자리 표시자가 올바른 버전 번호로 채워집니다.

    Microsoft Build Engine이 버전 번호를 생성하도록 허용하려면 1.0.*에서 AssemblyReference.cs과 같이 버전을 설정합니다.

릴리스 주석

Azure DevOps를 사용하는 경우 새 버전을 릴리스할 때마다 주석 표식이 차트에 추가됩니다.

리소스 만들기 프로세스 자동화

Azure Resource Manager에서 Bicep 또는 JSON 템플릿을 사용하여 리소스 만들기 프로세스를 자동화할 수 있습니다. 여러 리소스를 함께 패키지하여 하나의 배포에서 만들 수 있습니다. 예를 들어 가용성 테스트, 메트릭 경고 및 진단 설정을 사용하여 Application Insights 리소스를 만들어 Azure Storage 계정에 원격 분석을 보낼 수 있습니다.

Azure Portal에서 템플릿 생성

기존 리소스에서 템플릿을 생성할 수 있습니다.

Application Insights만

  1. Azure Portal에서 Application Insights 리소스로 이동합니다.
  2. 왼쪽 탐색 모음의 Automation 아래에 나열된 내보내기 템플릿을 엽니다.
  3. (선택 사항): 고유한 매개 변수를 사용하려면 매개 변수 포함을 선택 취소합니다.
  4. 템플릿 파일을 다운로드하거나 Azure Portal에서 직접 배포합니다.

여러 리소스

  1. Application Insights 리소스의 리소스 그룹으로 이동합니다.
  2. 개요 창에서 템플릿에 포함할 모든 리소스를 표시한 다음 위쪽 탐색 모음에서 템플릿 내보내기를 선택합니다.
  3. (선택 사항): 고유한 매개 변수를 사용하려면 매개 변수 포함을 선택 취소합니다.
  4. 템플릿 파일을 다운로드하거나 Azure Portal에서 직접 배포합니다.

템플릿을 처음부터 만들기

ARM 템플릿을 처음부터 만드는 방법을 알아보려면 템플릿을 만들고, 리소스를 추가하고, 매개 변수를 추가하는 등의 자습서가 포함된 ARM 템플릿설명서를 방문하세요.

Application Insights, 가용성 테스트, 메트릭 경고, 진단 설정 및 기타 리소스에 사용할 수 있는 속성은 참조>> 노드 아래의 Azure 리소스 참조 설명서에서 찾을 수 있습니다.

팁 (조언)

이 섹션에 연결된 각 Azure 리소스 참조 설명서 페이지의 아래쪽에서 사용할 수 있는 빠른 시작 템플릿을 사용할 수도 있습니다. 템플릿을 사용하는 방법을 알아보려면 자습서: Azure 빠른 시작 템플릿을 사용합니다.

다음 단계