Class: Google::Cloud::PubSub::V1::BigtableConfig
- Inherits:
-
Object
- Object
- Google::Cloud::PubSub::V1::BigtableConfig
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/pubsub/v1/pubsub.rb
Overview
Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows:
- row key: subscription name and message ID delimited by #.
- columns: message bytes written to a single column family "data" with an empty-string column qualifier.
- cell timestamp: the message publish timestamp.
Defined Under Namespace
Modules: State
Instance Attribute Summary collapse
-
#app_profile_id ⇒ ::String
Optional.
-
#service_account_email ⇒ ::String
Optional.
-
#state ⇒ ::Google::Cloud::PubSub::V1::BigtableConfig::State
readonly
Output only.
-
#table ⇒ ::String
Optional.
-
#write_metadata ⇒ ::Boolean
Optional.
Instance Attribute Details
#app_profile_id ⇒ ::String
Returns Optional. The app profile to use for the Bigtable writes. If not specified, the "default" application profile will be used. The app profile must use single-cluster routing.
1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 |
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1650 class BigtableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Possible states for a Bigtable subscription. # Note: more states could be added in the future. Please code accordingly. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The subscription can actively send messages to Bigtable. ACTIVE = 1 # Cannot write to Bigtable because the instance, table, or app profile # does not exist. NOT_FOUND = 2 # Cannot write to Bigtable because the app profile is not configured for # single-cluster routing. APP_PROFILE_MISCONFIGURED = 3 # Cannot write to Bigtable because of permission denied errors. # This can happen if: # - The Pub/Sub service agent has not been granted the # [appropriate Bigtable IAM permission # bigtable.tables.mutateRows](\\{$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) # - The bigtable.googleapis.com API is not enabled for the project # ([instructions](\\{$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) PERMISSION_DENIED = 4 # Cannot write to Bigtable because of a missing column family ("data") or # if there is no structured row key for the subscription name + message ID. SCHEMA_MISMATCH = 5 # Cannot write to the destination because enforce_in_transit is set to true # and the destination locations are not in the allowed regions. IN_TRANSIT_LOCATION_RESTRICTION = 6 # Cannot write to Bigtable because the table is not in the same location as # where Vertex AI models used in `message_transform`s are deployed. VERTEX_AI_LOCATION_RESTRICTION = 7 end end |
#service_account_email ⇒ ::String
Returns Optional. The service account to use to write to Bigtable. The subscription
creator or updater that specifies this field must have
iam.serviceAccounts.actAs permission on the service account. If not
specified, the Pub/Sub service
agent,
service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 |
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1650 class BigtableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Possible states for a Bigtable subscription. # Note: more states could be added in the future. Please code accordingly. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The subscription can actively send messages to Bigtable. ACTIVE = 1 # Cannot write to Bigtable because the instance, table, or app profile # does not exist. NOT_FOUND = 2 # Cannot write to Bigtable because the app profile is not configured for # single-cluster routing. APP_PROFILE_MISCONFIGURED = 3 # Cannot write to Bigtable because of permission denied errors. # This can happen if: # - The Pub/Sub service agent has not been granted the # [appropriate Bigtable IAM permission # bigtable.tables.mutateRows](\\{$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) # - The bigtable.googleapis.com API is not enabled for the project # ([instructions](\\{$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) PERMISSION_DENIED = 4 # Cannot write to Bigtable because of a missing column family ("data") or # if there is no structured row key for the subscription name + message ID. SCHEMA_MISMATCH = 5 # Cannot write to the destination because enforce_in_transit is set to true # and the destination locations are not in the allowed regions. IN_TRANSIT_LOCATION_RESTRICTION = 6 # Cannot write to Bigtable because the table is not in the same location as # where Vertex AI models used in `message_transform`s are deployed. VERTEX_AI_LOCATION_RESTRICTION = 7 end end |
#state ⇒ ::Google::Cloud::PubSub::V1::BigtableConfig::State (readonly)
Returns Output only. An output-only field that indicates whether or not the subscription can receive messages.
1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 |
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1650 class BigtableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Possible states for a Bigtable subscription. # Note: more states could be added in the future. Please code accordingly. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The subscription can actively send messages to Bigtable. ACTIVE = 1 # Cannot write to Bigtable because the instance, table, or app profile # does not exist. NOT_FOUND = 2 # Cannot write to Bigtable because the app profile is not configured for # single-cluster routing. APP_PROFILE_MISCONFIGURED = 3 # Cannot write to Bigtable because of permission denied errors. # This can happen if: # - The Pub/Sub service agent has not been granted the # [appropriate Bigtable IAM permission # bigtable.tables.mutateRows](\\{$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) # - The bigtable.googleapis.com API is not enabled for the project # ([instructions](\\{$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) PERMISSION_DENIED = 4 # Cannot write to Bigtable because of a missing column family ("data") or # if there is no structured row key for the subscription name + message ID. SCHEMA_MISMATCH = 5 # Cannot write to the destination because enforce_in_transit is set to true # and the destination locations are not in the allowed regions. IN_TRANSIT_LOCATION_RESTRICTION = 6 # Cannot write to Bigtable because the table is not in the same location as # where Vertex AI models used in `message_transform`s are deployed. VERTEX_AI_LOCATION_RESTRICTION = 7 end end |
#table ⇒ ::String
Returns Optional. The unique name of the table to write messages to.
Values are of the form
projects/<project>/instances/<instance>/tables/<table>.
1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 |
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1650 class BigtableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Possible states for a Bigtable subscription. # Note: more states could be added in the future. Please code accordingly. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The subscription can actively send messages to Bigtable. ACTIVE = 1 # Cannot write to Bigtable because the instance, table, or app profile # does not exist. NOT_FOUND = 2 # Cannot write to Bigtable because the app profile is not configured for # single-cluster routing. APP_PROFILE_MISCONFIGURED = 3 # Cannot write to Bigtable because of permission denied errors. # This can happen if: # - The Pub/Sub service agent has not been granted the # [appropriate Bigtable IAM permission # bigtable.tables.mutateRows](\\{$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) # - The bigtable.googleapis.com API is not enabled for the project # ([instructions](\\{$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) PERMISSION_DENIED = 4 # Cannot write to Bigtable because of a missing column family ("data") or # if there is no structured row key for the subscription name + message ID. SCHEMA_MISMATCH = 5 # Cannot write to the destination because enforce_in_transit is set to true # and the destination locations are not in the allowed regions. IN_TRANSIT_LOCATION_RESTRICTION = 6 # Cannot write to Bigtable because the table is not in the same location as # where Vertex AI models used in `message_transform`s are deployed. VERTEX_AI_LOCATION_RESTRICTION = 7 end end |
#write_metadata ⇒ ::Boolean
Returns Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.
1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 |
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1650 class BigtableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Possible states for a Bigtable subscription. # Note: more states could be added in the future. Please code accordingly. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The subscription can actively send messages to Bigtable. ACTIVE = 1 # Cannot write to Bigtable because the instance, table, or app profile # does not exist. NOT_FOUND = 2 # Cannot write to Bigtable because the app profile is not configured for # single-cluster routing. APP_PROFILE_MISCONFIGURED = 3 # Cannot write to Bigtable because of permission denied errors. # This can happen if: # - The Pub/Sub service agent has not been granted the # [appropriate Bigtable IAM permission # bigtable.tables.mutateRows](\\{$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) # - The bigtable.googleapis.com API is not enabled for the project # ([instructions](\\{$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) PERMISSION_DENIED = 4 # Cannot write to Bigtable because of a missing column family ("data") or # if there is no structured row key for the subscription name + message ID. SCHEMA_MISMATCH = 5 # Cannot write to the destination because enforce_in_transit is set to true # and the destination locations are not in the allowed regions. IN_TRANSIT_LOCATION_RESTRICTION = 6 # Cannot write to Bigtable because the table is not in the same location as # where Vertex AI models used in `message_transform`s are deployed. VERTEX_AI_LOCATION_RESTRICTION = 7 end end |