Я пытаюсь настроить пользовательский агент, используемый для различных вызовов GCP, через PipelineOptions.setUserAgent .
Однако, похоже, он всегда возвращается к Apache_Beam_SDK_for_Java/2.6.0.
Apache_Beam_SDK_for_Java/2.6.0
Глядя на кодовую базу Beam, кажется, что пользовательский агент принудительно запускается потоком данных: https://github.com/apache/beam/blob/ce9ee0b034cef66ea3845ca049770b9a354a4fd4/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java#L330.
Это намеренно?Должен ли он быть настраиваемым?
Редактировать: указание его через флаг CLI --userAgent, похоже, тоже не работает.
--userAgent
Apache Beam берет его из sdk.properties файла: https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/util/ReleaseInfo.java#L37
sdk.properties
Вы должны иметь возможность перезаписать name и version в файле свойств, прилагаемом к вашему ресурсу. Пример: https://github.com/apache/beam/blob/master/sdks/java/core/src/main/resources/org/apache/beam/sdk/sdk.properties
name
version