클라이언트 측 측정항목 설정
이 페이지에서는 Bigtable 클라이언트 측 측정항목을 설치, 설정, 사용하는 방법을 설명합니다.
다음 클라이언트 라이브러리의 사용자는 클라이언트 측 측정항목을 사용할 수 있습니다.
- C++용 Bigtable 클라이언트 라이브러리
- 자바용 Bigtable 클라이언트 라이브러리
- 자바용 Bigtable HBase 클라이언트
- Go용 Bigtable 클라이언트 라이브러리
- Node.js용 Bigtable 클라이언트 라이브러리
개요는 클라이언트 측 측정항목 개요를 참조하세요. 측정항목의 자세한 목록은 클라이언트 측 측정항목 설명을 참조하세요.
서비스 계정 권한 추가 또는 확인
서비스 계정에 IAM 권한을 추가하려면 다음 단계를 완료하세요.
- Google Cloud 콘솔에서 IAM 페이지로 이동합니다. 
- Bigtable 클러스터를 만든 프로젝트를 선택합니다. 
- 권한을 추가할 서비스 계정을 검색합니다. 
- 주 구성원 수정을 클릭합니다. 
- 다른 역할 추가를 클릭합니다. 
- '모니터링 측정항목 작성자'를 검색하고 결과를 선택합니다. 
- 저장을 클릭합니다. 
Cloud Monitoring API 사용 설정
- Google Cloud 콘솔에서 API 및 서비스 페이지로 이동합니다. 
- Bigtable 클러스터를 만든 프로젝트를 선택합니다. 
- API 및 서비스 사용 설정을 클릭합니다. 
- Monitoring을 검색합니다.
- 검색 결과에서 Cloud Monitoring API를 클릭합니다. 
- API 사용 설정됨이 표시되어 있으면 API가 이미 사용 설정된 것입니다. 그렇지 않으면 사용 설정을 클릭합니다. 
Bigtable 클라이언트 라이브러리 설정
Cloud Monitoring API를 사용 설정한 후 Bigtable 클라이언트 라이브러리를 구성합니다.
C++
Bigtable API를 호출하는 C++용 Bigtable 클라이언트 라이브러리를 사용하는 경우 다음 단계를 따르세요.
C++용 클라이언트 라이브러리 설치 및 구성
CMake 또는 Bazel과 같은 일반적인 C++ 빌드 시스템을 사용하여 라이브러리를 통합합니다. 자세한 내용은 빌드 및 설치를 참고하세요.
Bigtable 클라이언트 라이브러리가 클라이언트 측 측정항목을 수집하려면 프로젝트에 OpenTelemetry 및 Cloud Monitoring의 종속 항목이 포함되어야 합니다. OpenTelemetry는 클라이언트 라이브러리가 측정항목을 만들고, 계측하고, 기록할 수 있는 프레임워크를 제공하며, Cloud Monitoring 라이브러리는 이러한 측정항목을 Cloud Monitoring으로 내보내거나 게시하는 기능을 제공합니다.
애플리케이션에서 클라이언트 측 측정항목 사용 설정
버전 2.40.0부터 C++용 Bigtable 클라이언트 라이브러리에서 클라이언트 측 측정항목이 기본적으로 사용 설정됩니다.
OpenTelemetry 및 Cloud Monitoring 종속 항목이 모두 프로젝트에서 사용 가능한 경우 측정항목이 자동으로 수집됩니다. 이러한 측정항목에는 추가 요금이 부과되지 않습니다.
선택사항: 클라이언트 측 측정항목 선택 해제
데이터 연결을 만들 때 EnableMetricsOption을 false로 설정하여 클라이언트 측 측정항목 사용을 선택 해제할 수 있습니다.
auto options = Options{}.set<EnableMetricsOption>(false);
TableResource resource("my-project", "my-instance", "my-table");
Table table(MakeDataConnection(std::move(options)), std::move(resource));
Go
Bigtable API를 호출하는 Go용 Bigtable 클라이언트 라이브러리를 사용하는 경우 다음 단계를 따르세요.
Go용 클라이언트 라이브러리 설치 및 구성
Go용 Bigtable 클라이언트 라이브러리를 버전 1.27.0 이상으로 업데이트합니다. go.mod는 다음과 유사합니다.
require (
  cloud.google.com/go/bigtable v1.27.2-0.20240725222120-ce31365acc54
선택사항: 클라이언트 측 측정항목 선택 해제
클라이언트 측 측정항목은 Go 클라이언트 라이브러리에서 기본적으로 사용 설정됩니다. 선택 해제하려면 ClientConfig에서 NoopMetricsProvider를 전달하세요.
client, err := bigtable.NewClientWithConfig(ctx, project, instance,
bigtable.ClientConfig{MetricsProvider: bigtable.NoopMetricsProvider{},
})
HBase
HBase API를 호출하는 Java용 Bigtable HBase 클라이언트를 사용하여 애플리케이션을 Bigtable에 연결하는 경우 다음 단계를 따르세요.
Java용 HBase 클라이언트 라이브러리 설치 및 구성
- 최신 Java용 Bigtable HBase 클라이언트를 다운로드하고 설치합니다. 클라이언트 측 측정항목을 사용 설정하려면 버전 2.6.4 이상을 사용해야 합니다. 
- 빈 Maven 프로젝트를 만듭니다. 
- 사용 사례에 적합한 아티팩트 종속 항목을 결정합니다. - 2.x버전에는- 1.x버전에 없는 HBase 비동기 클라이언트가 포함됩니다.- bigtable-hbase-1.x또는- bigtable-hbase-2.x: 종속 항목을 제어하는 독립형 애플리케이션에 사용합니다.
- bigtable-hbase-1.x-hadoop또는- bigtable-hbase-2.x-hadoop: Hadoop 환경에 사용합니다.
- bigtable-hbase-1.x-shaded또는- bigtable-hbase-2.x-shaded: protobuf 또는 Guava와 같은 이전 버전의 구성요소가 필요한 Hadoop 이외의 환경에 사용합니다.
 
- pom.xml 파일을 업데이트합니다. - <dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud.bigtable</groupId> <artifactId>BIGTABLE_HBASE_ARTIFACT</artifactId> <version>VERSION_NUMBER</version> </dependency> </dependencies> </dependencyManagement>- 다음을 제공합니다. - BIGTABLE_HBASE_ARTIFACT: 프로젝트의 아티팩트 종속 항목입니다(예:- bigtable-hbase-1.x또는- bigtable-hbase-2.x-hadoop).
- VERSION_NUMBER: 사용 중인 클라이언트 라이브러리 버전입니다(- 2.6.4형식).
 
애플리케이션에서 클라이언트 측 측정항목 사용 설정
bigtable-hbase-1.x 또는 bigtable-hbase-2.x 사용
HBase 클라이언트 라이브러리 및 bigtable-hbase-1.x 또는 bigtable-hbase-2.x 아티팩트를 사용하여 연결을 만들 때 기본 제공 클라이언트 측 측정항목을 사용 설정하는 코드는 다음과 유사합니다.
  import com.google.cloud.bigtable.data.v2.BigtableDataSettings;
  Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
  Connection connection = new BigtableConnection(configuration);
  BigtableDataSettings.enableBuiltinMetrics();
-hadoop 또는 -shaded 아티팩트 사용
HBase 클라이언트 라이브러리 및 -hadoop 또는 -shaded 아티팩트 중 하나를 사용하여 연결을 만들 때 기본 제공 클라이언트 측 측정항목을 사용 설정하는 코드는 다음과 유사합니다.
  import com.google.bigtable.repackaged.com.google.cloud.bigtable.data.v2.BigtableDataSettings;
  Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
  Connection connection = new BigtableConnection(configuration);
  BigtableDataSettings.enableBuiltinMetrics();
선택사항: 클라이언트 측 측정항목 선택 해제
버전 2.14.1 이상을 사용하는 경우 클라이언트 측 측정항목이 기본적으로 사용 설정됩니다. 선택을 해제할 수 있습니다.
Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_ENABLE_CLIENT_SIDE_METRICS, false);
Connection connection = new BigtableConnection(configuration);
자바
Bigtable API를 호출하는 Java용 Bigtable 클라이언트 라이브러리를 사용하는 경우 다음 단계를 따르세요.
시작하기 전에
선택사항: OpenCensus 통계 통합을 사용하여 Bigtable 측정항목을 가져오는 경우 애플리케이션의 종속 항목과 StackdriverStatsExporter 변경사항을 되돌립니다. 그 이유는 업그레이드 시기를 참조하세요.
Java용 클라이언트 라이브러리 설치 및 구성
- 최신 Java용 Bigtable 클라이언트 라이브러리를 다운로드하고 설치합니다. 클라이언트 측 측정항목을 사용하려면 버전 2.16.0 이상이 필요합니다.
- 최신 버전을 사용하려면 Java 클라이언트 라이브러리의 pom.xml 파일을 업데이트합니다. pom은 다음과 유사해야 합니다. - <dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-bigtable-bom</artifactId> <version>2.38.0</version> <scope>import</scope> <type>pom</type> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-bigtable</artifactId> </dependency> </dependencies>
애플리케이션에서 클라이언트 측 측정항목 사용 설정
클라이언트 라이브러리를 사용하여 클라이언트를 만들 때 기본 제공 측정항목을 사용 설정합니다. 코드는 다음과 비슷하게 표시됩니다.
  BigtableDataSettings settings = BigtableDataSettings.newBuilder()
              .setProjectId("our-project-2-12")
              .setInstanceId("our-instance-85")
              .setAppProfileId("our-appProfile-06")
              .build();
  BigtableDataSettings.enableBuiltinMetrics();
  try (BigtableDataClient client = BigtableDataClient.create(settings)) {
          // Application logic
  }
