Я пытаюсь отправить сообщение в очередь AWS SQS, при попытке LOCALLY с сообщением serverless offline start --stage test
успешно попасть в очередь. Однако при развертывании этого на сервере с sls deploy --stage test
sqs.sendMessage()
не выполняется. Я говорю это, потому что я записываю сообщения об успехах и неудачах на консоли, и ни одно из них не печатает.
Вот фрагмент функции отправки сообщения из узла
index.js file
let params = {
MessageBody: smessage,
QueueUrl:
"https://sqs.zone.amazonaws.com/client_id/sqsname"
};
console.log("=====sqs start+++++ line 133 +++++");
console.log("params line 134", params);
sqs.sendMessage(params, function(err, data) {
if (err) {
console.log("+++++++++++++++SQS Error+++++++++");
console.log("Error", err);
} else {
console.log("+++++++++++++++SQS SUCCESS+++++++++");
console.log("Success", data.MessageId);
}
});
файл serverless.yml
iamRoleStatements:
- Effect: "Allow"
Action:
- "sqs:SendMessage"
Resource: "arn:aws:sqs:zone:clientid:sqsname"
Когда я вызываю этот конец pojnt локально, запустив sls offline start --stage test
, я получаю SQS SUCCESS с идентификатором сообщения об успехе
Но в случаепри развертывании на сервере ни один из операторов не выполняется.
Пожалуйста, помогите