Cloud Trace 정보

Google Cloud용 분산 추적 시스템인 Cloud Trace를 사용하면 애플리케이션이 사용자 또는 다른 애플리케이션으로부터 들어오는 요청을 처리하는 데 걸리는 시간과 요청 처리 시 수행된 RPC 호출과 같은 작업을 완료하는 데 걸리는 시간을 파악할 수 있습니다.

Cloud Trace는 App Engine, HTTP(S) 부하 분산기, Cloud Trace API로 계측한 애플리케이션에서 지연 시간 데이터를 수집하므로 다음 질문의 답을 찾을 수 있습니다.

  • 애플리케이션이 특정 요청을 처리하는 데 걸리는 시간
  • 애플리케이션이 요청을 처리하는 데 오랜 시간이 걸리는 이유
  • 일부 요청이 다른 요청보다 오래 걸리는 이유
  • 애플리케이션에 대한 요청의 전체 지연 시간
  • 시간이 지남에 따라 애플리케이션의 지연 시간 증가 또는 감소
  • 애플리케이션 지연 시간을 줄이는 방법
  • 애플리케이션의 종속 항목

애플리케이션 디버깅 및 프로파일링에 대한 자세한 내용은 Cloud DebuggerCloud Profiler를 참조하세요.

환경 지원

Cloud Trace는 다음 환경의 Linux에서 실행됩니다.

Cloud Trace는 trace 정보를 캡처하기 위해 애플리케이션 계측용 클라이언트 라이브러리를 제공합니다. 언어별 설정 안내는 Cloud Trace 설정을 참조하세요.

자동 trace를 사용하는 구성

일부 구성에서는 trace 데이터가 자동으로 캡처됩니다.

  • App Engine 표준 환경

    자바 8, Python 2, PHP 5 애플리케이션은 Cloud Trace 클라이언트 라이브러리를 사용할 필요가 없습니다. 이러한 런타임은 애플리케이션 URI에 대한 요청의 지연 시간 데이터를 Cloud Trace에 자동으로 전송합니다. 요청에는 App Engine 서비스에 대한 왕복 RPC 호출의 지연 시간 데이터가 포함됩니다. Cloud Trace는 Cloud SQL을 제외한 모든 App Engine Admin API에서 작동합니다.

  • Cloud Functions 및 Cloud Run

    수신 및 발신 HTTP 요청의 경우 지연 시간 데이터가 자동으로 수집됩니다.

언어 지원

다음 표에는 Trace 클라이언트 라이브러리의 가용성, OpenCensus Stackdriver 내보내기를 포함하는 라이브러리의 가용성, Cloud Trace로의 내보내기를 포함하는 OpenTelemetry 라이브러리의 가용성이 요약되어 있습니다.

언어 클라이언트 라이브러리
사용 가능
OpenCensus
라이브러리 사용 가능
OpenTelemetry
라이브러리 사용 가능
C# ASP.NET Core 아니요 아니요
C# ASP.NET 아니요 아니요
Go
자바
Node.js
PHP 아니요
Python
Ruby 아니요 아니요

OpenTelemetryOpenCensus 라이브러리는 해당 Cloud Trace 클라이언트 라이브러리의 일부 복잡한 내용을 표시하지 않으므로 사용하기에 더 쉽습니다. 이러한 라이브러리를 사용하는 경우 애플리케이션을 계측하여 Cloud Trace 내보내기 도구를 사용합니다.

일반적인 설정 안내는 Cloud Trace 설정을 참조하세요.

구성요소

Cloud Trace는 trace를 수집하여 Google Cloud 프로젝트로 전송하는 추적 클라이언트로 구성됩니다. 그런 다음 Google Cloud Console을 사용하여 에이전트가 수집한 데이터를 보고 분석할 수 있습니다.

trace는 애플리케이션이 단일 작업을 완료하는 데 걸리는 시간을 설명합니다. 각 trace는 하나 이상의 스팬으로 구성됩니다. 스팬은 완전한 하위 작업을 수행하는 데 걸리는 시간을 설명합니다. 예를 들어 trace는 사용자의 수신 요청을 처리하고 응답을 반환하는 데 걸리는 시간을 설명합니다. 스팬은 특정 RPC 호출에 필요한 시간을 설명할 수 있습니다. 자세한 내용은 Cloud Trace의 데이터 모델을 참조하세요.

추적 클라이언트

OpenCensus 라이브러리를 프로그래밍 언어에서 사용할 수 있는 경우 OpenCensus를 사용하여 trace 데이터를 만들고 보내는 프로세스를 간소화할 수 있습니다. OpenCensus는 사용이 간편할 뿐만 아니라 일괄 처리를 구현하여 성능을 개선할 수 있습니다.

