로그 기반 측정항목 개요

로그 기반 측정항목은 로그 항목 콘텐츠에 기반한 Stackdriver Monitoring 측정항목입니다. 예를 들어 이 측정항목은 특정 메시지를 포함하는 로그 항목의 개수를 기록하거나 로그 항목에 기록된 지연 시간 정보를 추출할 수 있습니다. Stackdriver Monitoring 차트와 알림 정책에서 로그 기반 측정항목을 사용할 수 있습니다.

시스템(로그 기반) 측정항목은 Stackdriver Logging에 의해 미리 정의됩니다. 이 측정항목은 특정 기간에 발생하는 로깅 이벤트의 개수를 기록합니다.

사용자 정의(로그 기반) 측정항목은 프로젝트의 사용자에 의해 생성됩니다. 이 측정항목은 지정된 필터와 일치하는 로그 항목 수를 세거나 일치하는 로그 항목에 있는 특정 값을 추적합니다.

Stackdriver Logging은 일치하는 로그 항목이 수신될 때마다 로그 기반 측정항목에 관한 정보를 축적합니다. Stackdriver Logging은 정기적으로 측정항목의 시계열에 분당 데이터 포인트 1개의 속도로 새로운 데이터 포인트를 기록하여 이 데이터를 Stackdriver Monitoring에 제공합니다.

로그 기반 측정항목의 데이터는 측정항목이 생성된 후에 수신되는 로그 항목에서 가져옵니다. 이 측정항목은 이미 Stackdriver Logging에 존재하는 로그 항목의 데이터로 채워지지 않습니다.

시작하기

  1. GCP Console에서 Stackdriver Logging > 로그 기반 측정항목 페이지로 이동합니다.

    로그 기반 측정항목 페이지로 이동

  2. 페이지 상단에서 기존 GCP 프로젝트를 선택합니다. GCP 프로젝트의 로그 기반 측정항목 목록이 표시됩니다.

로그 기반 측정항목 UI

로그 기반 측정항목 인터페이스

로그 기반 측정항목 인터페이스는 시스템 측정항목사용자 정의 측정항목의 두 가지 측정항목 유형 영역으로 구분됩니다.

두 영역 모두 측정항목을 표로 요약하여 보여줍니다. 표의 각 행에서 오른쪽 맨 끝에 더보기 메뉴가 있으며 다음과 같은 옵션이 제공됩니다.

로그 기반 측정항목 UI

  • 측정항목 탐색기에서 보기를 사용하면 Stackdriver Monitoring 측정항목 탐색기를 열어 시스템 로그 기반 측정항목의 데이터를 볼 수 있습니다.

    측정항목 탐색기를 사용하여 알림 정책의 대상 측정항목을 지정할 수 있습니다. 대상 영역 옆의 차트는 대상 측정항목에서 캡처하는 데이터에 대한 시각적 피드백을 제공합니다.

  • 측정항목에서 알림 생성을 사용하면 로그 기반 측정항목에 기초하여 알림 정책을 만들 수 있습니다. 이 옵션은 카운터 측정항목의 경우에만 사용할 수 있습니다.

    이 옵션을 선택하면 Stackdriver Monitoring 콘솔이 열리며 여기서 알림 정책을 만들고 수정하고 관리할 수 있습니다. 자세한 내용은 알림 정책 만들기를 참조하세요.

사용자 정의 측정항목 인터페이스

로그 기반 측정항목 페이지의 사용자 정의 측정항목 영역은 프로젝트에서 사용자 정의 측정항목을 관리하는 데 유용한 몇 가지 추가 기능을 제공합니다.

  • 사용자 정의 측정항목 표에는 이름, 설명, 유형, 필터 열이 있습니다. 이러한 열은 측정항목이 생성될 때 지정됩니다.

  • 사용자 정의 측정항목 표 위의 필터 측정항목 상자에서는 텍스트 검색 또는 측정항목 이름, 설명, 필터를 통해 측정항목 목록을 필터링할 수 있습니다.

로그 기반 측정항목 UI

  • 사용자 정의 측정항목 표에는 지난달 사용량사용량(이번 달 누적) 열이 있습니다. 이러한 사용량 측정항목은 가장 많은 데이터를 내부 데이터화하는 측정항목을 확인하거나 청구액을 예상하려는 경우 등에 유용한 기능입니다.

  • 표 행의 끝에 있는 더보기 메뉴를 사용하여 측정항목 수정측정항목 삭제를 수행할 수 있습니다.

또한 열 이름을 클릭하면 오름차순 또는 내림차순으로 데이터를 정렬할 수 있고, 테이블 맨 아래에서 표시하려는 행 개수를 선택할 수도 있습니다.

GCP Console을 사용한 맞춤 설정 측정항목 관리에 대한 자세한 내용은 카운터 측정항목 만들기분포 측정항목 만들기를 참조하세요.

