Application Insights 살펴보기
Application Insights는 Azure Monitor의 확장이며 APM(애플리케이션 성능 모니터링) 기능을 제공합니다. APM 도구는 다음과 같은 방법으로 개발, 테스트 및 프로덕션까지 애플리케이션을 모니터링하는 데 유용합니다.
- 애플리케이션의 성능을 사전에 파악합니다.
- 애플리케이션 실행 데이터를 사후에 검토하여 인시던트의 원인을 확인합니다.
Application Insights는 애플리케이션 활동 및 상태를 설명하는 메트릭 및 애플리케이션 원격 분석 데이터를 수집하는 것 외에도 애플리케이션 추적 로깅 데이터를 수집하고 저장할 때도 사용할 수 있습니다.
로그 추적이 다른 원격 분석과 연결되어 활동에 대해 자세히 볼 수 있습니다. 기존 앱에 추적 로깅을 추가하려면 로그에 대한 대상만 제공해야 합니다. 로깅 프레임워크를 변경할 필요가 거의 없습니다.
Application Insights 기능 개요
기능에 다음이 포함되지만 이에 국한되지 않습니다.
기능 | 설명 |
---|---|
라이브 메트릭 | 호스트 환경에 영향을 주지 않고 배포된 애플리케이션의 활동을 실시간으로 관찰합니다. |
가용성 | 가상 트랜잭션 모니터링이라고 알려진 애플리케이션 외부 엔드포인트를 검색하여 시간에 따른 전반적인 가용성 및 응답성을 테스트합니다. |
GitHub 또는 Azure DevOps 통합 | Application Insights 데이터의 컨텍스트에서 GitHub 또는 Azure DevOps 작업 항목을 만듭니다. |
사용량 | 사용자에게 인기 있는 기능과 사용자가 애플리케이션을 상호 작용하고 사용하는 방법 이해 |
스마트 검색 | 사전 원격 분석을 통한 자동 오류 및 변칙 검색 |
애플리케이션 맵 | 애플리케이션 아키텍처의 상위 수준 하향식 보기와 구성 요소 상태 및 응답성에 대한 시각적 참조를 한눈에 볼 수 있습니다. |
분산 추적 | 지정된 실행 또는 트랜잭션의 엔드투엔드 흐름을 검색하고 시각화합니다. |
Application Insights에서 모니터링하는 항목
Application Insights는 추적 로깅 데이터뿐만 아니라 애플리케이션 활동 및 상태를 설명하는 메트릭 및 애플리케이션 원격 분석 데이터를 수집합니다.
- 요청 속도, 응답 시간 및 실패율 - 하루 중 어느 시간에 어떤 페이지를 가장 많이 방문하는지, 사용자가 어디에 있는지 확인합니다. 어떤 페이지가 가장 성능이 우수한지 확인합니다. 요청이 더 있는데 응답 시간과 실패율이 높아지면 아마도 리소스 문제가 있는 것입니다.
- 종속성 비율, 응답 시간 및 실패율 - 외부 서비스 때문에 속도가 느려지는지 확인합니다.
- 예외 - 집계된 통계를 분석하거나 특정 인스턴스를 선택하여 스택 추적 및 관련 요청을 자세히 분석합니다. 서버 및 브라우저 예외가 전부 보고됩니다.
- 페이지 보기 및 로드 성능 - 사용자의 브라우저에서 보고합니다.
- 웹 페이지의 AJAX 호출 - 속도, 응답 시간 및 실패율.
- 사용자 및 세션 수.
- Windows 또는 Linux 서버 컴퓨터의 성능 카운터 - CPU, 메모리, 네트워크 사용량 등.
- Docker 또는 Azure의 호스트 진단.
- 앱의 진단 추적 로그 - 추적 이벤트를 요청과 상호 연결하는 데 사용됩니다.
- 판매된 품목, 승리한 게임 등의 비즈니스 이벤트를 추적하기 위해 개발자가 직접 클라이언트 또는 서버 코드로 작성하는 사용자 지정 이벤트 및 메트릭.
Application Insights 시작
Application Insights는 Microsoft Azure에서 호스트되는 다양한 서비스 중 하나이며, 원격 분석이 분석 및 프레젠테이션을 위해 이 서비스로 전송됩니다. 등록은 무료이며 Application Insights에 대해 기본 가격 책정 계획을 선택하는 경우 애플리케이션 사용량이 특정 크기로 커질 때까지 무료입니다.
다음과 같은 여러 가지 방법으로 앱 성능 모니터링 및 분석을 시작할 수 있습니다.
- 런타임 시: 서버에서 웹앱을 계측합니다. 이미 배포된 애플리케이션에 적합합니다. 코드에 대한 업데이트를 방지합니다.
- 개발 시: 코드에 Application Insights를 추가합니다. 원격 분석 컬렉션을 사용자 지정하고 원격 분석을 더 많이 전송할 수 있습니다.
- 페이지 보기, AJAX 및 기타 클라이언트 쪽 원격 분석에 대해 웹 페이지를 계측 합니다.
- Visual Studio App Center와 통합하여 모바일 앱 사용을 분석 합니다.
- 가용성 테스트 -서버에서 정기적으로 웹 사이트를 ping합니다.