Готовность к быстрому производству (https://ci.apache.org/projects/flink/flink-docs-stable/ops/production_ready.html)) предлагает назначить UUID всем операторам. Я ищу способ проверить, что всем операторам в данном графике заданий были назначены UUID - в идеале, чтобы использовать их какпроверка перед развертыванием в нашем потоке CI.
У нас уже есть процесс, использующий класс PackagedProgram
для получения «предварительного плана» в формате JSON. К сожалению, он не содержит никакой информации оназначенные UUID (или их отсутствие).
Копаясь в коде генерации плана предварительного просмотра JSON (PlanJSONDumpGenerator
), я могу проследить, как он посещает каждый из узлов как DumpableNode<?>
, но оттуда,Я не могу найти ничего, что приводит меня к определению оператора с его UUID.
При определении задания (с использованием API DataStream) UUID назначается для StreamTransformation<T>
.соедините данные в PackagedProgram
обратно с исходными StreamTransformation<T>
s, чтобы получить UUID?
Или есть ли лучший подход к выполнению проверки этого типа?