このラムダ関数をNodeから作成して、APIから30日分の情報を取得しようとしていますが、情報量のために一度に1日しか実行できません。これを実行する現在の試みは、ラムダの新しいインスタンスをラムダ自体から何度も繰り返し呼び出して、HOW_MANY_DAYS_AGO> 0まで実行されるたびに日付から1日を引く関数を持つことです。この情報をRDSにアップロードします結果を計算してWebページに投稿するSQL文を実行します。ラムダを10日かそれ以下で動かせば、完璧に動作します。 30日間実行しようとすると、実行するたびに11日目または12日目にこのエラーが発生します。あまりにも速く発砲していると仮定しているため、コード全体のさまざまな箇所で遅延を設定しようとしました。60秒の遅延対60秒の遅延aws-lambda/RDSエラーメッセージ?
18:27:53
2017-05-09T18:27:53.505Z e720be2f-34e4-11e7-90ca-3f2ffa915b81 { StatusCode:
200, FunctionError: 'Unhandled', Payload: '{"errorMessage":"RequestId:
3243f8d3-34e5-11e7-b0a2-df429a0d6565 Process exited before completing
request"}' }
2017-05-09T18:27:53.505Z e720be2f-34e4-11e7-90ca-3f2ffa915b81 { StatusCode:
200,
FunctionError: 'Unhandled',
Payload: '{"errorMessage":"RequestId: 3243f8d3-34e5-11e7-b0a2-df429a0d6565
Process exited before completing request"}' }
我々はまた、時々、それは11日、情報の12日に到達したときにも起こるデータ変数が定義されていないと言う、我々はAPIから情報を引き戻すエリア内CloudWatchの中のラムダ・エラー・メッセージを、取得しますまだ10歳未満のときに動作します。これにより、使用しているAPIのオーバーロードが発生しているとも考えられました。
上記のエラーのペイロードは、私がevent.variableのラムダに渡すものです。私たちは約30日間の情報のためにそれを実行しようとするたびに、およそ11-12日目にこのエラーが発生します。このエラーメッセージは、RDSデータベースに接続した直後に表示されます。私はまだ基本的にこのようなもののほとんどは初心者ですので、この "未処理のペイロード"がラムダ、またはrdsに関連しているかどうかはわかりませんでしたが、RDSに関係していると思うように傾いています。私はこれまでにこのエラーを見たことがないし、それを研究するときかなり広いエラーであるようだ。
RDSの場合、このエラーの原因となる可能性があります。どうすれば回避できますか?私のデータベースが負荷を処理するには弱すぎますか?狂ったことは、次のラムダの呼び出しの間に60秒の遅延を設定したとしても、私はまだこのエラーが発生します。しかし、ラムダをコンソール内で60秒のトリガーに設定し、30分後に手動でオン/オフすると、完璧に動作します。私は、ラムダの新しいインスタンスを呼び出すために私のコードで60秒の遅延を設定し、60秒ごとにラムダの新しいインスタンスを両方とも起動しているときに、コンソールを通して60秒のトリガを設定するという違いを理解していません。なぜなら、1つの違いが私のコードで60秒ごとに呼び出され、もう1つがAWSラムダコンソールを通して60秒ごとに呼び出されるということだけです。
目標は、フォームの1つからラムダへの情報を運ぶ、API-Gatewayのhttpエンドポイントを介してWebページのフォーム提出時にラムダをトリガーさせることです。 api-gatewayからのトリガが動作し、ラムダがポイントまで動作するので、エンドポイントに60秒トリガを有効にして1800秒または30分後にオフにすることができれば、100%の事実はわかります完全に機能する。しかし、ラムダを呼び出す方法が本質的に同じことをしているときに、そのエラーメッセージの原因を見つけることができないということがなぜうまくいかないのか分からないということが私に襲ってきました。