Railsのログ監視&デバッグをcoLinuxで行う
ログの監視
Windowsでrails開発していた頃は、デバッグ方法の一つとしてコマンドプロンプト×pメソッドを利用していました。
が、coLinux開発だとコンソールには何も表示されない! => 嘘。これは -d オプションで立ち上げた場合でした。
いちいちログファイル開くのも重い!
と文句垂れていたところ、tailコマンドを教えて頂きました。
railsアプリのルートディレクトリで、
$ tail -f log/development.log
とすれば、ログが動的に表示されます。
挙動もサクサクでした。
ありがとうございます。
(でもこれ、よくよく見たらRailsによるアジャイルWebアプリケーション開発 第2版に書いてありましたorz)
デバッグ
しかしながら、コードにpメソッド埋めてもログには出力されないんですね・・・。
やっぱり script/console か script/breakpointer 使わないとだめなのかな? と調べていたところ、ログにオブジェクトを出力する方法がありました。
コード中に、pメソッドと同じように
logger.debug(@object)
とか入れてあげれば、値がログに出力されます。
なお、String以外のオブジェクトは読みにくいことがあるので、Object#inspectを使うとよいでしょう。
これでまた開発効率が上がりそうです。