勤務時間をダッシュボードで管理する(2/2) AirTable → Postgres → Metabase編

f:id:hiroga_cc:20180123065119p:plain

勤務時間, 在宅時間が自動で計測できるようになった!

IFTTT → AirTableまでは前編を参照。

AirTable → Postgres

CloudWatchで日次で起動するAWS Lambdaを使い、AirTableからRDSのPostgresにデータを突っ込んでいます。

github.com

※Lambdaで使用するにはpsycopg2とpandasをEC2と同じ環境でビルドしたものに差し替える必要があるので注意。

Postgres → Metabase

Metabaseの設定は別に難しくないんだけど、PostgresのInterval型は使えないことに注意。
SQLを直接編集して解決してます。

SELECT (略), extract("epoch" from "public"."spent_time"."spent_time")/3600 as "spent_hours"
FROM "public"."spent_time"
WHERE (略)

やってみて

まずはひと段落って感じ。本当はこの後コード行数/(在宅時間-睡眠時間) とか計測してみたいな〜。
Lambdaが日次で動いてちゃんと仕事してるの、見てるとすごい嬉しくなりますね。