다음을 통해 공유


Azure Spring Apps 엔터프라이즈 계획에서 Application Live View를 사용하여 앱 모니터링

참고 항목

기본, 표준엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.

표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.

이 문서는 기본/표준 ✅ 엔터프라이즈에 ❎ 적용됩니다.

Application Live View for VMware Tanzu는 앱 개발자와 앱 운영자가 실행 중인 앱 내부를 살펴보는 데 도움이 되는 간단한 인사이트 및 문제 해결 도구입니다.

Application Live View는 Spring Boot Actuator 정보를 검사하여 실행 중인 앱에 대한 시각적 인사이트를 제공합니다. 앱 내에서만 데이터의 라이브 보기를 제공합니다. Application Live View는 추가 분석 또는 기록 보기를 위한 앱 데이터를 저장하지 않습니다. 사용하기 쉬운 인터페이스를 통해 앱의 특정 측면에 대한 문제를 해결하고, 개요를 배우고, 유지 관리할 수 있습니다. 사용자가 실행 중인 앱의 로그 수준 및 환경 속성과 같은 일부 매개 변수를 변경할 수 있도록 일정 수준의 제어를 제공합니다.

이 문서에서는 Application Live View UI 기능과 Application Live View 사용자 인터페이스에 포함된 페이지 및 보기에 대해 설명합니다.

필수 조건

세부 정보 페이지

세부 정보 페이지는 라이브 보기 섹션에 로드되는 기본 페이지입니다. 이 페이지에는 다음 속성을 포함한 테이블 형식의 개요가 제공됩니다.

  • 앱 이름
  • Instance ID
  • 위치
  • 액추에이터 위치
  • 상태 엔드포인트
  • 직접 액추에이터 액세스
  • 프레임워크
  • 버전
  • 새로운 패치 버전
  • 새로운 주 버전
  • 빌드 버전

페이지 오른쪽 위 모서리에 있는 드롭다운에서 정보 범주를 선택하여 탐색할 수 있습니다.

데모 앱의 세부 정보 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[상태] 페이지

상태 페이지로 이동하려면 정보 범주 드롭다운에서 상태 옵션을 선택합니다. [상태] 페이지에는 앱의 상태에 대한 자세한 정보가 제공됩니다.

상태 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 준비 상태, 활동성, 디스크 공간 등의 앱 상태를 구성하는 모든 구성 요소 목록을 봅니다.
  • 각 구성 요소와 연결된 상태 및 세부 정보를 봅니다.

상태 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[환경] 페이지

환경 페이지로 이동하려면 정보 범주 드롭다운에서 환경 옵션을 선택합니다. [환경] 페이지에는 앱 환경에 대한 세부 정보가 포함되어 있습니다. 여기에는 시스템 속성, 환경 변수 및 Spring Boot 앱의 application.properties 같은 구성 속성이 포함되어 있습니다.

환경 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 검색 기능을 사용하여 속성 또는 값을 검색합니다.
  • 오른쪽 모서리에 있는 검색 아이콘을 사용하여 특정 속성의 모든 항목을 봅니다. 검색 필드에 수동으로 입력하지 않고도 속성 키를 빠르게 찾을 수 있습니다. 이 단추를 선택하면 페이지가 해당 속성 이름으로 필터링됩니다.
  • 페이지 오른쪽 위 모서리에서 범위 새로 고침을 선택하여 모든 환경 속성을 새로 고치도록 앱을 검색합니다.
  • 행에서 재정의를 선택하고 값을 편집하여 기존 속성을 편집합니다. 값을 저장하면 페이지 맨 위에 있는 적용된 재정의 섹션에서 업데이트된 속성을 볼 수 있습니다.
  • 초기화를 선택하여 환경 속성을 원래 상태로 초기화합니다.
  • 앱에 새 환경 속성을 추가하고, 적용된 재정의 섹션에서 재정의된 환경 변수를 편집하거나 제거합니다.

환경 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

참고 항목

앱의 앱 구성 속성에서 management.endpoint.env.post.enabled=true를 설정해야 하며, 해당하는 편집 가능한 환경이 앱에 있어야 합니다.

[로그 수준] 페이지

로그 수준 페이지로 이동하려면 정보 범주 드롭다운에서 로그 수준 옵션을 선택합니다. [로그 수준] 페이지에서는 앱의 로거 및 해당 수준 구성에 액세스할 수 있습니다.

로그 수준 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • UI에서 실시간으로 INFO, DEBUGTRACE와 같은 로그 수준을 구성합니다.
  • 패키지를 검색하고 해당 로그 수준을 편집합니다.
  • 특정 클래스 및 패키지에서 로그 수준을 구성합니다.
  • 루트 로거의 로그 수준을 OFF로 수정하여 모든 로그 수준을 비활성화합니다.
  • 변경 내용만 토글을 사용하여 변경된 로그 수준을 표시합니다.
  • 검색 기능을 사용하여 로거 이름으로 검색합니다.
  • 초기화를 선택하여 로그 수준을 원래 상태로 초기화합니다.
  • 페이지 오른쪽 위 모서리에서 모두 초기화를 선택하여 모든 로거를 기본 상태로 초기화합니다.

