TIPCommon.adapters

class TIPCommon.adapters.pubsub.pubsub.PubSubAdapter

클래스 TIPCommon.adapters.pubsub.pubsub.PubSubAdapter(session, project_id=None, logger=None, region=None)

기지: object

프로젝트 Pub/Sub 주제 및 구독을 관리하는 어댑터 클래스입니다. Google Cloud

ack

ack(sub_name, ack_ids)

PubSubAdapter.pull()에서 반환된 AcknowledgeRequest 응답에서 ackIds와 연결된 메시지를 확인합니다.

매개변수
sub_name str

정기 결제 이름입니다.

ack_ids list[str]

확인된 메시지의 확인 ID 목록입니다. 목록은 Pub/Sub 시스템에서 PubSubAdapter.pull() 응답으로 반환됩니다.

static build_pubsub_message

static build_pubsub_message(message_content, encoding='utf-8', ordering_key=None, **attr)

PubSubMessage 객체를 만듭니다.

매개변수
message_content str

메시지 콘텐츠입니다.

encoding str

메시지 텍스트를 인코딩하거나 디코딩할 인코딩 유형입니다.

기본값은 UTF-8입니다.

ordering_key str

선택사항입니다.

구성된 경우 이 매개변수는 게시 순서를 따라야 하는 모든 관련 메시지를 식별합니다.

**attr str

선택사항입니다.

메시지 객체 속성으로 전달할 속성입니다.

반환

TIPCommon.adapters.pubsub.PubSubMessage 객체

반환 유형

PubSubMessage

create_subscription

create_subscription(sub_name, topic, **attr)

지정된 주제에 대한 Pub/Sub 구독을 만듭니다.

매개변수
sub_name str

정기 결제 이름입니다.

topic str

구독을 만들 Pub/Sub 주제 이름입니다.

**attr 정기 결제 요청에 전달할 추가 매개변수입니다.

반환

생성된 정기 결제의 TIPCommon.adapters.pubsub.Subscription 객체입니다.

반환 유형

Subscription

create_topic

create_topic(topic_name)

Google Cloud 프로젝트에서 Pub/Sub 주제를 만듭니다.

매개변수
topic_name str

주제 이름입니다.

이름은 Google Cloud 리소스 이름 규칙에 해당해야 합니다.

반환

생성된 주제의 TIPCommon.adapters.pubsub.Topic 객체입니다.

반환 유형

Topic

delete_subscription

delete_subscription(sub_name)

Google Cloud 프로젝트에서 Pub/Sub 구독을 삭제합니다.

매개변수
sub_name str

삭제할 정기 결제 이름입니다.

delete_topic

delete_topic(topic_name)

Google Cloud 프로젝트에서 Pub/Sub 주제를 삭제합니다.

매개변수
topic_name str

삭제할 주제입니다.

static from_credentials

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

google.oauth2.credentials.Credentials 객체에서 PubSubAdapter 객체를 만듭니다.

매개변수
credentials google.oauth2.credentials.Credentials

google.oauth2.credentials.Credentials 객체

project_id 선택사항입니다.

str

Google Cloud 프로젝트 ID입니다.

제공되지 않으면 함수는 기본적으로 사용자 인증 정보 객체에 구성된 프로젝트를 사용하려고 시도합니다.

verify_ssl 선택사항입니다.

bool

HTTP 세션에 SSL 인증서 확인이 사용 설정되어 있는지 지정합니다.

quota_project 선택사항입니다.

str

할당량 및 결제에 사용할 프로젝트입니다.

logger 선택사항입니다.

SiemplifyLogger

SiemplifyLogger 객체

region str

Pub/Sub가 작동할 리전입니다.

반환

PubSubAdapter 객체

반환 유형

PubSubAdapter

static from_service_account_info

static subscription_name(user_service_account, project_id=None, verify_ssl=True, quota_project=None, logger=None)

service_account JSON에서 PubSubAdapter 객체를 만듭니다.

매개변수
user_service_account str

Google Cloud 서비스 계정 JSON(텍스트 형식)

project_id 선택사항입니다.

str

Google Cloud 프로젝트 ID입니다.

제공되지 않으면 함수는 기본적으로 사용자 인증 정보 객체에 구성된 프로젝트를 사용하려고 시도합니다.

verify_ssl 선택사항입니다.

bool

HTTP 세션에 SSL 인증서 확인이 사용 설정되어 있는지 지정합니다.

quota_project 선택사항입니다.

str

할당량 및 결제에 사용할 프로젝트입니다.

logger 선택사항입니다.

SiemplifyLogger

SiemplifyLogger 객체

반환

PubSubAdapter 객체

반환 유형

PubSubAdapter

get_subscription

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

Pub/Sub 구독을 가져옵니다.

매개변수
sub_name str

정기 결제 이름입니다.

topic str

구독을 만들 Pub/Sub 주제 이름입니다.

create_if_not_existTrue인 경우 필수입니다.

create_if_not_exist Google Cloud 에 Pub/Sub 구독이 없으면 구독을 만듭니다.
**attr 정기 결제 생성 요청에 전달할 추가 매개변수입니다.

반환

가져온 정기 결제의 TIPCommon.adapters.pubsub.Subscription 객체입니다.

반환 유형

Subscription

get_topic

get_topic(topic_name, create_if_not_exist=False)

구성된 Google Cloud프로젝트에서 Pub/Sub 주제 객체를 가져옵니다.

매개변수
topic_name str

