Quero habilitar parâmetros especiais, como --enable-metrics, para meu trabalho no AWS Glue. No entanto, recebo um erro de validação de modelo ou “valores nulos” do AWS CloudFormation ao tentar executar o trabalho. Como resolvo esses erros?
Breve descrição
Para definir parâmetros especiais para seu trabalho no AWS Glue, você deve fornecer um par de valores-chave para a propriedade DefaultArguments do recurso AWS::Glue::Job no CloudFormation. Se você fornecer uma chave somente na definição do trabalho, o CloudFormation retornará um erro de validação.
Resolução
1.Em seu modelo do CloudFormation, defina o valor do parâmetro especial como uma string vazia para a propriedade DefaultArguments da sua definição de trabalho.
JSON:
"MyJob": {
"Type": "AWS::Glue::Job",
"Properties": {
"Command": {
"Name": "glueetl",
"ScriptLocation": "s3://my-test//test-job1"
},
"DefaultArguments": {
"--job-bookmark-option": "job-bookmark-enable",
"--enable-metrics": ""
},
"ExecutionProperty": {
"MaxConcurrentRuns": 2
},
"MaxRetries": 0,
"Name": "cf-job3",
"Role": {
"Ref": "MyJobRole"
}
}
}
YAML:
MyJob:
Type: 'AWS::Glue::Job'
Properties:
Command:
Name: glueetl
ScriptLocation: 's3://my-test//test-job1'
DefaultArguments:
'--job-bookmark-option': job-bookmark-enable
'--enable-metrics': ''
ExecutionProperty:
MaxConcurrentRuns:
MaxRetries: 0
Name: cf-job3
Role: !Ref MyJobRole
Observação: no exemplo anterior de modelos JSON e YAML, o valor de --enable-metrics é definido como uma string vazia. A string vazia valida o modelo e inicia o recurso configurado com o parâmetro especial.
2.Para ativar o parâmetro especial, execute o trabalho.