OpenCensus 라이브러리가 없는 경우 Trace SDK 라이브러리를 가져오고 Cloud Trace API를 사용하여 코드를 계측합니다. Cloud Trace API는 trace 데이터를 수집하여 Google Cloud 프로젝트로 보냅니다.

추적 인터페이스

에이전트가 trace 데이터를 수집하면 Cloud Trace 인터페이스에서 해당 데이터를 거의 실시간으로 보고 분석할 수 있습니다. 인터페이스에는 개요, Trace 목록, 분석 보고서 등 세 가지 페이지가 있습니다.

Cloud Trace 사용을 시작하려면 Google Cloud 콘솔 탐색창에서 Trace를 선택하거나 다음 버튼을 클릭합니다.

Trace로 이동

Trace 데이터를 수신하는 Google Cloud 프로젝트에 대한 액세스 권한이 없으면 Trace 콘솔에 데이터가 표시되지 않습니다.

개요

개요 페이지에서는 애플리케이션의 요약 정보를 확인할 수 있습니다.

Cloud Trace 개요 페이지

정보 창에서는 해당하는 경우 애플리케이션의 성능 정보 목록을 확인할 수 있습니다. 이 창에서는 함수 연속 호출처럼 일괄 처리하면 더 효율적인, 애플리케이션의 일반적인 문제를 강조 표시합니다.

최근 추적 창에서는 가장 최근의 추적을 확인할 수 있습니다. 각 추적의 지연 시간, URI와 시간이 표시됩니다. 이 요약 정보를 이용해 애플리케이션의 현재 상태를 확인할 수 있습니다.

가장 자주 사용하는 URI가장 자주 사용하는 RPC는 전날 가장 자주 사용한 URI(및 RPC)를 평균 지연 시간과 함께 나열합니다. 한쪽 표에 있는 링크를 클릭하면 일치하는 요청을 표시하도록 사전 구성된 Trace 목록 페이지가 열립니다. Trace 목록 페이지에서는 지연 시간을 시간 함수로 확인하고, 개별 trace의 세부정보를 조사할 수 있습니다.

청구 가능한 Trace 스팬 창에서는 이번 달에 데이터화한 스팬 숫자와 지난달의 총 스팬 숫자를 확인할 수 있습니다. 이 정보를 사용하여 Cloud Trace 사용에 대한 비용을 모니터링할 수 있습니다. 비용에 대한 자세한 내용은 이 페이지의 가격 책정 섹션을 참조하세요.

일일 분석 보고서 창에서는 전날의 지연 시간 데이터를 확인하고 7일 전 지연 시작 데이터와 비교할 수 있습니다. 이 데이터를 참고하면 지연 시간 동작이 시간에 따라 변하는지 확인할 수 있습니다. 이 페이지에서 보고서 형식을 변경할 수는 없습니다. 하지만 커스텀 분석 보고서를 만들 수는 있습니다.

Cloud Trace 개요 페이지에 대한 자세한 내용은 Google Cloud 콘솔에서 Trace 보기를 참조하세요.

추적 목록

Trace 목록 페이지에서는 개별 trace를 자세히 살펴볼 수 있습니다. 기본적으로 이곳에서는 모든 trace의 지연 시간 플롯을 표시하고, 가장 최근의 trace를 표 형식으로 나열합니다.

검사할 특정 trace를 선택하면 2개의 새 창, trace에 있는 모든 스팬을 표시하는 창과 선택한 스팬 관련 세부정보가 표시되는 정보 창이 열립니다. 기본적으로 루트 스팬이 선택되며 세부정보에는 요청에 대한 요약 정보가 포함됩니다. 조사할 trace를 찾으려면 필터를 사용합니다.

trace 세부정보 필터링 및 확인에 대한 자세한 내용은 trace 찾기 및 보기trace 세부정보 보기를 참조하세요.

분석 보고서

분석 보고서 페이지에서 커스텀 보고서를 만들 수 있습니다. 이러한 보고서에는 추적을 모두 포함하거나, 필터를 지정하거나, 추적 하위 집합만 포함할 수 있습니다. 지연 시간 데이터 모음 2개를 비교하는 보고서를 만들 수도 있습니다. 자세한 내용은 분석 보고서 만들기를 참조하세요.

데이터 보안

Cloud Trace는 VPC 서비스 제어 지원 서비스입니다. 자세한 내용은 VPC 서비스 제어 문서를 참조하세요.

다음 단계