Class: Google::Cloud::PubSub::V1::BigQueryConfig

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 BigQuery subscription.

Defined Under Namespace

Modules: State

Instance Attribute Summary collapse

Instance Attribute Details

#drop_unknown_fields::Boolean

Returns Optional. When true and use_topic_schema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.

Returns:

  • (::Boolean)

    Optional. When true and use_topic_schema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end

#service_account_email::String

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



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end

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

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

Returns:



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end

#table::String

Returns Optional. The name of the table to which to write data, of the form {projectId}.{datasetId}.{tableId}.

Returns:

  • (::String)

    Optional. The name of the table to which to write data, of the form {projectId}.{datasetId}.{tableId}



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end

#use_table_schema::Boolean

Returns Optional. When true, use the BigQuery table's schema as the columns to write to in BigQuery. use_table_schema and use_topic_schema cannot be enabled at the same time.

Returns:

  • (::Boolean)

    Optional. When true, use the BigQuery table's schema as the columns to write to in BigQuery. use_table_schema and use_topic_schema cannot be enabled at the same time.



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end

#use_topic_schema::Boolean

Returns Optional. When true, use the topic's schema as the columns to write to in BigQuery, if it exists. use_topic_schema and use_table_schema cannot be enabled at the same time.

Returns:

  • (::Boolean)

    Optional. When true, use the topic's schema as the columns to write to in BigQuery, if it exists. use_topic_schema and use_table_schema cannot be enabled at the same time.



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  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. 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.

Returns:

  • (::Boolean)

    Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table. 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.



1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
# File 'proto_docs/google/pubsub/v1/pubsub.rb', line 1525

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

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

    # The subscription can actively send messages to BigQuery
    ACTIVE = 1

    # Cannot write to the BigQuery table because of permission denied errors.
    # This can happen if
    # - Pub/Sub SA has not been granted the [appropriate BigQuery IAM
    # permissions](https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account)
    # - bigquery.googleapis.com API is not enabled for the project
    # ([instructions](https://cloud.google.com/service-usage/docs/enable-disable))
    PERMISSION_DENIED = 2

    # Cannot write to the BigQuery table because it does not exist.
    NOT_FOUND = 3

    # Cannot write to the BigQuery table due to a schema mismatch.
    SCHEMA_MISMATCH = 4

    # 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 = 5
  end
end