3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

日時にまつわるLambdaのエラー

Last updated at Posted at 2021-06-28

時間にまつわるlambdaのエラー

社内用に作成した処理が、ローカルでは稼働していたが、
Lambda上でエラーが発生し、機能したい状態となっていました。

やっていたこと

①会社のメールアドレス宛に問い合わせメールが届き、
 問い合わせ用アドレスのメールボックスにメールが蓄積

②pythonのライブラリ、seleniumを使用してメールの情報を取得し、
 googleのスプレッドシートへ「問い合わせ日時」、「問い合わせ内容」、
 「問い合わせ者の氏名」等を転記

③上記の処理をlambda上で10分おきに定期実行

④スプレッドシート上の最新の問い合わせの日時と、
 現在の時間を照らし合わせ、その間の時間に届いたメールの内容を取得し、
 転記する処理を実行
【例】
シート上の最新の問い合わせ日時
→2021/04/01 12:14:38

lamda上の処理が実行された時間
→2021/04/01 12:24:35

上記の場合、4/1の12時14分39秒から、
同日の12時24分35秒の間に届いたメールがあれば、
シートに転記がされる。

エラーの内容

エラーの種類:unexpected alert open

エラーの原因

ローカルのPC上での時間と、Lamda上での時間に差異があったため
①ローカルのPCでの実行の場合
スプレッド上の時間と処理の実行時間に差異が無い

②lambda上での実行の場合
スプレッド上の時間→日本時間
処理の実行の時間→アメリカ時間
スプレッド上の最新日時が4/1であるが、
lambda上での実行時間が3/31になるという事態が生じていた

エラーの解決策:環境変数の設定

4nso11rgsr146515b6sr1g6s105.png
【設定→環境変数→キーにTZ、値にAsia/Tokyoを設定】
→lambda上での実行時間とスプレッド上の最新時間、
 どちらも日本時間になり、lambda上で処理が回るように

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?