로그 수준 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[스레드] 페이지

스레드 페이지로 이동하려면 정보 범주 드롭다운에서 스레드 옵션을 선택합니다. 이 페이지에는 JVM 스레드 및 앱의 실행 프로세스와 관련된 모든 세부 정보가 표시됩니다. 이 페이지는 라이브 스레드 및 디먼 스레드를 실시간으로 추적합니다. 서로 다른 스레드 상태의 스냅샷입니다.

스레드 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 스레드 상태로 이동하여 특정 스레드 및 해당 스택 추적에 대한 모든 정보를 표시합니다.
  • 검색 기능을 사용하여 스레드 ID 또는 상태로 스레드를 검색합니다.
  • 새로 고침 아이콘을 사용하여 스레드를 최신 상태로 새로 고칩니다.
  • 스레드 ID를 선택하여 더 많은 스레드 세부 정보를 봅니다.
  • 분석할 스레드 덤프를 다운로드합니다.

스레드 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

특정 스레드에 대한 자세한 정보를 제공하는 오버레이가 있는 스레드 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[메모리] 페이지

메모리 페이지로 이동하려면 정보 범주 드롭다운에서 메모리 옵션을 선택합니다.

메모리 페이지에는 JVM 내의 메모리 사용 현황이 강조 표시됩니다. 힙 및 비힙 메모리 내의 여러 메모리 영역이 그래픽으로 표시됩니다. JVM에서 실행되는 Spring Boot 앱의 경우 메모리 페이지는 JVM 내부의 데이터를 시각화하고, Kubernetes Pod 수준에 대한 외부 정보가 아닌 앱의 메모리 인사이트를 제공합니다.

메모리 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 사용된 총 메모리 및 총 메모리 크기와 함께 메모리의 다양한 공간에 대한 누적 개요를 표시하는 실시간 그래프를 봅니다.
  • GC 일시 중지 및 GC 이벤트를 표시하는 그래프를 봅니다.
  • 오른쪽 위 모서리에 있는 힙 덤프 단추를 사용하여 힙 덤프 데이터를 다운로드합니다.

메모리 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

참고 항목

이 그래픽 시각화는 실시간으로 이루어지며 실시간 데이터만 표시합니다. 앞에서 설명한 것처럼 Application Live View 기능은 정보를 저장하지 않습니다. 즉, 그래프는 해당 페이지에 남아 있는 동안에만 시간에 따른 데이터를 시각화합니다.

[요청 매핑] 페이지

요청 매핑 페이지로 이동하려면 정보 범주 드롭다운에서 요청 매핑 옵션을 선택합니다. 이 페이지에는 앱의 요청 매핑에 대한 정보가 제공됩니다. 각 매핑의 요청 매핑 페이지에는 요청 처리기 메서드가 표시됩니다.

