인스턴스 세부정보 가져오기

현재 프로젝트에서 인스턴스 ID가 지정된 인스턴스 세부정보를 가져옵니다.

더 살펴보기

이 코드 샘플이 포함된 자세한 문서는 다음을 참조하세요.

코드 샘플

C++

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

namespace cbt = ::google::cloud::bigtable;
namespace cbta = ::google::cloud::bigtable_admin;
using ::google::cloud::StatusOr;
[](cbta::BigtableInstanceAdminClient instance_admin,
   std::string const& project_id, std::string const& instance_id) {
  std::string instance_name = cbt::InstanceName(project_id, instance_id);
  StatusOr<google::bigtable::admin::v2::Instance> instance =
      instance_admin.GetInstance(instance_name);
  if (!instance) throw std::move(instance).status();
  std::cout << "GetInstance details : " << instance->DebugString() << "\n";
}

C#

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

// Initialize request argument(s).
GetInstanceRequest request = new GetInstanceRequest
{
    InstanceName = new InstanceName(projectId, instanceId)
};
try
{
    // Make Request.
    Console.WriteLine("Waiting for operation to complete...");
    Instance respond = bigtableInstanceAdminClient.GetInstance(request);
}
catch (Exception ex)
{
    Console.WriteLine($"Exception retreiving {instanceId} instance");
    Console.WriteLine(ex.Message);
}

Java

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

Instance instance = null;
try {
  instance = adminClient.getInstance(instanceId);
  System.out.println("Instance ID: " + instance.getId());
  System.out.println("Display Name: " + instance.getDisplayName());
  System.out.print("Labels: ");
  Map<String, String> labels = instance.getLabels();
  for (String key : labels.keySet()) {
    System.out.printf("%s - %s", key, labels.get(key));
  }
  System.out.println("\nState: " + instance.getState());
  System.out.println("Type: " + instance.getType());
} catch (NotFoundException e) {
  System.err.println("Failed to get non-existent instance: " + e.getMessage());
}

Node.js

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

const [instances2] = await bigtable.instance(instanceID).get();
console.log(`Instance ID: ${instances2.id}`);
console.log(`Instance Meta: ${JSON.stringify(instances2.metadata)}`);

PHP

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

use Google\ApiCore\ApiException;
use Google\Cloud\Bigtable\Admin\V2\Client\BigtableInstanceAdminClient;
use Google\Cloud\Bigtable\Admin\V2\GetInstanceRequest;
use Google\Cloud\Bigtable\Admin\V2\Instance\State;
use Google\Cloud\Bigtable\Admin\V2\Instance\Type;

/**
 * Get a Bigtable instance
 *
 * @param string $projectId The Google Cloud project ID
 * @param string $instanceId The ID of the Bigtable instance
 */
function get_instance(
    string $projectId,
    string $instanceId
): void {
    $instanceAdminClient = new BigtableInstanceAdminClient();
    $instanceName = $instanceAdminClient->instanceName($projectId, $instanceId);

    printf('Fetching the Instance %s' . PHP_EOL, $instanceId);
    try {
        $getInstanceRequest = (new GetInstanceRequest())
            ->setName($instanceName);
        $instance = $instanceAdminClient->getInstance($getInstanceRequest);
    } catch (ApiException $e) {
        if ($e->getStatus() === 'NOT_FOUND') {
            printf('Instance %s does not exists.' . PHP_EOL, $instanceId);
            return;
        }
        throw $e;
    }

    printf('Printing Details:' . PHP_EOL);

    // Fetch some commonly used metadata
    printf('Name: ' . $instance->getName() . PHP_EOL);
    printf('Display Name: ' . $instance->getDisplayName() . PHP_EOL);
    printf('State: ' . State::name($instance->getState()) . PHP_EOL);
    printf('Type: ' . Type::name($instance->getType()) . PHP_EOL);
    printf('Labels: ' . PHP_EOL);

    $labels = $instance->getLabels();

    // Labels are an object of the MapField class which implement the IteratorAggregate, Countable
    // and ArrayAccess interfaces so you can do the following:
    printf("\tNum of Labels: " . $labels->count() . PHP_EOL);
    printf("\tLabel with a key(dev-label): " . ($labels['dev-label'] ?? 'N/A') . PHP_EOL);

    // we can even loop over all the labels
    foreach ($labels as $key => $val) {
        printf("\t$key: $val" . PHP_EOL);
    }
}

Python

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

print(
    "\nName of instance: {}\nLabels: {}".format(
        instance.display_name, instance.labels
    )
)

Ruby

Bigtable용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Bigtable 클라이언트 라이브러리를 참조하세요.

Bigtable에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

# instance_id = "my-instance"
instance = bigtable.instance instance_id
puts "Get Instance id: #{instance.instance_id}"

다음 단계

다른 Google Cloud 제품의 코드 샘플을 검색하고 필터링하려면 Google Cloud 샘플 브라우저를 참조하세요.