AWS Glue: не удалось запустить задание из-за отсутствия метаданных - PullRequest
0 голосов
/ 15 марта 2019

Для запуска задания с использованием boto3 в документации требуется только JobName. Тем не менее, мой код:

    def start_job_run(self, name):
        print("The name of the job to be run via client is: {}".format(name))
        self.response_de_start_job = self.client.start_job_run(
            JobName=name
        )
        print(self.response_de_start_job)

и клиент:

    self.client = boto3.client(
            'glue',
            region_name='ap-south-1',
            aws_access_key_id=os.getenv('AWS_ACCESS_KEY_ID'),
            aws_secret_access_key=os.getenv('AWS_SECRET_ACCESS_KEY'),
        )

при выполнении через Python3 выдает ошибку:

botocore.errorfactory.EntityNotFoundException: An error occurred (EntityNotFoundException) when calling the StartJobRun operation: Failed to start job run due to missing metadata

но когда я выполняю одну и ту же операцию на одном и том же задании из пользовательского интерфейса и из cli (aws glue start-job-run --job-name march15_9), все работает нормально.

Ответы [ 2 ]

0 голосов
/ 29 мая 2019

Я тоже сталкивался с той же ошибкой, проблема в передаче ARN клеевого задания в JobName. Решено, передавая только Имя клеевого задания.

response = client.start_job_run(
    JobName='Glue Job Name not ARN'
)
0 голосов
/ 21 марта 2019

Что указывает журнал ошибок склеивания?

Возможно, вы используете некоторые параметры в работе склеивания, которые вы не передаете при вызове работы

...