Я пытаюсь записать некоторую информацию в поток журнала, который я создал в журнале наблюдения aws, используя лямбда-функцию с aws-sdk, но я не могу получить какие-либо журналы, даже когда лямбда запускается.
Это мой код,
Запуск лямбда-кода
...
const lambda = new aws.Lambda();
lambda.invoke({
FunctionName: 'email-api-dev-logError',
Payload: JSON.stringify(err)
}, (err, data) => {
if(err) console.log('Lambda error is ', err);
else console.log('Lambda Data is ', data);
})
...
Лямбда-функция
module.exports.logError = async (event) => {
const cloudwatchlogs = new aws.CloudWatchLogs();
const logEventParams = {
logEvents: [
{
message: event,
timestamp: new Date().getTime()
}
],
logGroupName: 'EmailAPIErrors',
logStreamName: 'Error'
};
cloudwatchlogs.putLogEvents(logEventParams, (err, data) => {
if (err) console.log(err, err.stack);
else console.log('Log data is ', data);
});
};
serverless.yml
iamRoleStatements:
- Effect: Allow
Action:
- lambda:InvokeFunction
Resource: "*"
- Effect: "Allow"
Action:
- "sqs:SendMessage"
- "sqs:ReceiveMessage"
Resource: "arn:aws:sqs:${self:provider.region}:*:EmailQueueDev"
- Effect: "Allow"
Action:
- "logs:CreateLogStream"
- "logs:PutLogEvents"
Resource: "arn:aws:logs:*:*:log-group:/aws/rds/*:log-stream:*"
functions:
logError:
handler: handler.logError
Я не уверен, что здесь происходит, пожалуйста, помогите мне найти возможную ошибку и исправить ее.