4

我正在使用 AWS Lambda 在 SSM 中运行命令。这是代码:

const AWS = require('aws-sdk')
const ssm = new AWS.SSM()

exports.handler = (event, context, callback) => {
   ssm.sendCommand({
      DocumentName: "AWS-RunShellScript",
      CloudWatchOutputConfig : {
         CloudWatchOutputEnabled: true,
         CloudWatchLogGroupName: "EC2CommandsFromLambda"
      },
      InstanceIds: [ "instace-id" ],
      Parameters: {
        "commands": [
            "./start.sh"
        ],
        "workingDirectory": [
            "path"
        ]
     },
     TimeoutSeconds: 3600
  }, function(err, data) {
    if (err) {
      console.log(err);
    } else {
      console.log(data);
      callback(null, "Command Running Successfully");
    }
})
};

我收到以下错误:

UnexpectedParameter:在 ParamValidator.fail 的参数中发现意外的键“CloudWatchOutputConfig”(/var/runtime/node_modules/aws-sdk/lib/param_validator.js:50:37)

如何从 Lambda 启用云监视日志?因为根据 sdk 参数“CloudWatchOutputConfig”应该可以工作。

4

1 回答 1

1

我遇到了同样的问题,对我来说,解决方案是将我的aws-sdk模块升级到最新版本,在撰写本文时是:2.403.0

于 2019-02-15T18:49:38.400 回答