커스텀 OpenTelemetry 인스턴스 설정
버전 2.38.0 이상을 사용하고 클라이언트 측 측정항목을 Cloud Monitoring 및 커스텀 싱크에 게시하려면 커스텀 OpenTelemetry 인스턴스를 설정할 수 있습니다.
  SdkMeterProviderBuilder meterProviderBuilder = SdkMeterProvider.builder();
  // register client side metrics on your meter provider
  BuiltinMetricsView.registerBuiltinMetrics("my-project-id", meterProviderBuilder);
  // register other metric reader and views
  meterProviderBuilder.registerMetricReader().registerView();
  // create the OTEL instance
  OpenTelemetry openTelemetry = OpenTelemetrySdk.builder()
          .setMeterProvider(meterProviderBuilder.build())
          .build();
  // Override MetricsProvider in BigtableDataSettings
  BigtableDataSettings settings = BigtableDataSettings.newBuilder()
          .setProjectId("my-project-id")
          .setInstanceId("my-instance-id")
          .setMetricsProvider(CustomOpenTelemetryMetricsProvider.create(openTelemetry))
          .build();
  try (BigtableDataClient client = BigtableDataClient.create(settings)) {
        // Application logic
  }
선택사항: 클라이언트 측 측정항목 선택 해제
버전 2.38.0 이상을 사용하는 경우 클라이언트 측 측정항목 사용을 선택 해제할 수 있습니다.
BigtableDataSettings settings = BigtableDataSettings.newBuilder()
        .setProjectId("my-project")
        .setInstanceId("my-instance")
        .setMetricsProvider(NoopMetricsProvider.INSTANCE)
        .build();
