이 페이지에서는 Redis용 Memorystore에 사용할 수 있는 측정항목을 나열하고 각 측정항목이 측정하는 대상을 설명합니다.
이러한 측정항목을 보는 방법을 알아보려면 인스턴스 모니터링을 참고하세요.
Cloud Monitoring 측정항목
이 섹션에서는 Redis용 Memorystore에 사용할 수 있는 Cloud Monitoring 측정항목을 나열하고 설명합니다.
| 측정항목 이름 | 설명 |
|---|---|
redis.googleapis.com/keyspace/avg_ttl |
이 측정항목은 만료가 설정된 Redis 데이터베이스의 모든 키의 평균 TTL(수명)(밀리초)을 측정합니다. 이 측정항목을 사용하여 캐시된 데이터의 수명 주기를 파악하고 인스턴스 전반에서 키가 예상보다 일찍 또는 늦게 만료되는지 확인할 수 있습니다. |
redis.googleapis.com/clients/blocked |
이 측정항목은 차단 명령어가 인스턴스에서 실행되어 데이터가 제공되기를 기다리는 클라이언트 연결 수를 추적합니다. 차단 명령어에는 이 측정항목을 모니터링하여 애플리케이션의 동작을 파악할 수 있습니다. 특히 차단 작업을 기다리는 클라이언트와 관련이 있을 수 있는 지연 시간이 예상치 않게 증가하는 경우에 유용합니다. |
redis.googleapis.com/replication/master/slaves/lag |
이 측정항목은 복제본이 기본 인스턴스보다 지연되는 시간(초)을 측정합니다. Redis용 Memorystore는 현재 시간에서 복제본이 들어오는 바이트의 메시지 수신을 확인한 시간을 빼서 측정항목 값을 계산합니다. 이 측정항목을 사용하여 복제본이 기본 인스턴스보다 뒤처지는지 확인할 수 있습니다. |
redis.googleapis.com/replication/offset_diff |
이 측정항목은 복제본에 복제되지 않은 바이트 수를 추적합니다. 이 측정항목은 기본 인스턴스의 복제 바이트 오프셋과 복제본의 복제 바이트 오프셋 간의 차이를 나타냅니다. 이러한 오프셋 간에 차이가 없으면 복제본이 기본 인스턴스와 완전히 동기화된 것입니다. 장애 조치 프로세스 중에 기본 인스턴스가 복제본에 데이터를 복제하면 대기 중인 바이트가 증가할 수 있습니다. |
redis.googleapis.com/stats/cache_hit_ratio |
이 측정항목은 성공한 Redis 데이터베이스 호출과 실패한 호출의 비율을 나타냅니다. Redis 데이터베이스가 호출자가 요청한 값을 반환하면 호출이 성공한 것입니다. 캐시 적중률이 높을수록 캐시가 더 완전히 활용됩니다. 이는 애플리케이션 성능에 유용합니다. |
redis.googleapis.com/commands/calls |
이 측정항목은 기본 인스턴스에서 매분 실행되는 Redis 명령어 수를 측정합니다. 여기에는 |
redis.googleapis.com/clients/connected |
이 측정항목은 인스턴스에 연결된 클라이언트 수를 표시합니다. 측정항목을 모니터링하여 인스턴스의 부하를 확인할 수 있습니다.
연결된 클라이언트 수가 maxclients 한도에 가까워지면 서버에서 새 연결 시도를 거부할 수 있습니다. |
redis.googleapis.com/stats/cpu_utilization |
이 측정항목은 Redis 서버가 사용하는 분당 CPU 사용 시간을 측정합니다. 이 시간은 시스템-사용자 공간과 상위-하위 관계로 구분됩니다. CPU 초 값은 Redis 서버의 기본 프로세스에 있는 모든 스레드의 총 CPU 초를 보여줍니다. 기본 스레드의 CPU 사용량만 확인하려면 기본 스레드 CPU 초( CPU 사용률이 높으면 명령 처리 지연이 발생할 수 있으므로 Redis 인스턴스의 지연 시간이 증가하는 일반적인 원인입니다. 이 측정항목을 모니터링하면 여러 클라이언트의 높은 부하가 CPU 사용량을 유도하는지 확인할 수 있습니다. |
redis.googleapis.com/stats/evicted_keys |
이 측정항목은 인스턴스가 이 측정항목을 모니터링하면 인스턴스의 메모리 크기가 워크로드에 충분한지 확인할 수 있습니다. 자주 액세스하는 데이터가 캐시에서 삭제되면 키 삭제가 애플리케이션의 성능에 영향을 미칠 수 있습니다. |
redis.googleapis.com/keyspace/keys_with_expiration |
이 측정항목은 만료가 구성된 인스턴스의 키 수를 추적합니다. 만료가 있는 키가 없으면 측정항목의 차트에 '데이터 없음'이 표시됩니다. |
redis.googleapis.com/keyspace/keys |
이 측정항목은 데이터베이스에 저장된 키의 총 개수를 보여줍니다. 저장된 키가 없으면 측정항목의 차트에 '데이터 없음'이 표시됩니다. |
redis.googleapis.com/stats/cpu_utilization_main_thread |
이 측정항목은 Redis 서버의 기본 스레드가 사용하는 CPU-초를 측정합니다. 이 측정은 시스템-사용자 공간과 상위-하위 관계로 분류됩니다. 이 측정항목을 모니터링하여 기본 스레드에서 발생하는 CPU 사용량 급증을 식별할 수 있습니다. |
redis.googleapis.com/stats/memory/maxmemory |
이 측정항목은 키가 인스턴스에서 사용할 수 있는 최대 메모리 양 (maxmemory)을 나타냅니다. 이 한도에 도달하면 Redis용 Memorystore에서 인스턴스의 키를 삭제합니다. 이 삭제 프로세스는 인스턴스에 구성된 삭제 정책에 따라 발생합니다. |
redis.googleapis.com/stats/memory/usage_ratio |
이 측정항목은 인스턴스의 현재 메모리 사용량을 최대 메모리 한도의 비율로 표시합니다. 측정항목을 모니터링하여 인스턴스가 용량에 얼마나 가까운지 확인할 수 있습니다. 인스턴스의 구성에 따라 이 한도에 도달하면 키 삭제 프로세스가 트리거됩니다. |
redis.googleapis.com/stats/keyspace_misses |
이 측정항목은 기본 사전에서 키 조회에 실패한 횟수를 추적합니다. 클라이언트가 데이터베이스에 없는 키에 액세스하려고 할 때마다 측정항목이 증가합니다. 이 측정항목은 애플리케이션이 캐시를 얼마나 효과적으로 사용하는지 측정하는 캐시 적중률을 계산하는 데 사용됩니다. 키스페이스 누락이 많으면 애플리케이션이 캐시에 없는 데이터를 요청하고 있음을 나타냅니다. 애플리케이션이 더 느린 백엔드 데이터 스토어에서 해당 데이터를 가져와야 하는 경우 지연 시간이 늘어날 수 있습니다. |
redis.googleapis.com/replication/role |
이 측정항목은 복제 그룹에서 노드의 역할을 식별하는 값을 반환합니다. 이 측정항목을 사용하여 노드의 상태를 모니터링할 수 있습니다. 특히 역할이 전환될 수 있는 장애 조치 이벤트 중에 유용합니다. 또한 복제를 통해 고가용성을 지원하는 표준 등급 인스턴스의 상태와 토폴로지를 추적할 수 있습니다. |
redis.googleapis.com/persistence/rdb/bgsave_in_progress |
이 측정항목은 Redis 데이터베이스 (RDB)의 백그라운드 저장 ( 이 측정항목을 사용하여 자동 RDB 스냅샷 또는 수동 내보내기를 추적할 수 있습니다. 또한 측정항목을 모니터링하여 메모리 사용량이나 지연 시간의 일시적인 급증을 진행 중인 지속성 작업과 연관시킬 수 있습니다. |
redis.googleapis.com/stats/pubsub/channels |
이 측정항목은 인스턴스에서 활성 클라이언트 구독이 있는 Pub/Sub 채널의 전체 수를 추적합니다. 이 측정항목은
SUBSCRIBE 또는 PSUBSCRIBE 명령어를 사용하여 클라이언트가 구독한 고유 채널의 총수를 측정합니다. |
redis.googleapis.com/stats/pubsub/patterns |
이 측정항목은 인스턴스에서 활성 클라이언트 구독이 있는 Pub/Sub 패턴의 전체 수를 추적합니다. 이 측정항목은 클라이언트가 구독한 순 패턴의 총수를 측정합니다. 클라이언트는 일반적으로 PSUBSCRIBE 명령어를 사용하여 이러한 구독을 만듭니다. |
redis.googleapis.com/stats/reject_connections_count |
이 측정항목은 인스턴스가 다음과 같은 이유로 거부한 연결 시도 횟수를 추적합니다.
측정항목을 모니터링하면 용량 문제를 파악할 수 있습니다. 거부된 연결 수가 증가하면 더 많은 연결을 처리하도록 인스턴스를 확장하거나 인스턴스의 메모리 용량을 늘려야 할 수 있습니다. 또한 암호화가 적용되면 측정항목을 사용하여 클라이언트 측 연결 문제를 디버그할 수 있습니다. |
redis.googleapis.com/replication/master_repl_offset |
이 측정항목은 기본 인스턴스가 생성하여 복제본으로 전송하는 총 바이트 수를 나타냅니다. 이 오프셋에서 복제본의 복제 바이트 오프셋을 빼면 복제 지연의 크기를 계산할 수 있습니다. 이러한 오프셋 값 간에 차이가 없으면 복제본이 기본 인스턴스와 완전히 동기화된 것입니다. |
redis.googleapis.com/replication/master/slaves/offset |
이 측정항목은 복제본이 기본 인스턴스에서 수신하는 총 바이트 수를 나타냅니다. 이 오프셋을 기본 인스턴스의 복제 바이트 오프셋에서 빼면 복제 지연의 크기를 계산할 수 있습니다. 이러한 오프셋 값 간에 차이가 없으면 복제본이 기본 인스턴스와 완전히 동기화된 것입니다. |
redis.googleapis.com/stats/memory/system_memory_usage_ratio |
이 측정항목은 사용 중인 메모리 양을 시스템에서 사용 가능한 총 메모리의 비율로 나타냅니다. 사용 가능한 총 시스템 메모리는 인스턴스에 프로비저닝한 메모리와 Redis용 Memorystore가 오버헤드 프로세스를 관리하기 위해 제공하는 추가 메모리를 합한 값입니다. |
redis.googleapis.com/stats/memory/system_memory_overload_duration |
이 측정항목은 인스턴스가 시스템 메모리 오버로드 모드에 있는 총 시간 (마이크로초)을 측정합니다. 이 측정항목을 사용하여 인스턴스의 메모리 사용량이 시스템의 안전한 작동 기준을 초과하는 기간을 추적할 수 있습니다. 측정항목의 지속적인 값은 오버헤드 프로세스의 메모리가 부족하여 인스턴스의 성능이 저하되거나 불안정해질 위험이 있음을 나타낼 수 있습니다. |
redis.googleapis.com/commands/usec_per_call |
이 측정항목은 1분 동안 각 Redis 명령어 호출에 소요된 평균 시간을 나타냅니다. 이 시간은 마이크로초 단위로 측정됩니다. 측정항목은 개별 명령어별로 분류됩니다. 이를 통해 이 측정항목을 사용하여 인스턴스 지연 시간을 측정할 수도 있습니다. 여러 지점에서 호출당 시간을 비교하면 성능 변화를 파악하고 지연 시간 불일치의 원인을 조사할 수 있습니다. |
redis.googleapis.com/stats/connections/total |
이 측정항목은 서버에서 수락하는 총 연결 수를 나타냅니다. |
redis.googleapis.com/commands/total_time |
이 측정항목은 지난 1초 동안 각 오픈소스 Redis 명령어(예: SET,
GET,
HSET)에 사용된 총 시간(마이크로초 단위)을 측정합니다. 예를 들어 SET 명령어가 800,000마이크로초를 사용하는 경우 해당 명령어의 모든 인스턴스를 결합하여 처리하는 데 단일 CPU 코어의 80% 가 소요됩니다. |
redis.googleapis.com/stats/network_traffic |
이 측정항목은 Redis로 전송되거나 Redis에서 전송되는 총 바이트 수를 나타냅니다. 이 수에는 명령어의 바이트, 페이로드 데이터, 구분 기호가 포함됩니다. |
redis.googleapis.com/server/uptime |
이 측정항목은 실행 중인 Redis 서버 프로세스의 업타임을 나타냅니다. |
redis.googleapis.com/stats/memory/usage |
이 측정항목은 Redis 서버 프로세스가 할당하는 총 바이트 수를 나타냅니다. |
인스턴스 세부정보 측정항목
Google Cloud 콘솔의 인스턴스 세부정보 페이지에서 인스턴스에 사용할 수 있는 측정항목은 다음과 같습니다.
| 측정항목 이름 | 설명 |
|---|---|
| 복제 대기 중인 바이트 | 이 측정항목은 기본 노드에 기록되었지만 복제본 노드에 복사되지 않은 데이터의 양을 보여줍니다. 기본 인스턴스의 복제 바이트 오프셋과 복제본의 오프셋 간의 차이를 나타냅니다. 측정항목 값이 0이면 복제본이 기본 인스턴스와 완전히 동기화된 것입니다. 값이 높으면 일반적으로 쓰기 활동이 많은 기간이나 데이터가 동기화되는 장애 조치 과정에서 발생합니다. |
| 캐시 적중률 | 이 측정항목은 성공한 Redis 데이터베이스 호출(히트)과 총 호출 수 (히트 + 미스)의 비율을 보여줍니다. 이 측정항목은 애플리케이션이 캐시를 얼마나 효과적으로 사용하는지를 나타냅니다. 캐시 적중률이 높을수록 캐시에서 직접 처리되는 요청이 많아집니다. 이렇게 하면 지연 시간이 줄어 애플리케이션 성능에 도움이 됩니다. 비율이 낮거나 떨어지는 경우 애플리케이션이 캐시에 없는 데이터를 요청하는 경우가 많습니다. 이 경우 인스턴스 크기를 늘리거나 데이터 채우기 로직을 조정해야 할 수 있습니다. |
| 통화 | 이 측정항목은 기본 인스턴스에서 매분 실행되는 Redis 명령어 수를 보여줍니다. 이 측정항목은 이 측정항목을 사용하여 인스턴스의 지연 시간을 측정하고 분석할 수 있습니다. 통화량을 통화에 소요된 시간과 비교하면 성능 변화를 파악하고 지연 시간 급증의 원인을 조사할 수 있습니다. |
| CPU 초 | 이 측정항목은 인스턴스가 특정 기간 동안 사용한 총 CPU 사용 시간 (초)을 보여줍니다. 이 측정항목을 모니터링하면 인스턴스의 CPU 사용량이 높은지 확인할 수 있습니다. 높은 CPU 사용률로 인해 명령어 처리가 지연될 수 있으므로 이는 지연 시간 증가의 빈번한 원인입니다. 또한 이 측정항목을 사용하여 많은 수의 클라이언트에서 발생하는 높은 부하가 CPU 사용량을 유도하는지 확인할 수 있습니다. |
| 인스턴스 업타임 | 이 측정항목은 Redis 서버 프로세스가 연속으로 실행되는 총 시간을 나타냅니다. 장애 조치, 유지보수 또는 예기치 않은 비정상 종료로 인해 인스턴스가 다시 시작되면 측정항목 값이 0으로 떨어지고 새 시작 시간부터 다시 증가합니다. 이 측정항목을 사용하여 예기치 않은 서비스 중단, 장애 조치 이벤트 또는 유지보수 기간을 다른 성능 변경사항과 식별하고 연관시킬 수 있습니다. |
| 데이터베이스의 키 | 이 측정항목은 인스턴스 내 각 Redis 데이터베이스에 저장된 총 키 수를 보여줍니다. 이 측정항목은 키에 만료가 설정되어 있는지와 관계없이 데이터베이스에 있는 모든 키를 추적합니다. 데이터베이스에 저장된 키가 없으면 측정항목의 차트에 0 값이 아닌 '데이터 없음'이 표시됩니다. 측정항목을 모니터링하여 인스턴스가 트래픽을 수신하고 데이터를 저장하는지 확인할 수 있습니다. 측정항목이 갑자기 감소하면 데이터 손실, 대량 삭제 또는 인스턴스 다시 시작을 나타낼 수 있습니다. |
| 메모리 사용량/최대 메모리 | 인스턴스의 최대 메모리 한도와 비교하여 메모리 사용량을 보여주는 차트입니다. |
| 삭제된 키/만료된 키 | 삭제된 키 및 만료된 키의 수를 표시하는 차트입니다. |
| 연결된 클라이언트/차단된 클라이언트 | 연결된 클라이언트 및 차단된 클라이언트의 수를 표시하는 차트입니다. |
| 네트워크 바이트 입력/출력 | 지정된 기간 동안 인스턴스에서 전송 및 수신된 바이트 수를 표시하는 차트입니다. |
RDB 스냅샷 측정항목
다음 측정항목은 Redis용 Memorystore에 대해 RDB 스냅샷을 관리하는 데 도움이 됩니다.
스냅샷 모니터링 측정항목
| 측정항목 이름 | 전체 엔드포인트 URL | 설명 |
|---|---|---|
| 스냅샷 모드 | redis.googleapis.com/rdb/enabled | RDB 스냅샷 모드가 사용 설정되었는지를 나타냅니다. |
| 다음 스냅샷 시간 | redis.googleapis.com/rdb/snapshot/time_until_next_run | 다음 예약된 스냅샷까지의 시간(초)입니다. |
스냅샷 상태 측정항목
| 측정항목 이름 | 전체 엔드포인트 URL | 설명 |
|---|---|---|
| 진행 중인 RDB 스냅샷 | redis.googleapis.com/rdb/snapshot/in_progress | RDB 스냅샷이 진행 중인지를 나타냅니다. 측정항목 값이 true이면 RDB 스냅샷이 진행 중입니다. |
| RDB 스냅샷 경과 시간 | redis.googleapis.com/rdb/snapshot/elapsed_time | 현재 스냅샷을 만드는 동안 경과된 증가 시간을 나타냅니다. |
| RDB 스냅샷 시도 횟수 | redis.googleapis.com/rdb/snapshot/attempt_count | 매분 스냅샷 시도 횟수를 나타냅니다. |
| RDB 스냅샷 마지막 상태 | redis.googleapis.com/rdb/snapshot/last_status | 최근 스냅샷 시도 상태를 나타냅니다. |
| RDB 스냅샷 기간 | redis.googleapis.com/rdb/snapshot/last_success_duration | 실패한 시도를 제외하고 마지막으로 성공한 스냅샷을 기록하는 데 필요한 총 시간을 나타냅니다. |
| RDB 스냅샷 수명 | redis.googleapis.com/rdb/snapshot/last_success_age | 마지막으로 성공한 스냅샷이 시작된 이후 경과된 시간을 나타냅니다. |
스냅샷 복구 측정항목
| 측정항목 이름 | 전체 엔드포인트 URL | 설명 |
|---|---|---|
| RDB 복구 진행 중 | redis.googleapis.com/rdb/recovery/in_progress | RDB 스냅샷에서 복구가 진행 중인지를 나타냅니다. 측정항목 값이 true이면 복구가 진행 중입니다. |
| RDB 복구 경과 시간 | redis.googleapis.com/rdb/recovery/elapsed_time | RDB 스냅샷에서 진행 중인 복구를 위해 경과된 증가 시간을 나타냅니다. |
| RDB 복구 예상 시간 | redis.googleapis.com/rdb/recovery/estimated_recovery_time | 마지막으로 성공한 스냅샷을 복구에 사용할 때 예상되는 복구 시간을 나타냅니다. |
| RDB 복구 남은 시간 | redis.googleapis.com/rdb/recovery/estimated_remaining_time | RDB 스냅샷에서 복구를 완료하기 위해 남은 시간을 나타냅니다. |
| RDB 복구 시도 | redis.googleapis.com/rdb/recovery/attempts_since_last_success | 마지막으로 성공한 복구 시도 이후의 복구 시도 횟수를 나타냅니다. |
| RDB 복구 마지막 상태 | redis.googleapis.com/rdb/recovery/last_status | 최근 복구의 상태를 나타냅니다. |
| RDB 복구 마지막 기간 | redis.googleapis.com/rdb/recovery/last_duration | 마지막 스냅샷을 복구하는 데 걸린 시간을 나타냅니다. |
| RDB 스냅샷 크기 | redis.googleapis.com/rdb/recovery/total_bytes_count | 스냅샷 크기를 나타냅니다. |
| RDB 로드 진행률 | redis.googleapis.com/rdb/recovery/loaded_bytes_count | 복구 중 로드된 바이트 수를 나타냅니다. 복구가 활성 상태가 아니면 0입니다. |