Application Signals - Amazon CloudWatch

Application Signals

CloudWatch Application Signals는 AWS에서 실행되는 애플리케이션 성능을 모니터링하고 개선하는 데 도움이 됩니다. 이 기능은 Amazon EC2, Amazon ECS, Lambda 같은 서비스에서 실행되는 애플리케이션에서 데이터를 자동으로 수집합니다. CloudWatch Application Signals는 다음과 같은 작업에 사용할 수 있습니다.

  • 애플리케이션 상태를 실시간으로 모니터링

  • 비즈니스 목표를 기준으로 대조하여 성능 추적

  • 서비스와 종속성 간의 관계 보기

  • 성능 문제를 빠르게 식별하고 해결

  • Application Signals를 활성화하여 애플리케이션에서 지표와 트레이스를 자동으로 수집하고 호출 볼륨, 가용성, 지연 시간, 장애 및 오류와 같은 주요 지표를 표시합니다. 사용자 지정 코드를 작성하거나 대시보드를 만들지 않고도 현재 운영 상태를 빠르게 확인하고 분류하고 애플리케이션이 장기 성능 목표를 달성하고 있는지 여부를 확인합니다.

  • Application Signals를 사용하여 서비스 수준 목표(SLO)를 생성하고 모니터링합니다. Application Signals가 수집하는 새로운 표준 애플리케이션 지표를 포함하여 CloudWatch 지표와 관련된 SLO 상태를 쉽게 생성하고 추적합니다. 서비스 목록 및 토폴로지 맵 내에서 애플리케이션 서비스의 서비스 수준 지표(SLI) 상태를 확인하고 추적할 수 있습니다. 경보를 생성하여 SLO를 추적하고 Application Signals가 수집하는 새로운 표준 애플리케이션 지표를 추적합니다.

  • Application Signals가 자동으로 검색하는 애플리케이션 토폴로지 맵을 봅니다. 이를 통해 애플리케이션, 종속성 및 연결성을 시각적으로 확인할 수 있습니다.

  • Application Signals는 CloudWatch RUM, CloudWatch Synthetics canary, AWS Service Catalog AppRegistry 및 Amazon EC2 Auto Scaling 등과 함께 작동하여 대시보드 및 맵 내에 클라이언트 페이지, Synthetics canary 및 애플리케이션 이름을 표시합니다.

지원되는 언어 및 아키텍처

Application Signals는 Java, Python, Node.js, .NET 애플리케이션을 지원합니다.

Application Signals는 Amazon EKS, Amazon ECS 및 Amazon EC2에서 지원 및 테스트됩니다. Amazon EKS 클러스터에서는 서비스 및 클러스터의 이름을 자동으로 검색합니다. 다른 아키텍처에서는 Application Signals에 대해 해당 서비스를 활성화할 때 서비스 및 환경의 이름을 제공해야 합니다.

Amazon EC2에서 Application Signals를 활성화하는 지침은 CloudWatch 에이전트와 AWS Distro for OpenTelemetry를 지원하는 모든 아키텍처에서 유효해야 합니다. 그러나 Amazon ECS 및 Amazon EC2 이외의 아키텍처에서는 이 지침을 테스트하지 않았습니다.

지원되는 리전:

Application Signals는 캐나다 서부(캘거리)를 제외한 모든 상용 리전에서 지원됩니다.

