我有一个自定义的AWS :: CloudFormation :: Transform,它已附加到Lambda函数。成功回复后,我将以mentioned in the documentation的身份返回以下内容:
{
"requestId": requestId, //pulled from the event
"status": "success",
"fragment": value //string value
}
这很好。但是,在发生错误的情况下,我不确定要怎么做。我知道根据文档,我应该返回相同的结构,但将状态设置为除“成功”之外的任何值,并且我假设(因为我似乎找不到任何要确认),错误消息在片段部分。这是我在发生错误情况时返回的内容:
{
"requestId": requestId, //pulled from the event
"status": "failure",
"fragment": err.code //string value of error code
}
但是,在我的CloudFormation中,出现以下错误:
Transform ############::MyCustomMacro failed without an error message.
根据日志,我知道err.code具有值,所以这不是问题。
我是否缺少有关如何正确向CloudFormation返回错误的信息?
答案 0 :(得分:1)
我已经进行了一些挖掘,并且目前无法通过CloudFormation宏失败返回错误消息。您必须将CloudWatch日志用于Lambda函数才能进行调试。我已经向CloudFormation团队提出了功能请求。
答案 1 :(得分:1)
我遇到了同样的问题,但是以下JSON响应终于对我有用:
{
"requestId": requestId,
"status": "failure",
"fragment": value,
"errorMessage": customErrorMessage // String value
}