使用AWS Glue调用Lambda函数

Crl*_*rez 5 boto3 aws-lambda aws-glue

我试图在AWS Glue的工作中使用boto3来调用Lambda函数,但没有结果。

我上载了带有库的zip:

像AWS的示例

而且没有拉链。

错误是由于“无法为以下端点加载数据”。

我试图在没有zip的情况下调用,但这会导致超时异常。

import boto3
client = boto3.client('lambda' , region_name='us-east-1')
r_lambda = client.invoke(FunctionName='S3GlueJson')
Run Code Online (Sandbox Code Playgroud)

有人能帮我吗 ?

小智 -1

如果您想从 Lambda 函数调用 Glue Jobs,可以这样做:

import boto3
glue = boto3.client(service_name='glue', region_name='us-east-1',
              endpoint_url='https://glue.us-east-1.amazonaws.com')

#Start Job
myNewJobRun = glue.start_job_run(JobName=JOB_NAME)

#Get current state of Job, to be sure it's running
status = glue.get_job_run(JobName=JOB_NAME, RunId=myNewJobRun['JobRunId'])
logger.info('JOB State {}: {}'.format(
JOB_NAME, status['JobRun']['JobRunState']))
Run Code Online (Sandbox Code Playgroud)

由于作业执行可能会延迟一段时间才能完成,因此最好不要等待 Lambda 函数完成。