TIPCommon.adapters

class TIPCommon.adapters.pubsub.pubsub.PubSubAdapter

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

Bases: object

Classe adaptadora para gerenciar tópicos e assinaturas do Pub/Sub do projeto Google Cloud .

ack

ack(sub_name, ack_ids)

Confirma as mensagens associadas ao ackIDs na resposta AcknowledgeRequest retornada de PubSubAdapter.pull().

Parâmetros
sub_name (str)

O nome da assinatura.

ack_ids (list[str]))

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

static build_pubsub_message

static 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 decodificar o texto da mensagem.

O valor padrão é UTF-8.

ordering_key Opcional (str)

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

**attr Opcional

(str)

Os atributos a serem transmitidos como atributos de objeto de mensagem.

Retorna

Objeto TIPCommon.adapters.pubsub.PubSubMessage.

Tipo de retorno

PubSubMessage

create_subscription

create_subscription(sub_name, topic, **attr)

Cria uma assinatura do Pub/Sub para o tópico especificado.

Parâmetros
sub_name (str)

O nome da assinatura.

topic (str)

Um nome de tópico do Pub/Sub para criar a assinatura.

**attr Parâmetros adicionais a serem transmitidos para a solicitação de assinatura.

Retorna

Objeto TIPCommon.adapters.pubsub.Subscription da assinatura criada.

Tipo de retorno

Subscription

create_topic

create_topic(topic_name)

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

Parâmetros
topic_name (str)

O nome do tópico. O nome precisa corresponder às Google Cloud regras de nomenclatura de recursos.

Retorna

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

Tipo de retorno

Topic

delete_subscription

delete_subscription(sub_name)

Exclui uma assinatura do Pub/Sub de um projeto do Google Cloud .

Parâmetros
sub_name (str)

O nome da assinatura a ser removida.

delete_topic

delete_topic(topic_name)

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

Parâmetros
topic_name (str)

O tópico a ser removido.

static from_credentials

static from_credentials(credentials, project_id=None, verify_ssl=True, quota_project=None, logger=None, region=None)

Cria o objeto PubSubAdapter com base no objeto google.oauth2.credentials.Credentials.

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

Um objeto google.oauth2.credentials.Credentials.

project_id Opcional (str)

O ID do projeto Google Cloud .

Se não for fornecido, a função tentará usar o projeto configurado no objeto de credenciais por padrão.

verify_ssl Opcional (bool)

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

quota_project Opcional (str)

O projeto a ser usado para cota e faturamento.

logger Opcional (SiemplifyLogger)

Um objeto SiemplifyLogger.

region (str)

A região em que o Pub/Sub vai funcionar.

Retorna

Um objeto PubSubAdapter.

Tipo de retorno

PubSubAdapter

static from_service_account_info

static subscription_name(project_id, sub_name)

Cria um objeto PubSubAdapter de service_account JSON.

Parâmetros
user_service_account (str)

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

project_id Opcional (str)

O ID do projeto Google Cloud .

Se não for fornecido, a função tentará usar o projeto configurado no objeto de credenciais por padrão.

verify_ssl Opcional (bool)

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

quota_project Opcional (str)

O projeto a ser usado para cota e faturamento.

logger Opcional (SiemplifyLogger)

Um objeto SiemplifyLogger.

Retorna

Um objeto PubSubAdapter.

Tipo de retorno

PubSubAdapter

get_subscription

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

Recupera uma assinatura do Pub/Sub.

Parâmetros
sub_name (str)

O nome da assinatura.

topic (str)

Um nome de tópico do Pub/Sub para criar uma assinatura.

Obrigatório se create_if_not_exist for True.

create_if_not_exist Cria a assinatura do Pub/Sub em Google Cloud se ela não existir.
**attr Parâmetros adicionais a serem transmitidos para a solicitação de criação de assinatura.

Retorna

Objeto TIPCommon.adapters.pubsub.Subscription da assinatura recuperada.

Tipo de retorno

Subscription

get_topic

get_topic(topic_name, create_if_not_exist=False)

Recupera um objeto de tópico do Pub/Sub do projeto Google Cloudconfigurado.

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 do Pub/Sub em Google Cloud, se ele não existir.

Retorna

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

Tipo de retorno

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 assinatura.

Parâmetros
sub_name (str)

O nome da assinatura.

topic_name (str)

O nome do tópico de que esta assinatura recebe mensagens.

Retorna

Objeto TIPCommon.adapters.pubsub.Subscription da assinatura recebida.

Tipo de retorno

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 tema.

Parâmetros
topic_name (str)

O nome do tema.

Retorna

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

Tipo de retorno

Topic

publish

publish(topic_name, messages)

Publica uma lista de objetos PubSubMessage em um tópico.

Parâmetros
topic_name (str)

O nome do tópico em que as mensagens serão publicadas.

messages list

Uma lista de objetos PubSubMessage.

É possível criar a lista com o método estático PubSubAdapter.build_message().

Retorna

Lista de IDs de mensagens.

Tipo de retorno

list[str]

pull

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

Receber mensagens de assinaturas do Pub/Sub.

Parâmetros
sub_name (str)

O nome da assinatura.

limit int

O número máximo de mensagens a serem retornadas para esta solicitação.

timeout int

Tempo limite de solicitação HTTP em segundos.

O padrão é de 60 segundos.

encoding (str)

Uma codificação de mensagem do Pub/Sub. O padrão é utf-8.

Retorna

Lista de objetos TIPCommon.adapters.pubsub.ReceivedMessage.

Tipo de retorno

list[ReceivedMessage]

static subscription_name

static subscription_name(project_id, sub_name)

Recupera o nome completo da assinatura 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 assinatura do Pub/Sub.

Retorna

Um nome de assinatura completo no seguinte formato: projects/project_id/subscriptions/subscription_name.

Tipo de retorno

str

static topic_name

static 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 de tópico do Pub/Sub.

Retorna

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

Tipo de retorno

str

class TIPCommon.adapters.pubsub.data_models.PubSubMessage

class 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

class 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

class 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

class 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

class 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 do Google SecOps.