using Amazon.Lambda.Core; using MySqlConnector; using System.Data; //Summary //Log in local db and AWS //Summary namespace classes { public class Logger { MySqlConnection _con; public Logger(DbUserModel dbUser) { string connectionString = $@"server={dbUser.host};userid={dbUser.username};password={dbUser.password};database={dbUser.dbInstanceIdentifier};convert zero datetime=True"; _con = new MySqlConnection(connectionString); } public void WriteLog(string strCognitoUuid, string txtQuery, string txtResponse, string strType) { int rows = 0; try { if (_con.State == ConnectionState.Closed) _con.Open(); txtQuery = Helper.CleanInput(txtQuery); txtResponse = Helper.CleanInput(txtResponse); var stm = "INSERT INTO `log`(strCognitoUuid, txtQuery, txtResponse, strType) VALUES('" + strCognitoUuid + "', '" + txtQuery + "', '" + txtResponse + "', '" + strType + "')"; var cmd = new MySqlCommand(stm, _con); rows = cmd.ExecuteNonQuery(); } catch { } finally { if (_con != null || _con.State == ConnectionState.Open) _con.Close(); } } public void LogMessage(ILambdaContext ctx, string msg) { ctx.Logger.LogLine( string.Format("{0}:{1} - {2}", ctx.AwsRequestId, ctx.FunctionName, msg)); } } }