by shigemk2

当面は技術的なことしか書かない

capistrano-colorized-stream #shibuyarb

2013/01/16

DeNAのひと

このgemの目的

cap shellでデプロイ先複数サーバのログをtailfするとforemanの表示画面みたいな感じで
行の先頭に色付きのホスト名をくっつけて垂れ流せるみたいなことをやりたい

[out::host1]tmp
色をつけたらよさそう?

tailfしても追加の結果がflushされない fuck you!

ターミナル画面分割して表示するのが主流

Parallel ssh
Cluster ssh
Parallel Distributed Shell
csshx

とか。
ratpoisonみたいな感じで画面分割≠色つき
手元でファイルに保存して確認≠色つき

このgemでやっていること

やっぱりcapでやりたい

  • デプロイ直後にサーバのログを垂れ流ししてエラーが出てないか見たい
  • config/deploy.rbにかいたデプロイ先ホストを知りたい

capistranoにはstreamメソッドがあって、それを弄ってgemにした。

使いかた

gem 入れる
requireする
stream + tailf

今後の展望

  • 1つのコマンドを複数サーバで実行して結果を垂れ流しできるようになった
  • 次は対話式でコマンドを投げつつcolorizedにしたい(現状はすぐにログアウトしてしまう)
  • コマンドを売つためにsshコネクションが貼られてしまう

まとめ

capistranoにおけるstreamメソッドを再発見したあ
streamメソッドを拡張して行の先頭にホスト名を色つきで追加するgemなので使ってみてくれい

@niku4i++

(若干目が痛くなる)