---
title: Getting Started with Datadog
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Infrastructure > Datadog Resource Catalog
---

# gcp_spanner_instance{% #gcp_spanner_instance %}

## `ancestors`{% #ancestors %}

**Type**: `UNORDERED_LIST_STRING`

## `autoscaling_config`{% #autoscaling_config %}

**Type**: `STRUCT`**Provider name**: `autoscalingConfig`**Description**: Optional. The autoscaling configuration. Autoscaling is enabled if this field is set. When autoscaling is enabled, node_count and processing_units are treated as OUTPUT_ONLY fields and reflect the current compute capacity allocated to the instance.

- `asymmetric_autoscaling_options`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `asymmetricAutoscalingOptions`**Description**: Optional. Optional asymmetric autoscaling options. Replicas matching the replica selection criteria will be autoscaled independently from other replicas. The autoscaler will scale the replicas based on the utilization of replicas identified by the replica selection. Replica selections should not overlap with each other. Other replicas (those do not match any replica selection) will be autoscaled together and will have the same compute capacity allocated to them.
  - `overrides`**Type**: `STRUCT`**Provider name**: `overrides`**Description**: Optional. Overrides applied to the top-level autoscaling configuration for the selected replicas.
    - `autoscaling_limits`**Type**: `STRUCT`**Provider name**: `autoscalingLimits`**Description**: Optional. If specified, overrides the min/max limit in the top-level autoscaling configuration for the selected replicas.
      - `max_nodes`**Type**: `INT32`**Provider name**: `maxNodes`**Description**: Maximum number of nodes allocated to the instance. If set, this number should be greater than or equal to min_nodes.
      - `max_processing_units`**Type**: `INT32`**Provider name**: `maxProcessingUnits`**Description**: Maximum number of processing units allocated to the instance. If set, this number should be multiples of 1000 and be greater than or equal to min_processing_units.
      - `min_nodes`**Type**: `INT32`**Provider name**: `minNodes`**Description**: Minimum number of nodes allocated to the instance. If set, this number should be greater than or equal to 1.
      - `min_processing_units`**Type**: `INT32`**Provider name**: `minProcessingUnits`**Description**: Minimum number of processing units allocated to the instance. If set, this number should be multiples of 1000.
    - `autoscaling_target_high_priority_cpu_utilization_percent`**Type**: `INT32`**Provider name**: `autoscalingTargetHighPriorityCpuUtilizationPercent`**Description**: Optional. If specified, overrides the autoscaling target high_priority_cpu_utilization_percent in the top-level autoscaling configuration for the selected replicas.
  - `replica_selection`**Type**: `STRUCT`**Provider name**: `replicaSelection`**Description**: Required. Selects the replicas to which this AsymmetricAutoscalingOption applies. Only read-only replicas are supported.
    - `location`**Type**: `STRING`**Provider name**: `location`**Description**: Required. Name of the location of the replicas (e.g., "us-central1").
- `autoscaling_limits`**Type**: `STRUCT`**Provider name**: `autoscalingLimits`**Description**: Required. Autoscaling limits for an instance.
  - `max_nodes`**Type**: `INT32`**Provider name**: `maxNodes`**Description**: Maximum number of nodes allocated to the instance. If set, this number should be greater than or equal to min_nodes.
  - `max_processing_units`**Type**: `INT32`**Provider name**: `maxProcessingUnits`**Description**: Maximum number of processing units allocated to the instance. If set, this number should be multiples of 1000 and be greater than or equal to min_processing_units.
  - `min_nodes`**Type**: `INT32`**Provider name**: `minNodes`**Description**: Minimum number of nodes allocated to the instance. If set, this number should be greater than or equal to 1.
  - `min_processing_units`**Type**: `INT32`**Provider name**: `minProcessingUnits`**Description**: Minimum number of processing units allocated to the instance. If set, this number should be multiples of 1000.
