Azure Spring Apps 랜딩 존 가속기 작업 모니터링
이 문서에서는 Azure Spring Apps에 배포된 Spring Boot 애플리케이션에 대한 가시성 고려 사항 및 권장 사항을 제공합니다.
organization 모든 워크로드에서 공유하는 중앙 집중식 모니터링을 제공하거나 워크로드당 전용 Azure Monitor Log Analytics 작업 영역을 제공할 수 있습니다. 중앙 집중식 리소스에 대한 종속성을 사용하는 경우 애플리케이션 팀 구성원이 Azure RBAC(역할 기반 액세스 제어) 역할을 사용하여 로그에 액세스할 수 있는지 확인합니다.
플랫폼 디자인에 대한 자세한 내용은 워크로드 관리 및 모니터링을 참조하세요.
사용자 고유의 모니터링 리소스를 프로비전할 수 있습니다. 이 방법은 애플리케이션 팀에 더 많은 자율성을 제공하고 애플리케이션의 전반적인 관리를 간소화합니다. 단점은 관리 오버헤드가 증가할 수 있습니다. Azure Spring Apps 랜딩 존 가속기 및 다음 지침은 이 방법을 기반으로 합니다.
디자인 고려 사항
로그 및 메트릭. 애플리케이션 및 리소스에서 내보내는 로그 및 메트릭을 수집합니다. 로그는 워크로드 작업에 대한 인사이트를 제공합니다. 메트릭은 정기적으로 수집되며 거의 실시간 인사이트를 제공합니다. 로그 및 메트릭은 리소스의 상태 및 사용률과 관련된 조사에 도움이 될 수 있습니다.
메트릭은 크기 조정 결정의 핵심입니다. 메트릭 임계값에 따라 앱의 크기를 조정하도록 허용하거나 특정 기간 동안 앱의 크기를 조정할 수 있습니다.
향후 분석을 위해 이 데이터를 저장하는 것이 좋습니다. 추세를 빠르게 파악할 수 있도록 데이터를 시각화하는 기능을 유지합니다.
계측 애플리케이션에서 더 많은 가시성 데이터를 생성하기 위해 계측을 배치합니다. 계측 정보를 수집하려면 Azure 애플리케이션 Insights Java 에이전트와 같은 APM(애플리케이션 성능 관리) 도구를 사용합니다. 플랫폼 진단 이 정보와 결합하여 향상된 모니터링 기능을 제공합니다.
분산 추적. 분산 추적을 구현하여 Azure Spring Apps 에코시스템 내의 다양한 서비스에서 가시성을 얻습니다.
경고. 애플리케이션 팀은 워크로드에 중요한 이벤트에 대한 알림을 받아야 합니다. 스토리지, 요청 속도 및 데이터 사용량과 같은 메트릭을 기반으로 리소스를 모니터링하는 경고를 설정할 수 있습니다.
상태 프로브. 상태 프로브를 설정하여 백 엔드 서비스의 상태를 검색할 수 있습니다. 요청이 정상 인스턴스로 라우팅되도록 상태 프로브를 설정하는 방법을 검토하고 백 엔드 서비스를 사용할 수 없는 경우 애플리케이션이 정상적으로 종료되는지 확인합니다.
디자인 권장 사항
Azure Monitor 메트릭을 사용하여 모니터링되는 리소스에서 시계열 데이터베이스로 내보내는 메트릭을 수집합니다.
Azure Spring Apps의 경우 각 애플리케이션 개요 페이지 및 공통 메트릭 페이지의 차트를 확인합니다.
Azure Spring Apps 내의 진단 설정 페이지를 사용하여 앱에 대해 원하는 진단 설정 조합을 구성합니다.
참고
스토리지 계정, 이벤트 허브 또는 Log Analytics에 로그가 표시되는 데 지연이 있습니다. 해당 시간 동안 Spring 앱 인스턴스가 삭제되거나 이동된 경우 동일한 리소스 ID를 가진 다른 앱이 동일한 진단 설정을 다시 사용하지 않도록 진단 설정을 삭제해야 합니다.
Application Insights를 모든 애플리케이션 구성 요소에서 일관된 APM(애플리케이션 성능 모니터링) 도구로 사용하여 애플리케이션 로그, 메트릭 및 추적을 수집합니다. 모든 종속성 및 추적에서 데이터를 수집할 수 있으며 엔드 투 엔드 트랜잭션을 시각화하는 기능이 있습니다.
Azure Spring Apps를 사용하면 Application Insights에 Spring Cloud Resilience4J 메트릭을 수집할 수 있습니다. Java In-Process 에이전트를 사용하도록 설정하고 이 기능을 사용하도록 차원 컬렉션을 구성합니다.
Azure Spring Apps는 Spring Cloud Sleuth 및 Zipkin을 Application Insights와 통합합니다.
앱 인스턴스를 빠르게 검색하고 등록할 수 있는 서비스 검색 메커니즘을 선택합니다. 옵션은 Azure Spring Apps 계층에 따라 달라집니다.
비정상 앱 인스턴스가 서비스 검색 기능에서 제거되도록 준비 상태 및 활동성 프로브를 함께 사용합니다.
애플리케이션 시작 시간이 더 긴 경우 총 시간 제한을
initialDelaySeconds + periodSeconds * failureThreshold
애플리케이션의 시작 시간보다 긴 값으로 조정합니다. 이 조정은 프로브 오류를 방지하고 애플리케이션을 강제로 다시 시작하도록 합니다.애플리케이션별 명령, TCP 소켓 연결 또는 HTTP 요청에 따라 작업을 수행하도록 상태 프로브를 구성합니다.
Spring Boot 앱의 경우 Spring Boot Actuator 상태 표시기를 활용하여 상태 프로브를 구성합니다.