Создать подписку Google Cloud Pub / Sub для корзины?

#google-cloud-platform #google-cloud-storage #google-cloud-pubsub

#google-облачная платформа #google-облачное хранилище #google-cloud-pubsub

Вопрос:

Я не нахожу много информации об этом, я хотел бы создавать Pub/Sub subscription всякий раз, когда происходит изменение в csv файле numbers.csv , который называется сохраненным в корзине GCP my_storage . Я могу создать Cloud pub-sub, но только для отправки сообщения с определенными интервалами, но не на основе какого-либо события. Как я могу настроить этот Pub / Sub, чтобы просто получать сообщение при изменении в моей корзине? Спасибо. Я прочитал документацию GCP, но это сбивает с толку.

Ответ №1:

Вы можете найти официальную документацию:

Использование уведомлений о пабликах / подписках для облачного хранилища

Пожалуйста, выполните необходимые действия из документации, а затем примените конфигурацию уведомлений.

Следующие шаги добавят конфигурацию уведомлений в вашу корзину, которая отправляет уведомления для всех поддерживаемых событий.

gsutil notification create -t TOPIC_NAME -f json gs://BUCKET_NAME

Чтобы отправлять уведомления для подмножества событий, включите флаг -e.

Поддерживаемые события:

 OBJECT_FINALIZE 
OBJECT_METADATA_UPDATE
OBJECT_DELETE   
OBJECT_ARCHIVE
  

Редактировать

Пример: уведомление — Настройка уведомления об изменении объекта

Создайте конфигурацию уведомлений, которая отправляет событие только при создании нового объекта:

gsutil notification create -f json -t TOPIC_NAME -e OBJECT_FINALIZE gs://example-bucket

Комментарии:

1. Спасибо за ваш ответ. Я также прочитал эту документацию, но для меня это было не совсем понятно. Куда мне добавить флаг «-e»? И где мне указать, какие события из вашего списка я хочу использовать? Спасибо

Ответ №2:

Чтобы получать уведомление о Pub / Sub всякий раз, когда gs://your-bucket/numbers.csv перезаписывается, используйте эту команду:

 gsutil notification create -f json 
    -t projects/your-project/topics/your-pubsub-topic 
    -e OBJECT_FINALIZE 
    -p path/to/numbers.csv 
    gs://your-bucket-name