0
0

More than 1 year has passed since last update.

【Laravel】「ログってなによ」

Last updated at Posted at 2022-09-15

ログとは

人間さん「ログを出力するとかロガーとか聞くけど」
人間さん「そもそもログってなんなのよ」

いぬ先生「急に来たね」
いぬ先生「storage/logs/laravel.log に出力されてるよ」

人間さん「ファイル見にいったけど」
人間さん「なにかずらずら書かれてることはわかった」
人間さん「でなんなの?」

いぬ先生「ここに書かれてるから読んでね」

人間さん「初っ端から何言ってるかわかりません!」

いぬ先生「うん!ごめんね!」
いぬ先生「ログは、アプリケーションの動作検証やユーザーのアクセス状況など」
いぬ先生「ある時点の事実を記録するものなんだ」

人間さん「なるほどなるほど」
人間さん「で、どういうことができるの?」

いぬ先生「例えば、アプリケーション運用での障害検知や障害の原因究明」
いぬ先生「データ分析での活用などがある」
いぬ先生「ログにはさまざまな利用用途があるから」
いぬ先生「正しいログ生成は重要なことなんだ」

人間さん「ログって大事なのね~」

出力してみる

人間さん「実際にどう使うの?」

いぬ先生「ログの操作は、Logファサード経由、」
いぬ先生「またはPsr\log\LoggerInterfaceインターフェースを実装しているから…」

人間さん「ちょ、もう少しわかりやすく頼んます」

いぬ先生「ログを出力するにもいろんな方法があるということだよ」
いぬ先生「まず細かいことはさておき」
いぬ先生「シンプルな例で出力をしてみて雰囲気を掴んでみよう」

人間さん「それはありがたい」

いぬ先生「例えば、ヘルパー関数 logger() をコントローラーに含める」

class TestController extends Controller
{
    public function store(Request $request)
    {
        logger($request);
    // 以下略

いぬ先生「こうすると送信されたリクエスト値が」
いぬ先生「storage/logs/laravel.log ファイルの末尾に出力される」

人間さん「本当だ!」

[2022-09-08 00:00:00] local.DEBUG: array(
    // 中データは例です
    'id' => '1',
    'text' => 'test',
)

人間さん「中身が配列で出力されました」

いぬ先生「こちらの記事がLaravelのログ出力方法の参考になるよ」

ロガーとは

人間さん「ちなみにロガーってのはなんなの?」

いぬ先生「何らかのログを記録する機能のことを一般にロガーと言ったりするみたい」
いぬ先生「Laravelで言えばさっき紹介した出力もロガーにあたるね」

人間さん「メソッド名もloggerだもんね」

きっかけ

いぬ先生「そういえばなんで急にログのこと気になったの?」

人間さん「非同期(Ajax)で取得したデータの中身を見たくて、dd()でデバッグを試したら」
人間さん「ページが切り替わってしまうからか確認できなくて」
人間さん「どうにか見る方法ないかなって探してて」
人間さん「ロガーを使ったら良いことに行き着いたんだけど・・・」

いぬ先生「そもそもログってなんぞやってことだったのね」

人間さん「お恥ずかしながら」

いぬ先生「みんなも最初は無から始まってるから恥じることないよ」

人間さん「ぬくもりを感じる」

参考

0
0
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
0
0