タグ

ブックマーク / qiita.com/joker1007 (3)

  • ActiveRecordの読み込みが実際にトリガーされた場所をログに記録するgem - Qiita

    ActiveRecordは必要になるまでDB読み込みをしません。 なのでやたら複雑なビューの中でクエリを弄ったり、コントローラーが肥大化してる状態でひどいSQLがログに流れてくると、パっと見ではどこが原因なのかすぐに分からない。 なので、SQLが実行された時にそれが実際にトリガーされたソースコードの位置も一緒にログに吐いてくれるgemを作りました。 bulletで分からないような、ビューのループの中で直接モデル読んでるみたいなヤバイ箇所を速やかに見つけるためのものです。 joker1007/activerecord-cause 仕組み的にはActiveRecordのロギングの仕組みを丸パクリしてcaller_locationsを足した感じ。 全ての読み込み位置を表示するわけではなく正規表現でマッチするパスを持ったソースコードの位置のみをログに記録します。 Railsで利用する場合は自動的に

    ActiveRecordの読み込みが実際にトリガーされた場所をログに記録するgem - Qiita
  • 最近(2013/11/18)のspring(Railsのコマンドを高速化する方)について - Qiita

    DEPRECATED:既に古いのでこっちを見てください springについてとだけ書くと誤解を招きそうなので、説明的なタイトルにした。 Railsのコマンドを高速化するgemとして最近流行ってるspringというgemがあります。 ちょっと前にバージョンが上がって、rspecとかcucumberを呼び出すためのコマンドが別のgemに切り出されました。 そのため微妙に使いづらくなった気がします。 rspecとcucumberのためのサブコマンドは以下のgemで提供されています。 jonleighton/spring-commands-rspec jonleighton/spring-commands-cucumber READMEを読むとGemfileに書け、って書いてあるんですが、書くとspringもインストールされます。 ところが、spring体のREADMEを読むと、bundle e

    最近(2013/11/18)のspring(Railsのコマンドを高速化する方)について - Qiita
  • チーム内にRuby製のツールを広める時にはGemにしておくべき - Qiita

    もしかしたら、Rubyに慣れてない人には気付いていない人も居るかと思ったので、 カジュアルにRubyGemsを活用する事のメリットについて書いておきます。 普通、Rubyのgemパッケージは、gem installでインストールできるようにrubygems.orgにホスティングしておくのが基です。 とは言え、世界的に公開されるものなので、ちゃんとgemとしての体裁を整えておかないと何か恥ずかしいし、説明とかも英語でちゃんと書いとかないと、って考えると面倒なレベルのツールとかあると思います。 API叩くための簡易コマンドとか、社内ツールの処理自動化とか。 しかし、Bundlerとgitのおかげで、現在はそういった事を余り気にする必要が無くなっています。 Bundlerは、gitリポジトリから直接コードをクローンして、パッケージ化されたgemと同様に扱う事ができます。 参考: Bundler

    チーム内にRuby製のツールを広める時にはGemにしておくべき - Qiita
  • 1