Laravelデバッグバー を使ったデバッグ方法

2019/02/20

Laravel には「Laravelデバッグバー」というパッケージが用意されています。

便利なので、入れている人は多いと思います。

以前、このサイトでもエントリーしました。

ただ、デバッグバーは万能ではなく、スクリプトに大きなミスがあるとアプリ自体が動かないこともあります。

その場合はデバッグバーも表示されません。

そんなわけで僕はLogファサードを使うことが多かったのですが、使い勝手からいえばデバッグバーのほうが便利です。

今回は「Laravelデバッグバー」を使った、実際のデバッグ方法についてエントリーします。

 

演習

データベースから取得したユーザリスト( User::all(); )を確認したい。

 

前提条件

composerで「barryvdh/laravel-debugbar」をインストール&設定済み。

インストール&設定についてわからない方は以下をご参考にください。

 

使い方

1)コントローラにてロギング
2)ブラウザで確認

 

1)コントローラにてロギング

コントローラにて Eloquent でユーザ一覧を取得しているケースだと以下のようになります。


public function userList()
{
    $users = \App\User::all();
    \Debugbar::info('$users='.$users);   // ロギング
    return view('mypage.user_list',compact('users'));
}

 
デバッグメッセージの出力は各種用意されています。


\Debugbar::info($object);
\Debugbar::error('Error!');
\Debugbar::warning('Watch out…');
\Debugbar::addMessage('Another message', 'mylabel');

 

2)ブラウザで確認

ロギングしたメッセージはデバッグバーの「Messages」をクリックします。

SQLの確認は「Queries」をクリック。

Bladeのファイルを確認したい場合は「Views」をクリック。

その他に

  • 「過去のリクエストや ajax リクエスト」の確認
  • リダイレクト前のリクエスト
  • パフォーマンス測定

などできます。

ただ、誰でも閲覧できる環境(公開サーバー)では使わないようにしましょう。

セキュリティー的にとても危険です。

 
「laravelデバッガー」の使い方については以上です。

本庄マサノリ

仕事でLaravelを使っています。気づいたことや新しい発見など情報を発信していきます。メールはこちら

 

-実践知識