진단 설정을 사용하여 ELK(Elastic)로 로그 분석
참고 항목
기본, 표준 및 엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.
표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.
이 문서는 Java ✅ C에✅ 적용됩니다.#
이 문서는 기본/표준 ✅ 엔터프라이즈에✅ 적용됩니다.
이 문서에서는 Azure Spring Apps의 진단 기능을 사용하여 ELK(Elastic)로 로그를 분석하는 방법을 보여줍니다.
다음 동영상은 Elastic을 사용하는 Spring Boot 애플리케이션에 대한 통합 관찰 가능성을 소개합니다.
진단 설정 구성
진단 설정을 구성하려면 다음 단계를 사용합니다.
- Azure Portal에서 Azure Spring Apps 인스턴스로 이동합니다.
- 진단 설정 옵션을 선택한 다음, 진단 설정 추가를 선택합니다.
- 설정 이름을 입력하고 파트너 솔루션으로 보내기를 선택한 다음, Elastic과 로그를 보낼 Elastic 배포를 선택합니다.
- 저장을 선택합니다.
참고 항목
로그가 방출되는 시점과 Elastic 배포에 표시되는 시점 사이에 최대 15분의 간격이 있을 수 있습니다. Azure Spring Apps 인스턴스가 삭제되거나 이동된 경우 작업이 진단 설정 리소스로 계단식으로 진행되지 않습니다. 부모인 Azure Spring Apps 인스턴스에 대해 작업을 수행하기 전에 진단 설정 리소스를 수동으로 삭제해야 합니다. 그렇지 않으면 삭제된 것과 동일한 리소스 ID를 사용하여 새 Azure Spring Apps 인스턴스를 프로비전하거나 Azure Spring Apps 인스턴스를 다시 이동하면 이전 진단 설정 리소스가 계속해서 확장됩니다.
Elastic으로 로그 분석
Azure에서 Elastic을 배포하는 방법에 대해 자세히 알아보려면 Microsoft Azure에서 Elastic을 배포하고 관리하는 방법을 참조하세요.
다음 단계를 사용하여 로그를 분석합니다.
Azure Portal의 Elastic 배포 개요 페이지에서 Kibana를 엽니다.
Kibana의 위쪽 검색 표시줄에 Spring Cloud type:dashboard를 입력합니다.
결과에서 [Logs Azure] Azure Spring Apps 로그 개요를 선택합니다.
기본 제공 Azure Spring Apps 대시보드에서 다음과 같은 쿼리를 사용하여 검색합니다.
azure.springcloudlogs.properties.app_name : "visits-service"
Discover에서 Kibana 쿼리 언어로 로그 분석
애플리케이션 로그는 애플리케이션의 상태, 성능 등에 대해 중요한 정보와 자세한 로그를 제공합니다. 다음 단계를 사용하여 로그를 분석합니다.
Kibana의 위쪽 검색 표시줄에 Discover를 입력한 다음, 결과를 선택합니다.
Discover 앱에서 logs- 인덱스 패턴이 아직 선택되지 않은 경우 선택합니다.
다음 섹션의 쿼리와 같은 쿼리를 사용하면 애플리케이션의 현재 상태와 과거 상태를 이해하는 데 도움이 됩니다.
다양한 쿼리에 대한 자세한 내용은 Kibana 쿼리 언어 가이드를 참조하세요.
Azure Spring Apps의 모든 로그 표시
가장 최근 로그가 먼저 표시되어 시간순으로 정렬된 Azure Spring Apps의 애플리케이션 로그 목록을 검토하려면 검색 상자에서 다음 쿼리를 실행합니다.
azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring"
Azure Spring Apps에서 특정 로그 형식 표시
가장 최근 로그가 먼저 표시되어 시간순으로 정렬된 Azure Spring Apps의 애플리케이션 로그 목록을 검토하려면 검색 상자에서 다음 쿼리를 실행합니다.
azure.springcloudlogs.category : "ApplicationConsole"
오류 또는 예외를 포함하는 로그 항목 표시
오류 또는 예외를 언급하는 정렬되지 않은 로그 항목을 검토하려면 다음 쿼리를 실행합니다.
azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring" and (log.level : "ERROR" or log.level : "EXCEPTION")
Kibana 쿼리 언어를 사용하면 로그에서 인사이트를 얻는 데 도움이 되는 자동 완성 및 제안을 제공하여 쿼리를 구성할 수 있습니다. 쿼리를 사용하여 오류를 찾거나, 쿼리 용어를 수정하여 특정 오류 코드 또는 예외를 찾습니다.
특정 서비스의 로그 항목 표시
특정 서비스에서 생성된 로그 항목을 검토하려면 다음 쿼리를 실행합니다.
azure.springcloudlogs.properties.service_name : "sa-petclinic-service"
경고 또는 오류가 포함된 Config Server 로그 표시
Config Server에서 로그를 검토하려면 다음 쿼리를 실행합니다.
azure.springcloudlogs.properties.type : "ConfigServer" and (log.level : "ERROR" or log.level : "WARN")
서비스 레지스트리 로그 표시
Service Registry에서 로그를 검토하려면 다음 쿼리를 실행합니다.
azure.springcloudlogs.properties.type : "ServiceRegistry"
Elastic을 사용하여 Azure Spring Apps에서 로그 시각화
Kibana를 사용하면 대시보드 및 풍부한 시각화 에코시스템을 사용하여 데이터를 시각화할 수 있습니다. 자세한 내용은 대시보드 및 시각화를 참조하세요.
다음 단계를 사용하면 서비스의 전반적인 상태를 평가할 수 있도록 로그에 다양한 로그 수준을 표시할 수 있습니다.
Discover 왼쪽에 있는 사용 가능한 필드 목록에서 logs- 인덱스 패턴 아래의 검색 상자에서 log.level을 검색합니다.
log.level 필드를 선택합니다. log.level에 대한 부동 정보 패널에서 시각화를 선택합니다.
여기에서 왼쪽 창에서 더 많은 데이터를 추가하도록 선택하거나 데이터를 시각화하는 방법을 여러 제안 중에서 선택할 수 있습니다.