로그 기반 측정항목 유형 개요

Stackdriver Logging 로그 기반 측정항목은 두 가지 측정항목 유형, 즉 카운터 측정항목과 분포 측정항목 유형 중 하나입니다. 모든 시스템 로그 기반 측정항목은 카운터 유형입니다. 사용자 정의 로그 기반 측정항목은 카운터 유형일 수도 있고 분포 유형일 수도 있습니다.

로그 기반 측정항목의 시계열에 있는 각 데이터 포인트는 이전 데이터 포인트 이후로 수신된 추가 정보(델타)만 나타냅니다.

다음 섹션에서는 카운터 유형 및 분포 유형 측정항목의 특징을 설명합니다.

카운터 측정항목

카운터 측정항목고급 로그 필터와 일치하는 로그 항목 개수를 셉니다. 예를 들어 다음을 수행할 수 있습니다.

  • 특정 오류 메시지를 포함하는 로그 항목을 계수하는 측정항목을 만듭니다.
  • 다음과 같은 로그 메시지를 찾아서 각 사용자가 작업을 호출하는 횟수를 계수합니다.

    ... user [USERNAME] called  [OPERATION] ...
    

    [USERNAME] 및 [OPERATION]을 추출하고 2개 라벨 값에 사용하여 나중에 'sallyUPDATE 작업을 몇 번 호출했나요?'', '몇 명이 READ 작업을 호출했나요?', 'george가 작업을 몇 번 호출했나요?' 등과 같이 물을 수 있습니다.

자세한 내용은 카운터 측정항목 만들기를 참조하세요.

분산 측정항목

분산 측정항목은 특정 필터와 일치하는 로그 항목의 숫자 데이터를 누적합니다. 이 측정항목은 분산 객체의 시계열을 포함하며, 각각 다음을 포함합니다.

  • 분산에 있는 값의 수.
  • 여러 값의 평균
  • 편차 제곱 합계: 합계i=1..n(xi–평균)2
  • 각 버킷 값의 수가 기록된 히스토그램 버킷 집합. 기본 버킷 레이아웃을 사용하거나 직접 선택할 수 있습니다.

분산 측정항목의 일반적인 용도는 지연 시간을 추적하는 것입니다. 각 로그 항목이 수신될 때 로그 항목의 특정 위치에서 지연 시간 값이 추출되어 분산에 추가됩니다. 누적된 분산이 일정한 간격으로 Stackdriver Monitoring에 기록됩니다.

자세한 내용은 분포 측정항목 만들기를 참조하세요.

라벨

필요에 따라 한 측정항목이 여러 시계열을 보유하게 해주는 라벨을 로그 기반 측정항목에 지정할 수 있습니다. 이 라벨의 값은 일치하는 로그 항목의 필드에서 추출됩니다. Stackdriver Logging은 라벨의 각 값마다 별도의 시계열을 기록합니다.

시스템 로그 기반 측정항목에는 라벨이 미리 정의되어 있습니다. 사용자 정의 측정항목에 사용자의 고유한 라벨을 정의할 수 있습니다. 자세한 내용은 로그 기반 측정항목 라벨을 참조하세요.

시스템 로그 기반 측정항목

Stackdriver Logging은 수신되는 로그 항목의 수와 양을 추적하는 사전 정의된 카운터 측정항목 몇 가지를 제공합니다. 이 측정항목에는 로그 이름과 심각도 수준별로 개수를 기록하는 라벨이 있습니다. 아래는 측정항목을 나열한 표입니다.

측정항목의 이름과 설명 유형 라벨
logging.googleapis.com/log_entry_count

수신된 로그 항목의 총 개수입니다.

delta int64 log: 로그의 이름입니다. 예: "appengine.googleapis.com/request_log".

severity: 로그 항목의 심각도입니다. 예: "ERROR".

logging.googleapis.com/byte_count

로그 항목에서 수신한 총 크기(바이트)입니다.

delta int64 log: 로그의 이름입니다. 예: "appengine.googleapis.com/request_log".
logging.googleapis.com/excluded_log_entry_count

제외된 로그 항목의 총 개수입니다.

delta int64
logging.googleapis.com/excluded_byte_count

제외된 로그 항목의 총 바이트 수입니다.

delta int64
logging.googleapis.com/exports/log_entry_count

싱크를 사용하여 내보낸 로그 항목의 총 개수입니다.

delta int64
logging.googleapis.com/exports/byte_count

싱크를 사용하여 내보낸 로그 항목의 총 바이트 수입니다.

delta int64
logging.googleapis.com/exports/error_count

내보내기 오류로 인해 내보내지 않은 로그 항목의 총 개수입니다.

delta int64
logging.googleapis.com/logs_based_metrics_error_count

늦게 도착하는 로그 항목 개수입니다.1

delta int64 log: 로그의 이름입니다. 예: "appengine.googleapis.com/request_log".

