ホームページ >バックエンド開発 >PHPチュートリアル >Laravel 5 クエリログが空なのはなぜですか?

Laravel 5 クエリログが空なのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-13 05:54:02467ブラウズ

Why is My Laravel 5 Query Log Empty?

Laravel 5 の空のクエリログの謎: DB::getQueryLog() が公開

DB を使用してクエリログを取得しようとした場合::getQueryLog() を実行すると、開発者は空の配列という予期しない結果に遭遇する可能性があります。この不可解な動作は、Laravel 5 でクエリ ログがデフォルトで無効になっていることが原因です。

クエリ ログの有効化

クエリ ログにアクセスするには、明示的に有効にする必要があります。

  • 電話中DB::enableQueryLog(): これにより、すべての DB 接続のクエリ ログが有効になります。
  • イベント リスナーの登録: 実行された各接続に関する詳細情報を受け取るリスナーを登録します。 query.

考慮事項

  1. 複数の DB 接続: アプリケーションが複数のデータベース接続を使用する場合は、ログに記録する接続を指定します。 、例えば、 DB::connection('my_connection')->enableQueryLog().
  2. 有効な場所: クエリ ログを有効にするのに最も適切な場所を決定します。 HTTP リクエストの場合は、ミドルウェアを考慮してください。 CLI コマンドの場合は、artisan.start イベント リスナー。
  3. メモリ消費: クエリをメモリに保存するときは、潜在的なメモリ消費に注意してください。デバッグ目的の場合は、開発環境でのみログを有効にすることを検討してください。

クエリ ログの取得

有効にすると、DB:: を呼び出してクエリ ログを取得できます。 getQueryLog()。これにより、次のデータを含む配列が返されます:

  • SQL ステートメント
  • バインディング (存在する場合)
  • 実行時間

追加リソース

詳細については、 Laravel ドキュメント: https://laravel.com/docs/5.0/database#query-logging

以上がLaravel 5 クエリログが空なのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。