요청 매핑 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 매핑을 선택하여 produces, consumesHTTP 메서드를 포함한 앱의 헤더 메타데이터와 같은 요청 매핑에 대한 세부 정보를 봅니다.
  • 요청 매핑 또는 메서드를 검색합니다.
  • /actuator/** 요청 매핑 토글을 사용하여 앱의 액추에이터 관련 매핑을 봅니다.

참고 항목

앱 액추에이터 엔드포인트가 management.server.port에 노출되면 앱은 해당 컨텍스트에서 액추에이터 요청 매핑 데이터를 반환하지 않습니다. 이 경우 액추에이터 토글을 사용하도록 설정하면 메시지가 표시됩니다.

요청 매핑 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

특정 요청에 대한 세부 정보를 제공하는 오버레이 창이 있는 요청 매핑 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[HTTP 요청] 페이지

HTTP 요청 페이지로 이동하려면 정보 범주 드롭다운에서 HTTP 요청 옵션을 선택합니다. HTTP 요청 페이지에는 앱과의 HTTP 요청-응답 교환에 대한 정보가 제공됩니다. 그래프는 모든 요청의 응답 상태를 나타내는 초당 요청 수를 시각화합니다.

HTTP 요청 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • info, success, redirects, client-errorsserver-errors 응답 상태로 필터링합니다.
  • 타임스탬프, 메서드, 경로, 상태, 콘텐츠 형식, 길이 및 시간과 같은 메트릭을 사용하여 추적 데이터를 테이블 형식으로 자세히 봅니다.
  • 테이블의 검색 기능을 사용하여 검색 필드 값을 기반으로 추적을 필터링합니다.
  • 타임스탬프를 선택하여 앱의 메서드, 헤더 및 응답과 같은 요청을 자세히 살펴봅니다.
  • 그래프 위에 있는 새로 고침 아이콘을 선택하여 앱의 최신 추적 정보를 로드합니다.
  • 페이지 오른쪽 위 모서리에 있는 /actuator/** 토글을 사용하여 앱의 액추에이터 관련 추적 정보를 표시합니다.

참고 항목

앱 액추에이터 엔드포인트가 management.server.port에 노출되면 앱에 대한 액추에이터 HTTP 추적 데이터가 반환되지 않습니다. 이 경우 액추에이터 토글을 사용하도록 설정하면 메시지가 표시됩니다.

HTTP 요청 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

특정 요청에 대한 세부 정보를 제공하는 오버레이 창이 있는 HTTP 요청 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[캐시] 페이지

캐시 페이지로 이동하려면 정보 범주 드롭다운에서 캐시 옵션을 선택합니다. 캐시 페이지에서는 앱의 캐시에 액세스할 수 있습니다. 네이티브 캐시의 정규화된 이름을 포함하여 앱과 연결된 캐시 관리자의 세부 정보를 제공합니다.

캐시 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 검색 기능을 사용하여 특정 캐시 또는 캐시 관리자를 검색합니다.
  • 제거를 선택하여 개별 캐시를 제거합니다. 그러면 캐시가 지워집니다.
  • 모두 제거를 선택하여 모든 캐시를 제거합니다. 앱의 캐시 관리자가 없으면 No cache managers available for the application 메시지가 표시됩니다.

HTTP 캐시 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[구성 속성] 페이지

구성 속성 페이지로 이동하려면 정보 범주 드롭다운에서 구성 속성 옵션을 선택합니다. 구성 속성 페이지에는 앱의 구성 속성에 대한 정보가 제공됩니다. Spring Boot의 경우 이 페이지에 앱의 @ConfigurationProperties 빈이 표시됩니다. 모든 빈과 관련 구성 속성의 스냅샷이 제공됩니다.

구성 속성 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 검색 기능을 사용하여 속성 또는 빈 이름의 키-값을 조회합니다.

구성 속성 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[조건] 페이지

조건 페이지로 이동하려면 정보 범주 드롭다운에서 조건 옵션을 선택합니다. 조건 평가 보고서는 구성 및 자동 구성 클래스의 조건 평가에 대한 정보를 제공합니다. Spring Boot의 경우 조건 평가 보고서에서 앱에 구성된 모든 빈을 명확하게 볼 수 있습니다.

조건 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 빈 이름을 선택하여 조건 및 조건 일치 이유를 봅니다. 빈이 구성되지 않았으면 빈의 일치하는 조건과 일치하지 않는 조건(있는 경우)이 모두 표시됩니다. 조건뿐 아니라 무조건 자동 구성 클래스(있는 경우)의 이름도 표시됩니다.
  • 검색 기능을 사용하여 빈과 조건을 필터링합니다.

조건 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[예약된 작업] 페이지

예약된 작업 페이지로 이동하려면 정보 범주 드롭다운에서 예약된 작업 옵션을 선택합니다. 예약된 작업 페이지에는 cron 작업, 고정 지연 작업 및 고정 속도 작업, 사용자 지정 작업, 작업과 연결된 속성을 포함하여 앱의 예약된 작업에 대한 정보가 제공됩니다.

예약된 작업 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 검색 창에서 특정 속성 또는 작업을 검색하여 작업 또는 속성 세부 정보를 검색합니다.

예약된 작업 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[빈] 페이지

페이지로 이동하려면 정보 범주 드롭다운에서 옵션을 선택합니다. 페이지에는 모든 앱 빈과 해당 종속성 목록에 대한 정보가 제공됩니다. 빈 유형, 종속성 및 해당 리소스에 대한 정보가 표시됩니다.

페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 빈 이름 또는 해당 필드를 검색합니다.

Beans 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[메트릭] 페이지

메트릭 페이지로 이동하려면 정보 범주 드롭다운에서 메트릭 옵션을 선택합니다. 메트릭 페이지에서는 앱 메트릭 정보에 액세스할 수 있습니다.

메트릭 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • jvm.memory.used, jvm.memory.maxhttp.server.request와 같이 앱에 사용할 수 있는 다양한 메트릭 목록에서 선택합니다. 메트릭을 선택한 후에는 연결된 태그를 볼 수 있습니다.
  • 필터링 조건에 따라 각 태그의 값을 선택합니다.
  • 메트릭 추가를 선택하여 메트릭을 추가합니다. 메트릭은 기본적으로 5초마다 새로 고침됩니다.
  • 자동 새로 고침 토글을 사용하지 않도록 설정하여 자동 새로 고침 기능을 일시 중지합니다.
  • 모두 새로 고침을 선택하여 메트릭을 수동으로 새로 고칩니다.
  • 필요에 따라 메트릭 값의 형식을 변경합니다.
  • 같은 행에서 빼기 기호를 선택하여 특정 메트릭을 삭제합니다.

메트릭 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

[액추에이터] 페이지

액추에이터 페이지로 이동하려면 정보 범주 드롭다운에서 액추에이터 옵션을 선택합니다. 액추에이터 페이지에서는 액추에이터 데이터를 트리 뷰로 볼 수 있습니다.

액추에이터 페이지에는 다음과 같은 기능이 포함되어 있습니다.

  • 액추에이터 엔드포인트 목록에서 선택하고 원시 액추에이터 데이터를 구문 분석합니다.

액추에이터 페이지를 보여 주는 애플리케이션 라이브 보기의 스크린샷

다음 단계