이 주제에서는 Spanner 구성요소를 검사하여 지연 시간의 원인을 찾고 OpenCensus를 사용하여 해당 지연 시간을 시각화하는 방법을 설명합니다. 이 주제의 구성요소에 대한 대략적인 개요는 Spanner 요청의 지연 시간 지점을 참조하세요.
Spanner 클라이언트 라이브러리는 OpenCensus 계측 프레임워크를 사용하여 통계와 trace를 제공합니다. 이 프레임워크는 클라이언트 내부에 대한 유용한 정보를 제공하며 엔드 투 엔드(왕복) 지연 시간 문제를 해결하는 데 도움이 됩니다. 기본적으로 프레임워크는 사용 중지되어 있습니다.
시작하기 전에
지연 시간 지점 식별의 절차에 따라 지연 시간을 표시하는 구성요소를 찾습니다.
클라이언트 왕복 지연 시간 캡처 및 시각화
클라이언트 왕복 지연 시간은 클라이언트가 Google 프런트엔드(GFE) 및 Spanner API 프런트엔드를 통해 데이터베이스로 전송한 Spanner API 요청의 첫 번째 바이트와 클라이언트가 데이터베이스에서 수신한 응답의 마지막 바이트 사이의 시간(밀리초)입니다.
클라이언트 왕복 지연 시간 캡처
클라이언트 왕복 지연 시간을 다음 언어로 캡처할 수 있습니다.
Java
Go
클라이언트 왕복 지연 시간 시각화
측정항목을 검색한 후 Cloud Monitoring에서 클라이언트 왕복 지연 시간을 시각화할 수 있습니다.
다음 예시는 클라이언트 왕복 지연 시간 측정항목의 5번째 백분위수 지연 시간을 보여주는 그래프입니다. 백분위수 지연 시간을 50번째 또는 99번째 백분위수로 변경하려면 애그리게이터 메뉴를 사용합니다.
프로그램에서 roundtrip_latency
라는 OpenCensus 뷰를 만듭니다.
이 문자열은 Cloud Monitoring으로 내보낼 때 측정항목 이름의 일부가 됩니다.
GFE 지연 시간 캡처 및 시각화
Google 프런트엔드(GFE) 지연 시간은 Google 네트워크에서 클라이언트의 리모트 프로시져 콜을 수신한 후 GFE가 응답의 첫 번째 바이트를 수신할 때까지의 시간(밀리초)입니다.
GFE 지연 시간 캡처
GFE 지연 시간을 다음 언어로 캡처할 수 있습니다.
Java
Go
GFE 지연 시간 시각화
측정항목을 검색한 후 Cloud Monitoring에서 GFE 지연 시간을 시각화할 수 있습니다.
다음은 GFE 지연 시간 측정항목에 대한 5번째 백분위수 지연 시간을 보여주는 그래프의 예시입니다. 백분위수 지연 시간을 50번째 또는 99번째 백분위수로 변경하려면 애그리게이터 메뉴를 사용합니다.
프로그램에서 gfe_latency
라는 OpenCensus 뷰를 만듭니다. 이 문자열은 Cloud Monitoring으로 내보낼 때 측정항목 이름의 일부가 됩니다.
Spanner API 요청 지연 시간 캡처 및 시각화
Spanner API 요청 지연 시간은 Spanner API 프런트엔드에서 수신한 요청의 첫 번째 바이트와 Spanner API 프런트엔드에서 전송한 응답의 마지막 바이트 간의 시간(초)입니다.
Spanner API 요청 지연 시간 캡처
기본적으로 이 지연 시간은 Cloud Monitoring 측정항목의 일부로 제공됩니다. 캡처하고 내보내기 위해 별도의 작업을 수행할 필요가 없습니다.
Spanner API 요청 지연 시간 시각화
측정항목 탐색기 차트 도구를 사용하여 Cloud Monitoring에서 spanner.googleapis.com/api/request_latencies
측정항목에 대한 그래프를 시각화할 수 있습니다.
다음은 Spanner API 요청 지연 시간 측정항목에 대한 5번째 백분위수 지연 시간을 보여주는 그래프의 예시입니다. 백분위수 지연 시간을 50번째 또는 99번째 백분위수로 변경하려면 애그리게이터 메뉴를 사용합니다.
쿼리 지연 시간 캡처 및 시각화
쿼리 지연 시간은 Spanner 데이터베이스에서 SQL 쿼리를 실행하는 데 걸리는 시간(밀리초)입니다.
쿼리 지연 시간 캡처
다음 언어의 쿼리 지연 시간을 캡처할 수 있습니다.
Java
Go
쿼리 지연 시간 시각화
측정항목을 검색한 후 Cloud Monitoring에서 쿼리 지연 시간을 시각화할 수 있습니다.
다음은 쿼리 지연 시간 측정항목에 대한 5번째 백분위수 지연 시간을 보여주는 그래프의 예시입니다. 백분위수 지연 시간을 50번째 또는 99번째 백분위수로 변경하려면 애그리게이터 메뉴를 사용합니다.
프로그램에서 query_stats_elapsed
라는 OpenCensus 뷰를 만듭니다.
이 문자열은 Cloud Monitoring으로 내보낼 때 측정항목 이름의 일부가 됩니다.
다음 단계
OpenCensus 자세히 알아보기
측정항목을 사용하여 지연 시간을 진단하는 방법 알아보기