주제 이름입니다 (projects/PROJECT_ID/topics/ 접두사 없이 간소화됨).

create_if_not_exist bool

Google Cloud 에 Pub/Sub 주제가 없으면 만듭니다.

반환

수신된 주제의 TIPCommon.adapters.pubsub.Topic 객체입니다.

반환 유형

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)

기존 정기 결제를 업데이트합니다.

매개변수
sub_name str

정기 결제 이름입니다.

topic_name str

구독이 메시지를 수신하는 주제의 이름입니다.

push_config dict

선택사항입니다. 푸시 전송 엔드포인트의 구성입니다.

bigquery_config dict

선택사항입니다. BigQuery 구독의 구성입니다.

cloud_storage_config dict

선택사항입니다. Cloud Storage 구독의 구성입니다.

ack_deadline_seconds int

선택사항입니다. 메시지가 다시 전송되기 전에 Pub/Sub가 구독자가 수신된 메시지를 확인하기를 기다리는 대략적인 시간입니다.

retain_acked_messages bool

선택사항입니다. 확인된 메시지를 보관할지 여부를 나타냅니다.

retention_duration str

선택사항입니다. 메시지가 게시된 시점부터 구독의 백로그에 미확인 메시지를 보관하는 시간입니다.

labels dict

선택사항입니다. 정기 결제를 구성하는 데 사용되는 키-값 쌍입니다.

enable_message_ordering bool

선택사항입니다. True인 경우 PubsubMessage에서 동일한 ordering_key로 게시된 메시지는 Pub/Sub 시스템에서 수신한 순서대로 전달됩니다.

expiration_policy dict

선택사항입니다. 이 정기 결제의 만료 조건을 지정하는 정책입니다.

query_filter str

선택사항입니다. 구독에 전송되는 메시지를 지정하는 Pub/Sub 필터 언어로 작성된 표현식입니다.

dead_letter_policy dict

선택사항입니다. 이 구독에서 메시지를 데드 레터링하는 조건을 지정하는 정책입니다.

return_policy dict

선택사항입니다. 메일 반환 조건을 지정하는 정책입니다.

detached bool

선택사항입니다. 구독이 주제에서 분리되었는지 여부를 나타냅니다.

enable_once_delivery bool

선택사항입니다. True인 경우 Pub/Sub는 이 구독의 메시지에 대해 '1회만 전송'을 제공합니다.

반환

수신된 정기 결제의 TIPCommon.adapters.pubsub.Subscription 객체입니다.

반환 유형

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)

기존 주제를 업데이트합니다.

매개변수
topic_name str

주제 이름

labels dict

선택사항입니다. 주제를 구성하는 데 사용되는 키-값 쌍입니다.

message_storage_policy dict

선택사항입니다. 메시지가 저장 상태로 저장되는 리전을 제한하는 정책입니다.

kms_key_name str

선택사항입니다. 이 주제에 게시된 메시지를 보호하는 데 사용할 Cloud Key Management Service CryptoKey의 리소스 이름입니다.

schema_settings dict

선택사항입니다. 스키마에 대해 게시된 메시지의 유효성을 검사하는 설정입니다.

satisfies_pzs bool

선택사항입니다. 나중에 사용하기 위해 예약되어 있습니다. 이 필드는 주제가 물리적 영역 분리를 충족하는 경우 True로 설정됩니다.

retention_duration str

선택사항입니다. 게시된 메시지가 주제에 보관되는 시간입니다. 구성된 경우 구독 구성과 관계없이 메시지가 이 기간 동안 보관됩니다.

반환

수신된 주제의 TIPCommon.adapters.pubsub.Topic 객체입니다.

반환 유형

Topic

게시

publish(topic_name, messages)

PubSubMessage 객체 목록을 주제에 게시합니다.

매개변수
topic_name str

메시지 게시의 타겟 주제 이름입니다.

messages list

PubSubMessage 객체가 포함된 목록입니다.

PubSubAdapter.build_message() 정적 메서드는 이러한 객체를 구성하는 데 사용됩니다.

반환

메시지 ID 목록입니다.

반환 유형

list[str]

가져오다

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

Pub/Sub 구독에서 메시지를 가져옵니다.

매개변수
sub_name str

정기 결제 이름입니다.

limit int

이 요청에서 반환할 최대 메시지 수입니다.

timeout int

HTTP 요청 제한 시간(초)입니다.

기본값은 60입니다.

encoding str

Pub/Sub 메시지 인코딩입니다.

기본값은 utf-8입니다.

반환

TIPCommon.adapters.pubsub.ReceivedMessage 객체 목록입니다.

반환 유형

ReceivedMessage

static subscription_name

static subscription_name(project_id, sub_name)

다음 형식으로 전체 정기 결제 이름을 가져옵니다. projects/project_id/topics/topic_name

매개변수
project_id str

리소스가 포함된 프로젝트 이름입니다.

sub_name str

Pub/Sub 구독 이름입니다.

반환

전체 정기 결제 이름(projects/project_id/topics/topic_name 형식)입니다.

반환 유형

str

static topic_name

static topic_name(project_id, topic)

다음 형식의 전체 주제 이름을 가져옵니다. projects/project_id/topics/topic_name

매개변수
project_id str

리소스를 포함하는 프로젝트 이름입니다.

topic str

Pub/Sub 주제 이름입니다.

반환

전체 주제 이름: projects/project_id/topics/topic_name

반환 유형

str

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.