AWS Cost Explorer:Lambda错误:getCostForecast不是函数

时间:2019-05-06 06:09:40

标签: javascript node.js amazon-web-services

我正在尝试使用lambda中的javascript sdk为我的帐户获取costForecast,但在cloudwatch日志中始终出现错误-'TypeError:.... getCostForecast不是一个函数'。我可以使用AWS CLI以及samLocal调用api CostExplorer.getCostForecast()。对于在samlocal中工作,最初我遇到了相同的错误,但是将aws-sdk升级到2.449.0后,它可以工作了。对于开发人员设置,我正在通过cloudformation进行部署,因为lambda会处理它,所以我们从不发送aws-sdk软件包。

CostExplorer.html#getCostForecast-property

我读到getCostForecast在javascript apiVersion:2017-10-25中可用,我在定义它后尝试了但仍然是相同的错误。我也尝试了在apiVersion中使用'latest',如最新sdk的文档中所建议它。请帮忙!我正在使用nodejs8.10。

代码段

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

方法getCostForecast已添加到版本2.358.0aws-sdk-js中。

不幸的是,在Lambda中运行的aws-sdk-js的当前版本为2.290.0。您可以在函数中使用console.log(AWS.VERSION)进行检查。 AWS Lambda Runtimes中也对此进行了描述。

如果要在Lambda中使用getCostForecast,则必须在函数的zip中打包一个大于或等于aws-sdk-js的2.358.0的版本(为了不依赖于可用的版本)。