Edited at

AWS Lambdaのタイムゾーン変更

More than 1 year has passed since last update.


開発中のこと…

上司から「DB上のタイムスタンプがズレてるよ」と指摘を受けました。

Lambdaで受け取ったリクエストに応じてEC2上のDBへ書き込みに行くAPIの開発だったのですが、確認すると確かに9時間ズレてる…


原因究明

リージョンも東京に設定しているのに何故かなー?といろいろ調べてたらこんな記事を見つけました。

AWS lambda のタイムゾーンを東京にする | hacknote

記事は東京リージョンリリース前みたいなんですが、リージョンを東京にしてても何故かタイムゾーンだけズレるんですよねぇ…

process.env.TZ = 'Asia/Tokyo'

このスクリプトを差し込めば良いっぽいのですが、あいにくJavaでの開発だった為使えませんでした。


解決策

で、どうしたら良かったかというと、Lambdaコンソールから、Functions→特定のファンクションまで降りていって、Codeタブの下部にあるEnvironment variablesKeyValue にそれぞれ TZAsia/Tokyo と入力すれば良いみたいです。

テストした結果、無事に日本時間で出力されました。

単純なところでハマったので、備忘録も兼ねて。