Я знаю, что для этого есть команда gcloud
:
gcloud dataflow jobs list --help
NAME
Список заданий потока данных gcloud - перечисляет все задания в конкретном проекте, по желанию фильтруемые по регионам
ОПИСАНИЕ
По умолчанию перечислено 100 заданий в текущем проекте;это можно переопределить с помощью флага gcloud --project и флага --limit.
Использование флага --region приведет к выводу списка заданий только с указанной региональной конечной точки.
Но я хотел бы получить этот список программным путем через Dataflow Java SDK.
Проблема, которую я пытаюсь решить:
У меня есть конвейер потока данных в потоковом режиме, и я хочу установить обновить параметр (https://cloud.google.com/dataflow/pipelines/updating-a-pipeline) соответственно, в зависимости от того, было ли развернуто это задание или нет.
например, когда я развертываю это задание в первый раз, код не должен 'Установите для этого флага update
значение true
, так как нет существующего задания для обновления (в противном случае программа драйвера будет выдавать жалобы и не сможет запуститься), а код должен иметь возможность запрашивать список запущенных заданий и подтверждать, что задание было запущено.и установите параметр update
для его обновления (в противном случае выдается DataflowJobAlreadyExistsException
).