Class: Google::Cloud::PubSub::V1::CloudStorageConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/pubsub/v1/pubsub.rb

Overview

Configuration for a Cloud Storage subscription.

Defined Under Namespace

Modules: State Classes: AvroConfig, TextConfig

Instance Attribute Summary collapse

Instance Attribute Details

#avro_config::Google::Cloud::PubSub::V1::CloudStorageConfig::AvroConfig

Returns Optional. If set, message data will be written to Cloud Storage in Avro format.

Note: The following fields are mutually exclusive: avro_config, text_config. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:

  • (::Google::Cloud::PubSub::V1::CloudStorageConfig::AvroConfig)

    Optional. If set, message data will be written to Cloud Storage in Avro format.

    Note: The following fields are mutually exclusive: avro_config, text_config. If a field in that set is populated, all other fields in the set will automatically be cleared.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#bucket::String

Returns Required. User-provided name for the Cloud Storage bucket. The bucket must be created by the user. The bucket name must be without any prefix like "gs://". See the bucket naming requirements.

Returns:

  • (::String)

    Required. User-provided name for the Cloud Storage bucket. The bucket must be created by the user. The bucket name must be without any prefix like "gs://". See the bucket naming requirements.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#filename_datetime_format::String

Returns Optional. User-provided format string specifying how to represent datetimes in Cloud Storage filenames. See the datetime format guidance.

Returns:

  • (::String)

    Optional. User-provided format string specifying how to represent datetimes in Cloud Storage filenames. See the datetime format guidance.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#filename_prefix::String

Returns Optional. User-provided prefix for Cloud Storage filename. See the object naming requirements.

Returns:



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#filename_suffix::String

Returns Optional. User-provided suffix for Cloud Storage filename. See the object naming requirements. Must not end in "/".

Returns:

  • (::String)

    Optional. User-provided suffix for Cloud Storage filename. See the object naming requirements. Must not end in "/".



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#max_bytes::Integer

Returns Optional. The maximum bytes that can be written to a Cloud Storage file before a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be exceeded in cases where messages are larger than the limit.

Returns:

  • (::Integer)

    Optional. The maximum bytes that can be written to a Cloud Storage file before a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be exceeded in cases where messages are larger than the limit.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#max_duration::Google::Protobuf::Duration

Returns Optional. The maximum duration that can elapse before a new Cloud Storage file is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed the subscription's acknowledgment deadline.

Returns:

  • (::Google::Protobuf::Duration)

    Optional. The maximum duration that can elapse before a new Cloud Storage file is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed the subscription's acknowledgment deadline.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#max_messages::Integer

Returns Optional. The maximum number of messages that can be written to a Cloud Storage file before a new file is created. Min 1000 messages.

Returns:

  • (::Integer)

    Optional. The maximum number of messages that can be written to a Cloud Storage file before a new file is created. Min 1000 messages.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#service_account_email::String

Returns Optional. The service account to use to write to Cloud Storage. 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.

Returns:

  • (::String)

    Optional. The service account to use to write to Cloud Storage. 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.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#state::Google::Cloud::PubSub::V1::CloudStorageConfig::State (readonly)

Returns Output only. An output-only field that indicates whether or not the subscription can receive messages.

Returns:



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end

#text_config::Google::Cloud::PubSub::V1::CloudStorageConfig::TextConfig

Returns Optional. If set, message data will be written to Cloud Storage in text format.

Note: The following fields are mutually exclusive: text_config, avro_config. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:

  • (::Google::Cloud::PubSub::V1::CloudStorageConfig::TextConfig)

    Optional. If set, message data will be written to Cloud Storage in text format.

    Note: The following fields are mutually exclusive: text_config, avro_config. If a field in that set is populated, all other fields in the set will automatically be cleared.



1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1753

class CloudStorageConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for writing message data in text format.
  # Message payloads will be written to files as raw text, separated by a
  # newline.
  class TextConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Configuration for writing message data in Avro format.
  # Message payloads and metadata will be written to files as an Avro binary.
  # @!attribute [rw] write_metadata
  #   @return [::Boolean]
  #     Optional. When true, write the subscription name, message_id,
  #     publish_time, attributes, and ordering_key as additional fields in the
  #     output. The subscription name, message_id, and publish_time fields are
  #     put in their own fields while all other message properties other than
  #     data (for example, an ordering_key, if present) are added as entries in
  #     the attributes map.
  # @!attribute [rw] use_topic_schema
  #   @return [::Boolean]
  #     Optional. When true, the output Cloud Storage file will be serialized
  #     using the topic schema, if it exists.
  class AvroConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Possible states for a Cloud Storage subscription.
  module State
    # Default value. This value is unused.
    STATE_UNSPECIFIED = 0

    # The subscription can actively send messages to Cloud Storage.
    ACTIVE = 1

    # Cannot write to the Cloud Storage bucket because of permission denied
    # errors.
    PERMISSION_DENIED = 2

    # Cannot write to the Cloud Storage bucket because it does not exist.
    NOT_FOUND = 3

    # 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 = 4

    # Cannot write to the Cloud Storage bucket due to an incompatibility
    # between the topic schema and subscription settings.
    SCHEMA_MISMATCH = 5

    # Cannot write to the Cloud Storage bucket because the bucket is not in the
    # same location as where Vertex AI models used in `message_transform`s are
    # deployed.
    VERTEX_AI_LOCATION_RESTRICTION = 6
  end
end