특성

  • Application Signals를 일일 애플리케이션 모니터링에 사용용 - CloudWatch 콘솔 내에서 Application Signals를 일일 애플리케이션 모니터링의 일부로 사용합니다.

    1. 서비스에 대한 서비스 수준 목표(SLO)를 생성한 경우 서비스 수준 목표(SLO) 페이지부터 시작합니다. 이를 통해 가장 중요한 서비스, 작업, 종속성의 상태를 즉시 확인할 수 있습니다. SLO의 서비스, 작업, 종속성 이름을 선택하여 서비스 세부 정보 페이지를 열고 문제를 해결하는 동안 자세한 서비스 정보를 확인합니다.

    2. 서비스 페이지를 열어 모든 서비스의 요약을 확인하고 장애 발생률이 가장 높거나 지연 시간이 가장 긴 서비스를 빠르게 확인합니다. SLO를 생성한 경우 서비스 테이블을 보고 비정상 서비스 수준 지표(SLI)가 있는 서비스를 확인합니다. 특정 서비스가 비정상 상태인 경우 서비스를 선택하여 서비스 세부 정보 페이지를 열고 서비스 작업, 종속성, Synthetics canary 및 클라이언트 요청을 확인합니다. 그래프에서 지점을 선택하면 상관관계가 있는 트레이스를 확인할 수 있으므로 문제를 해결하고 운영 문제의 근본 원인을 식별할 수 있습니다.

    3. 새 서비스가 배포되었거나 종속성이 변경된 경우 애플리케이션 맵을 열어 애플리케이션 토폴로지를 검사합니다. 클라이언트, Synthetics canary, 서비스 및 종속성 간의 관계를 보여주는 애플리케이션 맵을 봅니다. SLI 상태를 빠르게 확인하고, 호출 볼륨, 장애 발생률, 지연 시간과 같은 주요 지표를 확인하고, 서비스 세부 정보 페이지에서 자세한 정보를 자세히 확인합니다.

    Application Signals를 사용하면 요금이 부과됩니다. CloudWatch 요금에 대한 내용은 Amazon CloudWatch 요금을 참조하세요.

    참고

    CloudWatch Synthetics 또는 CloudWatch RUM을 사용하기 위해 Application Signals를 활성화할 필요는 없습니다. 그러나 Synthetics와 CloudWatch RUM은 Application Signals와 함께 작동하여 이러한 기능을 함께 사용할 경우 이점을 제공합니다.

  • Application Signals 교차 계정 - Application Signals 교차 계정 관찰성을 사용하면 단일 리전 내의 여러 AWS 계정에 걸쳐 있는 애플리케이션을 모니터하고 문제를 해결할 수 있습니다.

    Amazon CloudWatch Observability Access Manager를 사용하여 하나 이상의 AWS 계정을 모니터링 계정으로 설정할 수 있습니다. 모니터링 계정에 싱크를 생성하여 소스 계정의 데이터를 볼 수 있는 기능을 모니터링 계정에 제공합니다. 싱크를 사용하여 소스 계정에서 모니터링 계정으로의 링크를 만듭니다. 자세한 내용은 CloudWatch 크로스 계정 관찰성 섹션을 참조하세요.

    Application Signals 교차 계정 관찰성의 적절한 작동을 위해 CloudWatch Observability Access Manager를 통해 다음 원격 측정 유형이 공유되는지 확인합니다.

    • Application Signals 서비스 및 서비스 수준 목표(SLO)

    • Amazon CloudWatch의 지표

    • Amazon CloudWatch Logs의 로그 그룹

    • AWS X-Ray의 추적

  • 동적 서비스 그룹화 및 필터링 - Application Signals의 동적 그룹화 기능을 사용하여 서비스를 그룹화하고 필터링합니다. 그룹 내에서 서비스의 지표와 SLI를 자동으로 집계하므로, 그룹 보기에서 시작할 수 있고 특정 문제가 있는 영역을 자세히 살펴볼 수 있습니다. Application Signals에서는 2가지 기본 그룹화를 제공합니다. 첫 번째는 서비스 환경별로 구성되는 '환경' 그룹화이고, 두 번째는 종속성을 기반으로 서비스를 그룹화하는 '관련 서비스'입니다. 예를 들어 관련 서비스 그룹화에서 서비스 A가 서비스 C를 직접 호출하는 서비스 B를 직접 호출할 경우, 해당 서비스는 서비스 A 아래에 그룹화됩니다. 기본 그룹화 외에도, 사업부 또는 팀 같은 조직의 요구 사항에 맞는 서비스를 선택하여 사용자 지정 그룹을 생성할 수 있습니다.

    팀 구조, 비즈니스 분야 또는 운영 요구 사항에 맞는 AWS 태그 또는 OpenTelemetry 속성을 사용하여 사용자 지정 그룹화를 생성하세요. 사용자 지정 그룹화를 사용하면 구체적인 모니터링 및 문제 해결 워크플로에 따라 서비스를 구성할 수 있습니다. 자세한 내용은 사용자 지정 그룹 구성 섹션을 참조하세요.

    관련 서비스별 그룹화를 사용한 CloudWatch 애플리케이션 맵.
    필터링을 사용한 CloudWatch 서비스 목록 페이지.
  • 변경 이벤트 - Application Signals의 CloudTrail 이벤트 자동 처리를 통해 애플리케이션 전체에서 변경 이벤트를 추적할 수 있습니다. 서비스 및 해당 서비스의 종속성에 대한 구성 이벤트와 배포 이벤트를 모니터링하면 운영 분석 및 문제 해결을 위한 즉각적인 컨텍스트가 제공됩니다. 변경 이벤트 감지 기능은 CloudWatch 콘솔 또는 StartDiscovery API를 통한 서비스 검색 활성화와 함께 활성화됩니다. Amazon EKS 서비스의 경우 배포 감지를 사용하려면 Amazon EKS 서비스를 Application Signals 계측 SDK로 계측해야 합니다.

    변경 이벤트는 다음과 같은 리소스에 대해 지원됩니다.

    • Autoscaling 그룹

    • EKS 클러스터

    • EKS 워크로드(배포만 해당)

    • ECS 클러스터 및 서비스

    • ELB 로드 밸런서 및 대상 그룹

    • Lambda 함수

    • BedrockAgentCore 런타임 및 RuntimeEndpoint

    그룹 드로어에서 배포 필터링 및 변경 이벤트를 사용한 CloudWatch 애플리케이션 맵.
    변경 이벤트 테이블이 표시된 CloudWatch 애플리케이션 개요.
  • 자동 감사의 조사 결과 - Application Signals에 포함된 자동 감사의 조사 결과를 통해 중요한 인사이트를 발견할 수 있습니다. 이 서비스는 애플리케이션을 분석하여 중요한 관찰 결과 및 잠재적 문제를 보고하므로, 근본 원인 분석을 간소화합니다. 이러한 자동화된 조사 결과는 관련 트레이스를 통합하기 때문에 여러 번 클릭하여 탐색하지 않아도 됩니다. 감사 시스템은 작업 팀이 문제와 근본 원인을 빠르게 식별하도록 지원하므로 문제 해결 속도를 단축할 수 있습니다.

    Application Signals에서는 고급 분석을 사용하여 패턴을 감지하고, 리소스 비효율성을 강조 표시하며, 최적화 기회를 제안합니다. 조사 결과는 심각도 및 잠재적인 비즈니스 영향에 따라 우선 순위가 지정되므로 작업 팀은 가장 중요한 문제에 먼저 집중할 수 있습니다. 수동 분석을 하지 않아도 서비스 신뢰성과 성능을 개선하는 데 필요한 실행 가능한 권장 사항을 도출할 수 있습니다.

    감사의 조사 결과가 표시된 CloudWatch 서비스 개요.