CloudWatch 에이전트가 수집하는 지표
서버에 CloudWatch 에이전트를 설치하면 서버에서 지표를 수집할 수 있습니다. Amazon EC2 인스턴스와 온프레미스 서버 모두에 에이전트를 설치할 수 있습니다. Linux, Windows Server 또는 macOS를 실행하는 컴퓨터에 에이전트를 설치할 수도 있습니다. Amazon EC2 인스턴스에 에이전트를 설치하는 경우 에이전트가 수집하는 지표는 Amazon EC2 인스턴스에서 기본적으로 사용 설정된 지표에 추가됩니다. 인스턴스에 CloudWatch 에이전트를 설치하는 방법에 대한 자세한 내용은 CloudWatch 에이전트를 사용하여 지표, 로그, 추적 수집 단원을 참조하세요. 이 섹션을 사용하여 CloudWatch 에이전트가 수집하는 지표에 대해 알아볼 수 있습니다.
Windows Server 인스턴스의 CloudWatch 에이전트가 수집하는 지표
Windows Server를 실행하는 서버에 CloudWatch 에이전트를 설치하면 Windows 성능 모니터의 카운터와 연결된 지표를 수집할 수 있습니다. 이러한 카운터의 CloudWatch 지표 이름은 객체 이름과 카운터 이름 사이에 공백을 넣어 생성됩니다. 예를 들어 Processor
객체의 % Interrupt Time
카운터는 CloudWatch에서 Processor % Interrupt Time
이라는 지표 이름이 부여됩니다. Windows 성능 모니터 카운터에 대한 자세한 내용은 Microsoft Windows 서버 설명서를 참조하세요.
CloudWatch 에이전트가 수집하는 지표의 기본 네임스페이스는 CWAgent
이지만, 에이전트를 구성할 때 다른 네임스페이스를 지정할 수 있습니다.
Linux 및 macOS 인스턴스의 CloudWatch 에이전트가 수집하는 지표
다음 표에는 Linux 서버 및 macOS 컴퓨터에서 CloudWatch 에이전트를 사용하여 수집할 수 있는 지표가 나와 있습니다.
지표 | 설명 |
---|---|
|
어떠한 용량에서든 CPU가 활성화되어 있는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 게스트 운영 체제에 대해 가상 CPU를 실행하는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 우선 순위가 낮으며, 다른 프로세스에 의해 중단될 수 있는 게스트 운영 체제에 대해 가상 CPU를 실행하는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 유휴 상태인 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 I/O 작업이 완료될 때까지 기다리는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 인터럽트를 제공하는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
우선 순위가 높은 프로세스에 의해 쉽게 중단될 수 있는 우선 순위가 낮은 프로세스가 있는 사용자 모드에 CPU가 있는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 소프트웨어 인터럽트를 제공하는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 도용 시간에 있는 시간입니다. 도용 시간은 가상화 환경에서 다른 운영 체제에서 사용된 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 시스템 모드에 있는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
CPU가 사용자 모드에 있는 시간입니다. 이 지표는 수백 초 단위로 측정됩니다. 단위: 없음 |
|
어떠한 용량에서든 CPU가 활성화되어 있는 시간(백분율)입니다. 단위: 백분율 |
|
CPU가 게스트 운영 체제에 대해 가상 CPU를 실행하는 시간 비율입니다. 단위: 백분율 |
|
CPU가 우선 순위가 낮으며, 다른 프로세스에 의해 중단될 수 있는 게스트 운영 체제에 대해 가상 CPU를 실행하는 시간 비율입니다. 단위: 백분율 |
|
CPU가 유휴 상태인 시간 비율 단위: 백분율 |
|
CPU가 I/O 작업이 완료될 때까지 기다리는 시간 비율입니다. 단위: 백분율 |
|
CPU가 인터럽트를 제공하는 시간 비율입니다. 단위: 백분율 |
|
우선 순위가 높은 프로세스에 의해 쉽게 중단될 수 있는 우선 순위가 낮은 프로세스가 있는 사용자 모드에 CPU가 있는 시간 비율입니다. 단위: 백분율 |
|
CPU가 소프트웨어 인터럽트를 제공하는 시간 비율입니다. 단위: 백분율 |
|
CPU가 도용 시간에 있는 시간 또는 가상화 환경에서 다른 운영 체제에서 사용된 시간의 비율입니다. 단위: 백분율 |
|
CPU가 시스템 모드에 있는 시간 비율입니다. 단위: 백분율 |
|
CPU가 사용자 모드에 있는 시간 비율입니다. 단위: 백분율 |
|
디스크의 사용 가능한 공간입니다. 단위: 바이트 |
|
디스크에서 사용 가능한 인덱스 노드 수입니다. 단위: 수 |
|
디스크에서 예약되어 있는 총 인덱스 노드 수입니다. 단위: 수 |
|
디스크에서 사용된 인덱스 노드 수입니다. 단위: 수 |
|
사용된 공간이나 사용 가능한 공간을 포함한 디스크의 총 공간입니다. 단위: 바이트 |
|
디스크의 사용된 공간입니다. 단위: 바이트 |
|
사용된 총 디스크 공간 비율입니다. 단위: 백분율 |
|
디바이스 드라이버에 발행되었지만 아직 완료되지는 않은 I/O 요청 수입니다. 단위: 수 |
|
디스크가 I/O 요청이 대기하도록 한 시간입니다. 단위: 밀리초 이 지표에는 |
|
디스크 읽기 작업 수입니다. 단위: 수 이 지표에는 |
|
디스크에서 읽어온 바이트 수입니다. 단위: 바이트 이 지표에는 |
|
읽기 요청이 디스크에서 대기하고 있는 시간입니다. 동시에 여러 개의 읽기 요청이 대기하게 되면 숫자가 증가합니다. 예를 들어, 5개의 요청 모두가 평균 100밀리초 동안 대기하는 경우 500이 보고됩니다. 단위: 밀리초 이 지표에는 |
|
디스크 쓰기 작업 수입니다. 단위: 수 이 지표에는 |
|
디스크에 기록한 바이트 수입니다. 단위: 바이트 이 지표에는 |
|
쓰기 요청이 디스크에서 대기하고 있는 시간입니다. 동시에 여러 개의 쓰기 요청이 대기하게 되면 숫자가 증가합니다. 예를 들어, 8개의 요청 모두가 평균 1000밀리초 동안 대기하는 경우 8000이 보고됩니다. 단위: 밀리초 이 지표에는 |
|
인바운드 집계 대역폭이 인스턴스의 최댓값을 초과하여 대기열에 있거나 삭제된 패킷 수입니다. 이 지표는 CloudWatch 에이전트 구성 파일의 단위: 없음 |
|
아웃바운드 집계 대역폭이 인스턴스의 최댓값을 초과하여 대기열에 있거나 삭제된 패킷 수입니다. 이 지표는 CloudWatch 에이전트 구성 파일의 단위: 없음 |
|
연결 추적에서 인스턴스의 최대값이 초과되어 새 연결을 설정하지 못했기 때문에 손실된 패킷 수입니다. 이로 인해 인스턴스의 수신 또는 송신 트래픽에 대한 패킷 손실이 발생할 수 있습니다. 이 지표는 CloudWatch 에이전트 구성 파일의 단위: 없음 |
|
로컬 프록시 서비스에 대한 트래픽의 PPS가 네트워크 인터페이스의 최대값을 초과하여 손실된 패킷 수입니다. 이는 DNS 서비스, Instance Metadata Service 및 Amazon Time Sync Service에 대한 트래픽에 영향을 미칩니다. 이 지표는 CloudWatch 에이전트 구성 파일의 단위: 없음 |
|
양방향 PPS가 인스턴스의 최댓값을 초과하여 대기열에 있거나 삭제된 패킷 수입니다. 이 지표는 CloudWatch 에이전트 구성 파일의 단위: 없음 |
|
마지막 샘플 기간 동안 몇 가지 방식으로 사용된 메모리 양입니다. 단위: 바이트 |
|
사용 가능하며 즉시 프로세스에 제공할 수 있는 메모리 양입니다. 단위: 바이트 |
|
사용 가능하며 즉시 프로세스에 제공할 수 있는 메모리 비율입니다. 단위: 백분율 |
|
버퍼에 사용되고 있는 메모리 양입니다. 단위: 바이트 |
|
파일 캐시에 사용되고 있는 메모리 양입니다. 단위: 바이트 |
|
사용되지 않는 메모리 양입니다. 단위: 바이트 |
|
마지막 샘플 기간 동안 몇 가지 방식으로 사용되지 않은 메모리 양입니다. 단위: 바이트 |
|
총 메모리 크기 단위: 바이트 |
|
현재 사용 중인 메모리 양입니다. 단위: 바이트 |
|
현재 사용 중인 메모리 비율입니다. 단위: 백분율 |
|
네트워크 인터페이스에서 받은 바이트 수입니다. 단위: 바이트 이 지표에는 |
|
네트워크 인터페이스가 보낸 바이트 수입니다. 단위: 바이트 이 지표에는 |
|
이 네트워크 인터페이스에서 받았지만 삭제된 패킷 수입니다. 단위: 수 이 지표에는 |
|
이 네트워크 인터페이스가 전송했지만 삭제된 패킷 수입니다. 단위: 수 이 지표에는 |
|
이 네트워크 인터페이스가 탐지한 수신 오류 수입니다. 단위: 수 이 지표에는 |
|
이 네트워크 인터페이스가 탐지한 전송 오류 수입니다. 단위: 수 이 지표에는 |
|
이 네트워크 인터페이스가 보낸 패킷 수입니다. 단위: 수 이 지표에는 |
|
이 네트워크 인터페이스에서 받은 패킷 수입니다. 단위: 수 이 지표에는 |
|
상태가 없는 TCP 연결 수입니다. 단위: 수 |
|
클라이언트로부터 종료 요청을 기다리고 있는 TCP 연결 수입니다. 단위: 수 |
|
클라이언트로부터 승인과 함께 종료 요청을 기다리고 있는 TCP 연결 수입니다. 단위: 수 |
|
설정된 TCP 연결 수입니다. 단위: 수 |
|
연결 종료 프로세스 중에 단위: 수 |
|
연결 종료 프로세스 중에 단위: 수 |
|
클라이언트가 연결 종료 메시지 승인을 보내길 기다리고 있는 TCP 연결 수입니다. 연결이 종료되기 직전의 마지막 단계입니다. 단위: 수 |
|
현재 연결 요청을 수신하고 있는 TCP 포트 수입니다. 단위: 수 |
|
비활성 클라이언트가 있는 TCP 연결 수입니다. 단위: 수 |
|
연결 요청을 보낸 후 일치하는 연결 요청을 기다리고 있는 TCP 연결 수입니다. 단위: 수 |
|
연결 요청을 보내고 받은 후 연결 요청 승인을 기다리고 있는 TCP 연결 수입니다. 단위: 수 |
|
클라이언트가 연결 종료 요청 승인을 받았는지 확인하기 위해 현재 기다리고 있는 TCP 연결 수입니다. 단위: 수 |
|
현재 UDP 연결 수입니다. 단위: 수 |
|
차단된 프로세스 수입니다. 단위: 수 |
|
"데드(Dead)" 상태인 프로세스 수이며, Linux에서 macOS 컴퓨터에서는 이 지표가 수집되지 않습니다. 단위: 수 |
|
유휴 상태(20초 이상 절전 모드)인 프로세스 수입니다. FreeBSD 인스턴스에서만 사용할 수 있습니다. 단위: 수 |
|
페이징되고 있는 프로세스 수이며, Linux에서 macOS 컴퓨터에서는 이 지표가 수집되지 않습니다. 단위: 수 |
|
실행 중인 프로세스 수이며, 단위: 수 |
|
절전 모드의 프로세스 수이며, 단위: 수 |
|
중지된 프로세스 수이며, 단위: 수 |
|
인스턴스에 있는 총 프로세스 수입니다. 단위: 수 |
|
프로세스를 구성하는 총 스레드 수입니다. 이 지표는 Linux 인스턴스에서만 사용할 수 있습니다. macOS 컴퓨터에서는 이 지표가 수집되지 않습니다. 단위: 수 |
|
페이징되고 있는 프로세스 수이며, FreeBSD 인스턴스에서 단위: 수 |
|
좀비 프로세스 수이며, 단위: 수 |
|
사용되지 않는 스왑 공간 크기입니다. 단위: 바이트 |
|
현재 사용 중인 스왑 공간 크기입니다. 단위: 바이트 |
|
현재 사용 중인 스왑 공간 비율입니다. 단위: 백분율 |
CloudWatch 에이전트가 수집하는 메모리 지표의 정의
CloudWatch 에이전트가 메모리 지표를 수집할 때 소스는 호스트의 메모리 관리 하위 시스템입니다. 예를 들어 Linux 커널은 /proc
에서 OS 유지 관리 데이터를 노출합니다. 메모리의 경우 데이터가 /proc/meminfo
에 들어 있습니다.
운영 체제 및 아키텍처마다 프로세스에서 사용하는 리소스의 계산 방식이 다릅니다. 자세한 내용은 다음 섹션을 참조하십시오.
각 수집 간격 동안 각 인스턴스의 CloudWatch 에이전트는 인스턴스 리소스를 수집하고 인스턴스에서 실행 중인 모든 프로세스에서 사용 중인 리소스를 계산합니다. 이 정보는 CloudWatch 지표에 다시 보고됩니다. CloudWatch 에이전트 구성 파일에서 수집 간격의 길이를 구성할 수 있습니다. 자세한 내용은 CloudWatch 에이전트 구성 파일: 에이전트 섹션 단원을 참조하십시오.
다음 목록은 CloudWatch 에이전트가 수집하는 메모리 지표가 어떻게 정의되는지 설명합니다.
활성 메모리 - 프로세스에서 사용 중인 메모리입니다. 즉, 현재 실행 중인 앱이 사용하는 메모리입니다.
가용 메모리 - 시스템을 교체하지 않고도 프로세스에 즉시 제공할 수 있는 메모리입니다(가상 메모리라고도 함).
버퍼 메모리 - 서로 다른 속도와 우선 순위로 작동하는 하드웨어 디바이스 또는 프로그램 프로세스가 공유하는 데이터 영역입니다.
캐시된 메모리 - 프로그램 작동에 반복적으로 사용되는 프로그램 명령어와 데이터를 저장하여 CPU가 다음에 필요로 할 가능성이 큽니다.
여유 메모리 - 전혀 사용되지 않았으며 사용할 수 있는 메모리입니다. 필요할 때 시스템에서 완전히 무료로 사용할 수 있습니다.
비활성 메모리 - ‘최근’ 액세스한 적이 없는 페이지입니다.
총 메모리 - 실제 물리적 메모리 RAM의 크기입니다.
사용된 메모리 - 프로그램과 프로세스에서 현재 사용 중인 메모리입니다.
Linux: 수집된 지표 및 사용된 계산
수집된 지표 및 단위:
활성(바이트)
사용 가능(바이트)
가용 퍼센트(퍼센트)
버퍼링됨(바이트)
캐시됨(바이트)
여유(바이트)
비활성(바이트)
총(바이트)
사용됨(바이트)
사용된 퍼센트(퍼센트)
사용된 메모리 = 총 메모리 - 여유 메모리 - 캐시된 메모리 - 버퍼 메모리
총 메모리 = 사용 메모리 + 여유 메모리 + 캐시 메모리 + 버퍼 메모리
macOS: 수집된 지표 및 사용된 계산
수집된 지표 및 단위:
활성(바이트)
사용 가능(바이트)
가용 퍼센트(퍼센트)
여유(바이트)
비활성(바이트)
총(바이트)
사용됨(바이트)
사용된 퍼센트(퍼센트)
사용 가능한 메모리 = 여유 메모리 + 비활성 메모리
사용된 메모리 = 총 메모리 - 사용 가능한 메모리
사용된 메모리 = 사용 가능한 메모리 + 사용된 메모리
Windows: 수집된 지표
Windows 호스트에서 수집된 지표는 다음과 같습니다. 이러한 모든 지표는 Unit
에 대해 None
입니다.
사용 가능(바이트)
캐시 장애/초
페이지 장애/초
페이지/초
CloudWatch 에이전트는 성능 카운터에서 이벤트를 구문 분석하기 때문에 Windows 지표에는 계산이 사용되지 않습니다.
예: Linux에서 메모리 지표 계산
예를 들어 Linux 호스트에서 cat /proc/meminfo
명령을 입력하면 다음과 같은 결과가 표시된다고 가정해 보겠습니다.
MemTotal: 3824388 kB MemFree: 462704 kB MemAvailable: 2157328 kB Buffers: 126268 kB Cached: 1560520 kB SReclaimable: 289080 kB>
이 예에서는 CloudWatch 에이전트가 다음 값을 수집합니다. CloudWatch 에이전트가 수집하고 보고하는 모든 값은 바이트 단위입니다.
mem_total
: 3916173312바이트mem_available
: 2209103872바이트(MemFree + Cached)mem_free
: 473808896바이트mem_cached
: 1893990400바이트(cached
+SReclaimable
mem_used
: 1419075584바이트(MemTotal
– (MemFree
+Buffers
+ (Cached
+SReclaimable
)))mem_buffered
: 129667072바이트mem_available_percent
: 56.41%mem_used_percent
: 36.24% (mem_used
/mem_total
) * 100