Application Insights와의 통합 개요
Azure Monitor의 기능인 Application Insights는 모니터링 및 진단을 위해 엔터프라이즈 환경에서 널리 사용됩니다. 특정 테넌트 또는 환경에서 이미 수집된 데이터는 자체 Application Insights 환경으로 푸시됩니다. 데이터는 Application Insights에 의해 Azure Monitor 로그에 저장되며 왼쪽 창에 있는 조사 아래의 성능 및 실패 패널에 시각화됩니다. 데이터는 Application Insights에서 정의하는 표준 스키마에 있는 Application Insights 환경으로 내보내집니다. 지원, 개발자 및 관리자 사용자는 이 기능을 사용하여 문제를 분류하고 해결할 수 있습니다.
Application Insights에는 원격 분석 데이터를 사용하는 데 도움이 되는 다양한 기능이 있습니다.
- 조직의 상태를 개괄적으로 보여주는 대시보드 를 만들어 보세요.
- 스마트 검색을 사용하여 사전 모니터링을 수행하세요.
- 조직에서 발생하는 중요한 시나리오에 대한 알림을 설정하세요.
- 사용 관점에서 일반적인 탐색 패턴을 시각화 및 추적하세요. 예를 들어 사용자가 기본 탭으로 돌아가서 양식을 닫기 전에 항상 특정 탭을 먼저 선택하는지 여부를 이해하는 데 도움이 됩니다. 그렇다면 사용자가 이 레코드를 열 때마다 시간을 절약하기 위해 필드가 다른 탭 대신 첫 번째 탭에 배치되어야 함을 나타낼 수 있습니다.
- 왼쪽 창의 모니터링 아래에 있는 로그를 사용하여 성능 및 오류 문제를 해결하는 사용자 지정 쿼리를 만듭니다.
예: pageViews 테이블에서 양식 로드에 대한 상위 100개 레코드 나열:
pageViews
| take 100
Application Insights의 개요 패널
Application Insights는 다양한 보기를 제공합니다. 개요 패널은 앱의 주요 진단 지표에 대한 요약을 보여주며 포털의 다른 기능에 대한 게이트웨이입니다. 자세한 내용을 보려면 메트릭을 드릴하세요. 다음 샘플을 참조하세요.
Application Insights의 성능 패널
성능 패널을 열려면 개요 패널에서 서버 응답 시간 그래프 를 선택하거나 왼쪽 창의 조사에서 성능을 선택합니다. Application Insights를 사용하면 서버 및 브라우저 데이터 보기를 선택할 수 있습니다. 기간이 가장 긴 작업을 식별하여 잠재적인 문제를 진단할 수 있습니다.
성능 패널은 애플리케이션에 대한 각 작업의 수와 평균 지속 시간을 보여줍니다. 이 정보를 사용하여 사용자에게 가장 큰 영향을 미치는 작업을 식별할 수 있습니다.
서버 보기에는 가장 자주 호출되는 API와 지연 시간이 표시됩니다.
호출 횟수와 지속 시간이 더 긴 작업은 잠재적인 조사 항목입니다. 위의 예에서 POST /XRMServices/2011/Organization.svc/web
는 호출 횟수가 많고 지속 시간이 깁니다. 마찬가지로 GET /api/data/v9.0/accounts
는 상대적으로 지속시간이 깁니다.
작업 중 하나를 선택하면 상위 3개 종속성과 소요 시간에 대한 세부 정보도 표시됩니다. 종속성 탭을 선택하여 더 자세히 볼 수 있습니다.
브라우저 보기로 전환할 경우 환경에서 가장 자주 보는 페이지와 각 페이지의 대기 시간에 대한 데이터를 볼 수 있습니다. 세션 수 및 다양한 작업과 관련된 종속성을 포함한 메트릭이 표시됩니다. 예를 들어 계정 작업을 선택하면 계정 테이블에 대한 요청을 보여줍니다.
특정 샘플을 드릴하여 특정 작업에 시간이 소요된 위치를 확인할 수 있습니다.
추가 정보: Azure Application Insights로 성능 문제 찾기 및 진단
Application Insights의 실패 패널
실패 패널을 열려면 왼쪽 창에서 조사 아래의 실패를 선택하거나 실패한 요청 그래프를 선택합니다.
Application Insights의 예외 테이블은 실패 패널을 제공합니다. 실패한 요청 수와 애플리케이션의 각 작업에 영향을 받는 사용자 수가 표시됩니다. 서버와 브라우저 모두에 대한 작업 및 종속성에 관한 오류 세부 정보를 볼 수 있습니다. 생성/읽기/업데이트/삭제(CRUD) 관련 실패. API 작업에 사용되는 특정 HTTP 메서드(GET, POST, PUT 및 DELETE)는 여기에서 사용할 수 있습니다. 이 정보를 사용하여 사용자에게 가장 큰 영향을 미치는 실패를 식별할 수 있습니다. 예를 들어 다음 샘플에서는 GET/api/data/v9.0/GetClientMetaData
작업에 많은 수의 실패와 사용자가 있는 것을 볼 수 있습니다. 이 작업을 선택하면 오른쪽 패널에 이에 대한 추가 정보가 표시됩니다.
또한 실패에 매핑된 공통 응답 코드의 요약 보기를 포함하여 종속성과 관련된 실패를 볼 수 있습니다.
병목 현상이 발생한 단계의 세부 정보를 드릴할 수 있습니다.
추가 정보: Azure Application Insights로 런타임 예외 찾기 및 진단
Application Insights의 데이터 쿼리
Application Insights에서 왼쪽 창에 있는 모니터링 아래의 로그 패널로 이동합니다.
공통 필드
Application Insights에 채워진 모든 테이블에는 다음과 같은 공통 필드가 있습니다.
cloud_RoleInstance: 이러한 작업의 일부로 생성된 이벤트의 경우 이 필드는 CDS 데이터 내보내기 로 설정되어 동일한 Application Insights 환경 내의 다른 이벤트와 구별될 수 있도록 합니다.
operation_Id: 이는 단일 상호작용의 모든 작업을 연결합니다. 이는 모든 관련 이벤트를 실패한 이벤트로 가져오는 한 가지 방법입니다.
pageViews | where operation_Id == "[insert id here]"
session_Id : 이는 단일 사용자 세션의 모든 활동을 고유하게 식별합니다. 사용자가 새 탭을 열거나 F5/새로고침을 선택하거나 모바일 앱을 닫았다가 다시 열 때 세션 값이 재설정됩니다.
user_Id, user_AuthenticatedId: 둘 다 현재 사용자의 Microsoft Entra ID로 설정되어 있습니다.
client_IP: 이 필드는 개인정보 보호법 및 규정을 준수하기 위해 항상
0.0.0.0
로 채워집니다. 제공된 IP 주소는 client_City, client_StateOrProvince 및 client_CountryOrRegion 필드를 채우는 데 사용됩니다.client_Type: 로그가 통합 인터페이스에서 오는 경우 여기의 값은 Browser 이고, 로그가 에서 오는 경우 Server 입니다. Dataverse userAgent는 가능한 경우 customDimensions 아래의 requests 테이블에서 찾을 수 있습니다.
Application Insights 스키마가 수정되었으며 이 기능이 내보내기 과정에서 데이터를 Application Insights로 푸시했으므로 Application Insights의 customDimensions 필드가 속성을 추가하는 데 사용됩니다.