TIPCommon.adapters

class TIPCommon.adapters.pubsub.pubsub.PubSubAdapter

classe TIPCommon.adapters.pubsub.pubsub.PubSubAdapter(session, project_id=None, logger=None, region=None)

Bases: object

Classe do adaptador para gerir tópicos e subscrições do Pub/Sub do projeto. Google Cloud

ack

ack(sub_name, ack_ids)

Confirma as mensagens associadas à empresa ackIDs na AcknowledgeRequestresposta devolvida por PubSubAdapter.pull().

Parâmetros
sub_name (str)

O nome da subscrição.

ack_ids (list[str])

Uma lista de IDs de confirmação para as mensagens que estão a ser confirmadas. A lista é devolvida pelo sistema Pub/Sub na resposta PubSubAdapter.pull().

static build_pubsub_message

estático build_pubsub_message(message_content, encoding='utf-8', ordering_key=None, **attr)

Cria um objeto PubSubMessage.

Parâmetros
message_content (str)

O conteúdo da mensagem.

encoding (str)

O tipo de codificação para codificar ou descodificar o texto da mensagem.

O valor predefinido é UTF-8.

ordering_key Opcional (str)

Se for usado, o parâmetro identifica todas as mensagens relacionadas que têm de seguir a ordem de publicação.

**attr Opcional

(str)

Os atributos a transmitir como atributos do objeto de mensagem.

Devoluções

TIPCommon.adapters.pubsub.PubSubMessage objeto.

Tipo devolvido

PubSubMessage

create_subscription

create_subscription(sub_name, topic, **attr)

Cria uma subscrição do Pub/Sub para o tópico especificado.

Parâmetros
sub_name (str)

O nome da subscrição.

topic (str)

Um nome do tópico Pub/Sub para o qual criar a subscrição.

**attr Parâmetros adicionais a transmitir ao pedido de subscrição.

Devoluções

TIPCommon.adapters.pubsub.Subscription objeto da subscrição criada.

Tipo devolvido

Subscription

create_topic

create_topic(topic_name)

Cria um tópico Pub/Sub num Google Cloud projeto.

Parâmetros
topic_name (str)

O nome do tópico. O nome tem de corresponder às Google Cloud regras de nomes de recursos.

Devoluções

TIPCommon.adapters.pubsub.Topic objeto do tópico criado.

Tipo devolvido

Topic

delete_subscription

delete_subscription(sub_name)

Elimina uma subscrição do Pub/Sub de um Google Cloud projeto.

Parâmetros
sub_name (str)

O nome da subscrição a remover.

delete_topic

delete_topic(topic_name)

Elimina um tópico do Pub/Sub de um Google Cloud projeto.

Parâmetros
topic_name (str)

O tópico a remover.

static from_credentials

estático from_credentials(credentials, project_id=None, verify_ssl=True, quota_project=None, logger=None, region=None)

Cria um objeto PubSubAdapter a partir de um objeto google.oauth2.credentials.Credentials.

Parâmetros
credentials (google.oauth2.credentials.Credentials)

Um objeto google.oauth2.credentials.Credentials.

project_id Opcional (str)

O Google Cloud ID do projeto.

Se não for fornecida, a função tenta usar o projeto configurado no objeto de credenciais por predefinição.

verify_ssl Opcional (bool)

Especifica se a validação do certificado SSL está ativada para sessões HTTP.

quota_project Opcional (str)

O projeto a usar para a quota e a faturação.

logger Opcional (SiemplifyLogger)

Um objeto SiemplifyLogger.

region (str)

A região em que o Pub/Sub funciona.

Devoluções

Um objeto PubSubAdapter.

Tipo devolvido

PubSubAdapter

static from_service_account_info

estático subscription_name(project_id, sub_name)

Cria um objeto PubSubAdapter a partir de JSON service_account.

Parâmetros
user_service_account (str)

O Google Cloud JSON da conta de serviço em formato de texto.

project_id Opcional (str)

O Google Cloud ID do projeto.

Se não for fornecida, a função tenta usar o projeto configurado no objeto de credenciais por predefinição.

verify_ssl Opcional (bool)

Especifica se a validação do certificado SSL está ativada para sessões HTTP.

quota_project Opcional (str)

O projeto a usar para a quota e a faturação.

logger Opcional (SiemplifyLogger)

Um objeto SiemplifyLogger.

Devoluções

Um objeto PubSubAdapter.

Tipo devolvido

PubSubAdapter

get_subscription

get_subscription(sub_name, topic=None, create_if_not_exist=False, **attr)

Obtém uma subscrição do Pub/Sub.

Parâmetros
sub_name (str)

O nome da subscrição.

topic (str)

Um nome do tópico Pub/Sub para criar uma subscrição.

Obrigatório se create_if_not_exist for True.

create_if_not_exist Cria a subscrição do Pub/Sub em Google Cloud se não existir.
**attr Parâmetros adicionais a transmitir ao pedido de criação da subscrição.

Devoluções

Objeto TIPCommon.adapters.pubsub.Subscription da subscrição obtida.

Tipo devolvido

Subscription

get_topic

get_topic(topic_name, create_if_not_exist=False)

Obtém um objeto de tópico do Pub/Sub do projeto Google Cloud configurado.

Parâmetros
topic_name (str)

Nome do tópico (simplificado, sem o prefixo projects/PROJECT_ID/topics/ ).

create_if_not_exist bool

Cria o tópico Pub/Sub em Google Cloud, se não existir.

Devoluções

