In my node.js file the code is as follows:
const dbConfig = require('./config/dbConfig')
const mysql = require('mysql')
var con = mysql.createConnection({
  host: dbConfig.host,
  user: dbConfig.username,
  password: dbConfig.password,
  database: dbConfig.database
})
function readMessages (event, context, callback) {
  console.log('function triggered')
  con.connect((err) => {
    if (err) {
      console.error(err)
      callback(err)
    } else {
      console.log('Connected!')
      con.query('SELECT * FROM Messages WHERE isDeleted = 0;', (err, result, fields) => {
        if (err) {
          console.error(err)
          callback(err)
        } else {
          console.log(result)
          con.end()
          callback(null, result)
        }
      })
    }
  })
}
exports.handler = readMessages
This code positively retrieves data from the MySQL database and displays it on the screen whenever I am running it on my local machine.
However, I got Task timed out after 7.01 seconds error when it is run on aws-lambda.
But, whenever I try to run it on AWS-Lambda, it states an error that the Task got timed out after 7.01
The code and its dependencies are packaged in a file named app.zip, then were uploaded into aws-lambda.
app.zip
├── config
│   └── dbConfig.js
├── index.js
└── node_modules
The only log message printed by the function I have created is function triggered, I cant really find other log messages being generated by my function in the cloud watch log.
Why does the function timed out on aws-lambda?