share facebook facebook2 twitter menu hatena pocket slack

2014.11.10 MON

Ruby で UTC 時間を localtime で確認する

川原 洋平

WRITTEN BY川原 洋平

cloudpack の 自称 Sensu芸人 の かっぱこと 川原 洋平@inokara)です。

メモ

[13] pry(main)> Time.gm(2014, 11, 8, 00, 00, 00).localtime
=> 2014-11-08 09:00:00 +0900

AWS のサービスを使っていて UTC 時間で表示されることがあって頭がこんがらがってしまっていましたが、最も簡単な確認方法は Ruby でした(個人的に)。


例えば…

RDS の maintenance window で、以下のように表示されている場合…

wed:19:09-wed:19:39

pry を起動して…

[1] pry(main)> p Time.gm(2014, 10, 29, 19, 9, 00)
2014-10-29 19:09:00 UTC
=> 2014-10-29 19:09:00 UTC
[5] pry(main)> p Time.gm(2014, 10, 29, 19, 9, 00).localtime
2014-10-30 04:09:00 +0900
=> 2014-10-30 04:09:00 +0900

こんな感じで変換して「ああ、メンテナンスは午前 4 時ね」みたいな感じです。

SDK でちなみに maintenance window だけを取得したい場合には以下のようにするのが手っ取り早いかなと思います。

rds = AWS::RDS.new(
  access_key_id: ACCESS_KEY_ID,
  secret_access_key: SECRET_ACCESS_KEY,
  region: REGION
).client

t = rds.describe_db_instances[:db_instances][0][:preferred_maintenance_window]

puts t

rds オブジェクト作って describe_db_instances から取り出すことが出来ます。


最後に

ホントにメモでした。
ちなみに 11/8 は自分の誕生日となります。

元記事はこちらです。
Ruby で UTC 時間を localtime で確認する