- `autoscaling_targets`**Type**: `STRUCT`**Provider name**: `autoscalingTargets`**Description**: Required. The autoscaling targets for an instance.
  - `high_priority_cpu_utilization_percent`**Type**: `INT32`**Provider name**: `highPriorityCpuUtilizationPercent`**Description**: Required. The target high priority cpu utilization percentage that the autoscaler should be trying to achieve for the instance. This number is on a scale from 0 (no utilization) to 100 (full utilization). The valid range is [10, 90] inclusive.
  - `storage_utilization_percent`**Type**: `INT32`**Provider name**: `storageUtilizationPercent`**Description**: Required. The target storage utilization percentage that the autoscaler should be trying to achieve for the instance. This number is on a scale from 0 (no utilization) to 100 (full utilization). The valid range is [10, 99] inclusive.

## `config`{% #config %}

**Type**: `STRING`**Provider name**: `config`**Description**: Required. The name of the instance's configuration. Values are of the form `projects//instanceConfigs/`. See also InstanceConfig and ListInstanceConfigs.

## `create_time`{% #create_time %}

**Type**: `TIMESTAMP`**Provider name**: `createTime`**Description**: Output only. The time at which the instance was created.

## `default_backup_schedule_type`{% #default_backup_schedule_type %}

**Type**: `STRING`**Provider name**: `defaultBackupScheduleType`**Description**: Optional. Controls the default backup schedule behavior for new databases within the instance. By default, a backup schedule is created automatically when a new database is created in a new instance. Note that the `AUTOMATIC` value isn't permitted for free instances, as backups and backup schedules aren't supported for free instances. In the `GetInstance` or `ListInstances` response, if the value of `default_backup_schedule_type` isn't set, or set to `NONE`, Spanner doesn't create a default backup schedule for new databases in the instance.**Possible values**:

- `DEFAULT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED` - Not specified.
- `NONE` - A default backup schedule isn't created automatically when a new database is created in the instance.
- `AUTOMATIC` - A default backup schedule is created automatically when a new database is created in the instance. The default backup schedule creates a full backup every 24 hours. These full backups are retained for 7 days. You can edit or delete the default backup schedule once it's created.

## `edition`{% #edition %}

**Type**: `STRING`**Provider name**: `edition`**Description**: Optional. The `Edition` of the current instance.**Possible values**:

- `EDITION_UNSPECIFIED` - Edition not specified.
- `STANDARD` - Standard edition.
- `ENTERPRISE` - Enterprise edition.
- `ENTERPRISE_PLUS` - Enterprise Plus edition.

## `endpoint_uris`{% #endpoint_uris %}

**Type**: `UNORDERED_LIST_STRING`**Provider name**: `endpointUris`**Description**: Deprecated. This field is not populated.

## `free_instance_metadata`{% #free_instance_metadata %}

**Type**: `STRUCT`**Provider name**: `freeInstanceMetadata`**Description**: Free instance metadata. Only populated for free instances.

- `expire_behavior`**Type**: `STRING`**Provider name**: `expireBehavior`**Description**: Specifies the expiration behavior of a free instance. The default of ExpireBehavior is `REMOVE_AFTER_GRACE_PERIOD`. This can be modified during or after creation, and before expiration.**Possible values**:
  - `EXPIRE_BEHAVIOR_UNSPECIFIED` - Not specified.
  - `FREE_TO_PROVISIONED` - When the free instance expires, upgrade the instance to a provisioned instance.
  - `REMOVE_AFTER_GRACE_PERIOD` - When the free instance expires, disable the instance, and delete it after the grace period passes if it has not been upgraded.
- `expire_time`**Type**: `TIMESTAMP`**Provider name**: `expireTime`**Description**: Output only. Timestamp after which the instance will either be upgraded or scheduled for deletion after a grace period. ExpireBehavior is used to choose between upgrading or scheduling the free instance for deletion. This timestamp is set during the creation of a free instance.
- `upgrade_time`**Type**: `TIMESTAMP`**Provider name**: `upgradeTime`**Description**: Output only. If present, the timestamp at which the free instance was upgraded to a provisioned instance.

## `gcp_display_name`{% #gcp_display_name %}

**Type**: `STRING`**Provider name**: `displayName`**Description**: Required. The descriptive name for this instance as it appears in UIs. Must be unique per project and between 4 and 30 characters in length.

## `instance_type`{% #instance_type %}

**Type**: `STRING`**Provider name**: `instanceType`**Description**: The `InstanceType` of the current instance.**Possible values**:

