My Note

自己理解のためのブログ

AWS LambdaでGoツールを作成したときにタイムゾーンに嵌った

やったこと

AWS Lambdaはap-northeast-1(東京リージョン)でLambdaを作成してもタイムゾーンUTCだった。 Go( Lambda )で現在時刻を利用する場合に参照するために備忘録的に残します。

Lambdaのタイムゾーンを東京にする

Goのタイムゾーンを変更する

Lambdaでタイムゾーンを変更するには、Handler で処理する必要があるみたい。

  • var() で定義していて現在時刻が取得できなかった..

  • Cloudwatch-Logsのログ結果

    • 現在時刻を取得したら毎回同じだった... :innocent:

f:id:yhidetoshi:20190621081009p:plain

対応したこと ( 時刻のところだけ抜粋 )

■ main.go

const (
    serviceName = "NatureRemo"
    timezone    = "Asia/Tokyo"
    offset      = 9 * 60 * 60
)

・・・

func Handler(ctx context.Context) {
    jst := time.FixedZone(timezone, offset)
    nowTime := time.Now().In(jst)
}

参考