24
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

peek-rblineprofでRailsアプリのソースコード行ごとの実行時間を計測する

Posted at

はじめに

Railsアプリのパフォーマンスを計測するのにpeek-rblineprofというツールを使うと、ソースコードの各行ごとの実行時間が計測できていろいろ捗るという話を聞いたのでやってみた。なにこれ超便利。

実行イメージは本家のスクショを御覧ください。
https://github.com/peek/peek-rblineprof

インストール

Gemfileに以下の行を追加します。

gem 'peek'
gem 'peek-rblineprof'

bundle installします。

$ bundle install

一時的なデバッグ用でプロジェクトのGemfileを汚したくない場合はGemfile.localとか作るとよいです。以下参照。
Gemfileにないgemを使いたい

Railsアプリの設定

イニシャライザでconfig/initializers/peek.rbとか作って以下の初期化処理を書きます。

Peek.into Peek::Views::Rblineprof

jsとcssを読み込ませます。プロジェクトの構成に合わせて適当な場所で読み込ませて下さい。
(※ファイルのパスはとある例なので各自読み替えて下さい)
app/assets/javascripts/shared/rblineprof.js.coffee

#= require peek
#= require peek/views/rblineprof

app/assets/stylesheets/base/rblineprof.css

//= require peek
//= require peek/views/rblineprof

app/views/layouts/application.html.erb

(略)
  <%= stylesheet_link_tag "base/rblineprof", media: 'all' %>
(略)

使い方

計測したいURLの末尾に?lineprofiler=appというパラメータを付けてアクセスすると、ソースコードの行ごとに実行時間が表示されます。

https://localhost/?lineprofiler=appみたいな感じです。

実行イメージは本家のスクショを参照。
https://github.com/peek/peek-rblineprof

どこに時間がかかってるか分かっていろいろ捗る。

24
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?