애플리케이션 성능 모니터링(APM)¶
APM은 Guance가 분산 추적을 핵심으로 구축한 풀스택 성능 분석 솔루션입니다. OpenTracing 등 표준화된 프로토콜을 준수하며, 호스트 계층에 통합 수집 에이전트를 배포하여 추적 데이터, 인프라스트럭처 메트릭 및 애플리케이션 로그를 플랫폼 수준에서 연계 분석함으로써 코드부터 리소스까지의 엔드투엔드 관측 가능성을 제공합니다.
핵심 아키텍처: 단일 호스트 단일 에이전트 아키텍처를 채택합니다. 각 애플리케이션 서버에 DataKit을 통합 데이터 수집기로 배포합니다.
핵심 기능¶
서비스 관측¶
-
서비스 맵: 토폴로지 뷰를 통해 각 서비스 간의 호출 관계를 직관적으로 확인할 수 있으며, 요청 수, 오류율, 평균 응답 시간, P99/P95 응답 시간 및 최대 응답 시간 등 주요 메트릭을 지원합니다.
-
서비스 상세: 서비스 업스트림/다운스트림, 서비스 개요, 연관 로그 및 트레이스를 확인할 수 있으며, 메트릭(서비스 요청 응답 시간, 오류 요청 분포) 및 로그(오류 로그 수)의 이상 추세 차트를 표시합니다.
-
성능 메트릭: 서비스 유형, 환경, 버전, 프로젝트 및 서비스 이름을 기준으로 서비스 성능을 빠르게 필터링합니다.
트레이스¶
-
트레이스 탐색기: 트레이스 데이터를 검색, 필터링 및 내보낼 수 있으며, 강력한 검색 기능을 통해 언제든지 원하는 시간의 트레이스 데이터를 필터링하여 이상 트레이스를 빠르게 발견할 수 있습니다.
-
트레이스 상세 페이지: 플레임 그래프, Span 목록, 워터폴 차트 등 도구를 사용하여 트레이스 성능을 종합적으로 분석합니다. 동기식 호출과 비동기식 호출 모두에서 각 트레이스 성능의 데이터 세부 정보를 명확하게 추적할 수 있습니다.
오류 추적¶
오류 추적 탐색기: 분산 추적에서 발생하는 다양한 오류에 대해 집계 분석 및 추적 기능을 제공하며, 특정 오류 유형의 과거 발생 추세와 서비스, 인터페이스 또는 인스턴스별 분포를 확인할 수 있습니다.
프로파일링¶
Profiling 탐색기: 플레임 그래프 등 심층 성능 프로파일링 도구를 통해 애플리케이션 런타임의 CPU 사용량, 메서드 소요 시간 등을 시각적으로 분석합니다.
트레이스 연관 Profiling: 애플리케이션 계층의 성능 병목(예: 느린 호출, 고소요 시간 메서드)을 기본 인프라스트럭처의 리소스 소비 상황과 연계 분석합니다.
분석 대시보드¶
분석 대시보드: 애플리케이션 성능의 핵심 분석 데이터를 집계하여 표시합니다. 주요 항목으로는 트레이스 통계(Span 및 요청량과 오류), 연관 이상(오류 로그), 심층 성능 분석(응답 소요 시간, 호출 수, 서비스 요청 분포 등), 리소스 및 오류 연관이 포함됩니다.
모니터링 및 알림¶
APM 메트릭 탐지: 트레이스의 성능 데이터를 규칙 기반으로 매칭 및 필터링하여 특정 탐지 조건(예: 응답 시간이 임계값 초과, 특정 오류 발생)을 정의하고, 전체 트레이스 데이터에서 이상 조건에 부합하는 요청을 식별하여 필터링합니다.
스토리지 및 과금¶
시스템은 현재 워크스페이스의 trace_id 수를 집계하며, 계층형 요금제를 적용합니다.
구체적인 과금 규칙 및 데이터 저장 정책(예: 보존 기간)은 별도로 구성할 수 있습니다. 데이터 저장 정책을 참조하세요.
추가 과금 규칙은 요금제를 참조하세요.