- `INSTANCE_TYPE_UNSPECIFIED` - Not specified.
- `PROVISIONED` - Provisioned instances have dedicated resources, standard usage limits and support.
- `FREE_INSTANCE` - Free instances provide no guarantee for dedicated resources, [node_count, processing_units] should be 0. They come with stricter usage limits and limited support.

## `labels`{% #labels %}

**Type**: `UNORDERED_LIST_STRING`

## `name`{% #name %}

**Type**: `STRING`**Provider name**: `name`**Description**: Required. A unique identifier for the instance, which cannot be changed after the instance is created. Values are of the form `projects//instances/a-z*[a-z0-9]`. The final segment of the name must be between 2 and 64 characters in length.

## `node_count`{% #node_count %}

**Type**: `INT32`**Provider name**: `nodeCount`**Description**: The number of nodes allocated to this instance. At most, one of either `node_count` or `processing_units` should be present in the message. Users can set the `node_count` field to specify the target number of nodes allocated to the instance. If autoscaling is enabled, `node_count` is treated as an `OUTPUT_ONLY` field and reflects the current number of nodes allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. If the instance has varying node count across replicas (achieved by setting `asymmetric_autoscaling_options` in the autoscaling configuration), the `node_count` set here is the maximum node count across all replicas. For more information, see [Compute capacity, nodes, and processing units](https://cloud.google.com/spanner/docs/compute-capacity).

## `organization_id`{% #organization_id %}

**Type**: `STRING`

## `parent`{% #parent %}

**Type**: `STRING`

## `processing_units`{% #processing_units %}

**Type**: `INT32`**Provider name**: `processingUnits`**Description**: The number of processing units allocated to this instance. At most, one of either `processing_units` or `node_count` should be present in the message. Users can set the `processing_units` field to specify the target number of processing units allocated to the instance. If autoscaling is enabled, `processing_units` is treated as an `OUTPUT_ONLY` field and reflects the current number of processing units allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. If the instance has varying processing units per replica (achieved by setting `asymmetric_autoscaling_options` in the autoscaling configuration), the `processing_units` set here is the maximum processing units across all replicas. For more information, see [Compute capacity, nodes and processing units](https://cloud.google.com/spanner/docs/compute-capacity).

## `project_id`{% #project_id %}

**Type**: `STRING`

## `project_number`{% #project_number %}

**Type**: `STRING`

## `region_id`{% #region_id %}

**Type**: `STRING`

## `replica_compute_capacity`{% #replica_compute_capacity %}

**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `replicaComputeCapacity`**Description**: Output only. Lists the compute capacity per ReplicaSelection. A replica selection identifies a set of replicas with common properties. Replicas identified by a ReplicaSelection are scaled with the same compute capacity.

- `node_count`**Type**: `INT32`**Provider name**: `nodeCount`**Description**: The number of nodes allocated to each replica. This may be zero in API responses for instances that are not yet in state `READY`.
- `processing_units`**Type**: `INT32`**Provider name**: `processingUnits`**Description**: The number of processing units allocated to each replica. This may be zero in API responses for instances that are not yet in state `READY`.
- `replica_selection`**Type**: `STRUCT`**Provider name**: `replicaSelection`**Description**: Required. Identifies replicas by specified properties. All replicas in the selection have the same amount of compute capacity.
  - `location`**Type**: `STRING`**Provider name**: `location`**Description**: Required. Name of the location of the replicas (e.g., "us-central1").

## `resource_name`{% #resource_name %}

**Type**: `STRING`

## `state`{% #state %}

**Type**: `STRING`**Provider name**: `state`**Description**: Output only. The current instance state. For CreateInstance, the state must be either omitted or set to `CREATING`. For UpdateInstance, the state must be either omitted or set to `READY`.**Possible values**:

- `STATE_UNSPECIFIED` - Not specified.
- `CREATING` - The instance is still being created. Resources may not be available yet, and operations such as database creation may not work.
- `READY` - The instance is fully created and ready to do work such as creating databases.

## `tags`{% #tags %}

**Type**: `UNORDERED_LIST_STRING`

## `update_time`{% #update_time %}

**Type**: `TIMESTAMP`**Provider name**: `updateTime`**Description**: Output only. The time at which the instance was most recently updated.

## `zone_id`{% #zone_id %}

**Type**: `STRING`
