redashを使わなかった話、あるいは風呂敷を広げすぎない自戒


結論:新しいツールを導入しなくてもSQLの実行結果をメールで送信するだけで良かった


毎日決まった時間に動作するプログラムを書いて個人で運用しているのですが、動いた実績が日によって違うものなので、簡単に確認する手段が欲しくなりました。

そこで新しいものを触りたい欲が刺激され、redash ( https://redash.io/ ) という可視化ツールを使ってみようか迷いました。使い方に慣れておけば、他でも可視化したいという要望が出てきたときに知識を使い回せると考えたからです。

しかし、すぐにこれまでの経験が浮かび思いとどまりました。

  • だいたい環境構築でつまずいて、(ただでさえ少ない)余暇を奪う
    • インストールでつまずく(特定のディストリでは追加の操作が必要...etc)
    • データソースにつながらない
  • こういうツールって思ったよりマシンリソースを食う
  • 実行結果を細かく修飾したくなってきて設定とかCSSいじりだしたりしそう…

↑これにかける時間でゲームしたりDVD観たりできそう(重要)


そもそも、やりたい事は「SQLの実行結果を1日に1回程度確認したい」というだけなので、実行結果をそのままメールで送る程度で十分な事に気が付きました。しかも、メールを送信するプログラムは既にあるので、SQLと簡単なシェルスクリプトを書けばすぐに実装できます。
ただの表で表示されるより棒グラフや折れ線グラフで綺麗な表示ができる方が良いといえば良いのですが、実際、別になくてもそんなに困らない。

というわけで、SQLを実行してメールを送るだけにしました。具体的には、シェルスクリプトで特定のフォルダ以下にあるSQLファイルすべてについて、psqlを--htmlオプション付きでクエリ実行し、その結果を連結してgmailにメールを送信する対応をして終わらせました。

新しい事を覚えて他にも活かせるようにしよう、というのは良いのですが、新しい事だらけだと疲れるし、目的に対してかける時間や手段が大げさになりすぎる事もよくあります。そこら辺はバランス感覚が大事というか、完璧を求めすぎないほうが良いのかなと思います。