1 늦게 도착하는 로그 항목은 log_entry_count 또는 byte_count 측정항목에 포함되지 않습니다.

시스템 로그 기반 측정항목의 전체 목록은 로깅 측정항목을 참조하세요.

Stackdriver Monitoring

Stackdriver Monitoring에서 시스템 로그 기반 측정항목과 사용자 정의 로그 기반 측정항목을 모두 사용하여 차트와 알림 정책을 만들 수 있습니다. 사용자 정의 로그 기반 측정항목 이름은 앞에 user/가 붙고 시스템 로그 기반 측정항목은 그렇지 않습니다.

Stackdriver Monitoring API를 사용할 경우 로그 기반 측정항목 이름은 아래와 같습니다.

logging.googleapis.com/user/[USER_METRIC_NAME]
logging.googleapis.com/[SYSTEM_METRIC_NAME]

자세한 내용은 차트 및 알림 만들기를 참조하세요.

문제해결

측정항목에 로그 데이터가 없음

로그 기반 측정항목에 데이터가 누락되는 이유로는 다음 몇 가지가 있습니다.

  • 새 로그 항목이 측정항목의 로그 필터와 일치하지 않을 수 있습니다. 로그 기반 측정항목은 측정항목이 생성된 후에 수신되는 일치 로그 항목에서 데이터를 가져옵니다. Stackdriver Logging은 이전 로그 항목에서 측정항목을 백필(backfill)하지 않습니다.

  • 새 로그 항목에 올바른 필드가 포함되어 있지 않거나 데이터가 분산 측정항목의 추출에 맞는 적절한 형식으로 되어 있지 않을 수 있습니다. 필드 이름과 정규 표현식이 올바른지 확인하세요.

  • 측정항목 카운트가 지연될 수 있습니다. 로그 뷰어에 계수할 수 있는 로그 항목이 표시되더라도 Stackdriver Monitoring에 로그 기반 측정항목을 업데이트하는 데 최대 1분이 소요됩니다.

  • 표시된 로그 항목의 타임스탬프가 과거나 너무 먼 미래 시점으로 되어 있어서 늦게 계수되거나 아예 계수되지 않을 수 있습니다. 과거 또는 미래의 10분 이상 되는 시점에 수신되는 로그 항목은 로그 기반 측정항목에 계수되지 않습니다.

    늦게 도착하는 항목의 수는 각 로그별로 시스템 로그 기반 측정항목인 logging.googleapis.com/logs_based_metrics_error_count에 기록됩니다.

    : 로그 기반 측정항목과 일치하는 로그 항목이 늦게 도착합니다. timestamp는 2:30 PM이고 receivedTimestamp는 2:45 PM입니다. 이 항목은 로그 기반 측정항목에 계수되지 않습니다.

측정항목에 시계열이 너무 많음

로그 기반 측정항목에 고유한 값이 많이 있는 사용자 정의 라벨이 있을 수 있습니다. 측정항목 내 시계열의 개수는 여러 가지 라벨 값으로 구성된 조합의 개수에 따라 결정됩니다. 라벨 값의 카디널리티가 매우 높은 경우 측정항목이 제한되고 일부 포인트가 측정항목에 기록되지 않을 수 있습니다. 처리해야 하는 시계열의 수가 많아서 측정항목이 차트에 로드되는 속도가 느려질 수 있습니다. 또한 시계열 데이터를 쿼리하는 API 호출 비용이 발생할 수 있습니다. 자세한 내용은 Stackdriver Monitoring 비용을 참조하세요.

카디널리티 측정항목이 많아지는 것을 피하려면 다음 안내를 따르세요.

  • 라벨 필드와 추출기 정규 표현식이 제한된 카디널리티가 있는 값과 일치하는지 확인하세요.

  • 경계가 없이 바뀔 수 있는 긴 텍스트 메시지를 라벨 값으로 추출하지 마세요.

  • 무한한 카디널리티가 있는 숫자 값을 추출하는 일을 삼가세요.

  • 알려진 카디널리티 라벨(예: 일련의 알려진 값이 있는 상태 코드)에서만 값을 추출하세요.

측정항목 이름이 잘못됨

카운터 또는 배포 측정항목을 만들 때 프로젝트의 로그 기반 측정항목 중에서 고유 한 측정항목 이름을 선택하세요.

측정항목 이름 문자열은 100자를 초과할 수 없으며 다음 문자만 포함할 수 있습니다.

  • A-Z
  • a-z
  • 0-9
  • 특수 문자 _-.,+!*',()%\/

    슬래시 문자 /는 측정항목 이름 내 계층구조를 나타내며 이름의 첫 문자로 사용될 수 없습니다.

라벨 값이 잘림

맞춤 설정 라벨 값은 1,024바이트를 초과하면 안 됩니다.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Stackdriver Logging
도움이 필요하시나요? 지원 페이지를 방문하세요.