애플리케이션 맵을 사용하여 앱 성능 문제 해결
애플리케이션 맵을 사용하면 분산 애플리케이션의 모든 구성 요소에서 성능 병목 상태 또는 오류 핫스팟을 발견할 수 있습니다. 맵의 각 노드는 애플리케이션 구성 요소 또는 해당 종속성을 나타냅니다. 상태 KPI 및 경고 상태가 있습니다. 모든 구성 요소에서 Application Insights 이벤트와 같은 보다 자세한 진단으로 클릭할 수 있습니다. 앱에서 Azure 서비스를 사용하는 경우 SQL Database Advisor 권장 사항과 같은 Azure 진단을 클릭할 수도 있습니다.
구성 요소는 분산/마이크로 서비스 애플리케이션의 독립적으로 배포 가능한 부분입니다. 개발자 및 운영 팀은 이러한 애플리케이션 구성 요소에 의해 생성된 원격 분석에 대한 코드 수준 가시성 또는 액세스 권한을 갖습니다.
- 구성 요소는 팀/조직에서 액세스할 수 없는 SQL, Event Hubs 등과 같은 "관찰된" 외부 종속성(코드 또는 원격 분석)과 다릅니다.
- 구성 요소는 임의의 수의 서버/역할/컨테이너 인스턴스에서 실행됩니다.
- 구성 요소는 별도의 Application Insights 계측 키(구독이 다른 경우에도) 또는 단일 Application Insights 계측 키에 보고하는 다른 역할일 수 있습니다. 미리 보기 맵 환경은 구성 요소가 설정된 방식에 관계없이 구성 요소를 표시합니다.
여러 수준의 관련 애플리케이션 구성 요소에서 전체 애플리케이션 토폴로지 볼 수 있습니다. 구성 요소는 Application Insights 리소스가 다르거나 단일 리소스의 역할이 다를 수 있습니다. 앱 맵은 Application Insights SDK가 설치된 서버 간에 수행된 HTTP 종속성 호출에 따라 구성 요소를 찾습니다.
이 경험은 구성 요소의 점진적 발견으로 시작합니다. 애플리케이션 맵을 처음 로드하면 이 구성 요소와 관련된 구성 요소를 검색하기 위해 쿼리 집합이 트리거됩니다. 왼쪽 위 모서리에 있는 버튼은 애플리케이션에서 구성 요소가 발견됨에 따라 이를 반영하여 업데이트됩니다.
"맵 구성 요소 업데이트"를 클릭하면 해당 시점까지 검색된 모든 구성 요소로 맵이 새로 고쳐집니다. 애플리케이션의 복잡성에 따라 로드하는 데 1분 정도 걸릴 수 있습니다.
모든 구성 요소가 단일 Application Insights 리소스 내의 역할인 경우 이 검색 단계가 필요하지 않습니다. 이러한 애플리케이션에 대한 초기 로드에는 모든 구성 요소가 있습니다.
이 환경의 주요 목표 중 하나는 수백 개의 구성 요소를 사용하여 복잡한 토폴로지 시각화를 하는 것입니다. 관련 인사이트를 확인하고 해당 구성 요소의 성능 및 실패 심사 환경으로 이동하려면 구성 요소를 클릭합니다.
애플리케이션 맵은 클라우드 역할 이름 속성을 사용하여 맵의 구성 요소를 식별합니다. 클라우드 역할 이름을 수동으로 설정하거나 재정의하고 애플리케이션 맵에 표시되는 이름을 변경할 수 있습니다.