Node.js
Bigtable API를 호출하는 Node.js용 Bigtable 클라이언트 라이브러리를 사용하는 경우 다음 단계를 따르세요.
Node.js용 클라이언트 라이브러리 설치 및 구성
- 최신 Node.js용 Bigtable 클라이언트 라이브러리를 다운로드하고 설치합니다. - 클라이언트 측 측정항목을 사용하려면 버전 6.2.0 이상이 필요합니다. - package.json파일은 다음과 유사해야 합니다.- { "dependencies": { "@google-cloud/bigtable": "^6.2.0" } }
- 프로젝트에서 Node.js 모듈을 다시 설치합니다. - rm -rf node_modules rm package-lock.json npm i
애플리케이션에서 클라이언트 측 측정항목 사용 설정
클라이언트 측 측정항목은 버전 6.4.0부터 Node.js용 Bigtable 클라이언트 라이브러리에서 기본적으로 사용 설정됩니다.
선택사항: 클라이언트 측 측정항목 선택 해제
클라이언트 측 측정항목 사용을 선택 해제할 수 있습니다.
const bigtable = new Bigtable({metricsEnabled: false});
측정항목 탐색기에서 측정항목 보기
- Google Cloud 콘솔에서 측정항목 탐색기 페이지로 이동합니다. 
- 프로젝트를 선택합니다. 
- 측정항목 선택을 클릭합니다. 
- bigtable.googleapis.com/client을 검색합니다.
- 측정항목, - group by메서드, 상태를 선택하고 애그리게이터를 선택합니다. 더 많은 옵션을 알아보려면 측정항목 탐색기 사용 시 측정항목 선택을 참조하세요.
클라이언트 측 측정항목을 사용 설정한 후 게시된 측정항목을 확인하기 전에 최소 1분 이상 애플리케이션이 실행되도록 하세요.
Bigtable 모니터링에서 측정항목 보기
Bigtable 모니터링 페이지에는 다음 클라이언트 측 측정항목의 차트가 표시됩니다.
- 클라이언트 측 읽기 지연 시간
- 클라이언트 측 쓰기 지연 시간
- 클라이언트 측 읽기 시도 지연 시간
- 클라이언트 측 쓰기 시도 지연 시간
모니터링 페이지에서 클라이언트 측 측정항목을 보려면 다음 단계를 따르세요.
- Google Cloud 콘솔에서 Bigtable 인스턴스 목록을 엽니다. 
- 측정항목을 보려는 인스턴스를 클릭합니다. 
- 왼쪽 창에서 모니터링을 클릭합니다. Google Cloud 콘솔에 인스턴스의 일련의 차트가 표시됩니다. 
- 창을 스크롤하여 클라이언트 측 측정항목을 확인합니다. 
- 선택사항: 테이블 수준에서 측정항목을 보려면 테이블을 클릭합니다. 
- 선택사항: 개별 앱 프로필의 측정항목을 보려면 애플리케이션 프로필을 클릭합니다. 
자세한 내용은 Bigtable 모니터링을 참고하세요.