TIPCommon.adapters.pubsub.Topic objeto do tópico recebido.

Tipo devolvido

Topic

patch_subscription

patch_subscription(sub_name, topic_name, push_config=None, bigquery_config=None, cloud_storage_config=None, ack_deadline_seconds=None, retain_acked_messages=None, retention_duration=None, labels=None, enable_message_ordering=None, expiration_policy=None, query_filter=None, dead_letter_policy=None, return_policy=None, detached=None, enable_once_delivery=None)

Atualiza uma subscrição existente.

Parâmetros
sub_name (str)

O nome da subscrição.

topic_name (str)

O nome do tópico a partir do qual esta subscrição recebe mensagens.

Devoluções

TIPCommon.adapters.pubsub.Subscription objeto da subscrição recebida.

Tipo devolvido

Subscription

patch_topic

patch_topic(topic_name, labels=None, message_storage_policy=None, kms_key_name=None, schema_settings=None, satisfies_pzs=None, retention_duration=None)

Atualiza um tópico existente.

Parâmetros
topic_name (str)

O nome do tópico.

Devoluções

TIPCommon.adapters.pubsub.Topic objeto do tópico recebido.

Tipo devolvido

Topic

publicar

publish(topic_name, messages)

Publicar uma lista de objetos PubSubMessage num tópico.

Parâmetros
topic_name (str)

O nome do tópico para publicar as mensagens.

messages list

Uma lista de objetos PubSubMessage.

Pode criar a lista com o método estático PubSubAdapter.build_message().

Devoluções

Lista de IDs das mensagens.

Tipo devolvido

list[str]

puxar

pull(sub_name, limit, timeout=60, encoding='utf-8')

Extrair mensagens de subscrições do Pub/Sub.

Parâmetros
sub_name (str)

O nome da subscrição.

limit int

O número máximo de mensagens a devolver para este pedido.

timeout int

Tempo limite do pedido de HTTP em segundos.

A predefinição é de 60 segundos.

encoding (str)

Uma codificação de mensagens do Pub/Sub. A predefinição é utf-8.

Devoluções

Lista de TIPCommon.adapters.pubsub.ReceivedMessage objetos.

Tipo devolvido

list[ReceivedMessage]

static subscription_name

estático subscription_name(project_id, sub_name)

Obtém o nome completo da subscrição no seguinte formato: projects/project_id/subscriptions/subscription_name.

Parâmetros
project_id (str)

O nome do projeto que contém o recurso.

sub_name (str)

Um nome de subscrição do Pub/Sub.

Devoluções

Um nome completo da subscrição no seguinte formato: projects/project_id/subscriptions/subscription_name.

Tipo devolvido

str

static topic_name

estático topic_name(project_id, topic)

Recupera projects/project_id/topics/topic_name.

Parâmetros
project_id (str)

O nome do projeto que contém o recurso.

topic (str)

Um nome do tópico Pub/Sub.

Devoluções

Um nome completo do tópico: projects/project_id/topics/topic_name.

Tipo devolvido

str

class TIPCommon.adapters.pubsub.data_models.PubSubMessage

classe TIPCommon.adapters.pubsub.data_models.PubSubMessage(raw_data: 'dict', data: 'str' = None, attributes: 'dict' = None, message_id: 'str' = None, publish_time: 'int' = None, ordering_key: 'str' = None)

Bases: object

attributes: dict= None

data: str= None

json()

message_id: str= None

ordering_key: str= None

publish_time: int= None

raw_data: dict

class TIPCommon.adapters.pubsub.data_models.ReceivedMessage

classe TIPCommon.adapters.pubsub.data_models.ReceivedMessage(raw_data: 'dict', ack_id: 'str', message: 'PubSubMessage', delivery_attempt: 'int')

Bases: object

ack_id: str

delivery_attempt: int

json()

message: PubSubMessage

raw_data: dict

class TIPCommon.adapters.pubsub.data_models.SchemaSettings

classe TIPCommon.adapters.pubsub.data_models.SchemaSettings(raw_data: 'dict', schema: 'str', encoding: 'str' = None, first_revision_id: 'str' = None, last_revision_id: 'str' = None)

Bases: object

encoding: str= None

first_revision_id: str= None

json()

last_revision_id: str= None

raw_data: dict

schema: str

class TIPCommon.adapters.pubsub.data_models.Subscription

classe TIPCommon.adapters.pubsub.data_models.Subscription(raw_data: 'dict', name: 'str', identifier: 'str', topic_identifier: 'str', state: 'str', ack_deadline_secs: 'int' = None, retain_ack_messages: 'bool' = None, message_retention_duration: 'int' = None, labels: 'dict' = None, message_ordering: 'bool' = None, query_filter: 'str' = None, topic_message_retention_duration: 'int' = None)

Bases: object

ack_deadline_secs: int= None

identifier: str

json()

labels: dict= None

message_ordering: bool= None

message_retention_duration: int= None

name: str

query_filter: str= None

raw_data: dict

retain_ack_messages: bool= None

state: str

topic_identifier: str

topic_message_retention_duration: int= None

class TIPCommon.adapters.pubsub.data_models.Topic

classe TIPCommon.adapters.pubsub.data_models.Topic(raw_data: 'dict', name: 'str', identifier: 'str', labels: 'dict' = None, schema_settings: 'SchemaSettings' = None, message_retention_duration: 'int' = None)

Bases: object

identifier: str

json()

labels: dict= None

message_retention_duration: int= None

name: str

raw_data: dict

schema_settings: SchemaSettings= None

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.