Laravel Log Enhancer は、Laravel ログにデータを追加できる Laravel 5.6 の拡張パッケージです。 Laravel 5.6 のロギングの更新のおかげで、このパッケージはこれらの機能を利用してロギングを拡張し、リクエストヘッダー、メモリ使用量、セッション情報、その他のデータなどのデータを追加します。
config/logging.php
の tap
属性を変更することで、ログ チャネルに LogEnhancer
を追加できます:
'production_stack' => [ 'driver' => 'stack', 'tap' => [Freshbitsweb\LaravelLogEnhancer\LogEnhancer::class], 'channels' => ['daily', 'slack'], ],
ログ チャネルを構成した後、デフォルトの追加情報を含むログの例を次に示します。
[2018-03-30 05:07:23] local.INFO: Testing log {"inputs":[],"session":{"_token":"bZXCPViCzmaULIO6GsdLBbveC1yd3BbyH31zfT8c","_previous":{"url":"http://log-enhancer-demo.test"},"_flash":{"old":[],"new":[]}},"url":"/","ip":"127.0.0.1","http_method":"GET","server":"","referrer":null}
次に、拡張ログの構成オプションを示します (デフォルトの構成オプションに関する情報を含む):
<?php return [ 'log_request_details' => true, 'log_input_data' => true, 'log_request_headers' => false, 'log_session_data' => true, 'log_memory_usage' => false, 'log_git_data' => false, // 你可以明确不记录到日志中的用户输入信息 'ignore_input_fields' => ['password', 'confirm_password'] ];
顧客の機密情報がログに記録されないように、ignore_input_fields
オプションに特に注意してください。 ! !たとえば、ユーザーのパスワードやクレジット カードのアカウント番号などです。
上記のカスタム構成を有効にするには、対話モード コマンド artisan ベンダー:publish
を実行する必要があります:
php artisan vendor:publish --tag=laravel-log-enhancer-config
Laravel 5.6 ベースのプロジェクトでは、次のコマンドを使用できます。
composer require freshbitsweb/laravel-log-enhancer
Laravel の自動パッケージ検出メカニズムにより、このパッケージをインストールし、プログラムのニーズに応じて設定するだけで済みます。
詳細はこちら
詳細については、このパッケージの公式 GitHub リポジトリ (https://github.com/freshbitsweb/laravel-log-enhancer) をご確認ください。この拡張機能は Laravel 5.6 の新しいロギング システムに依存しているため、そのバージョン以降でのみ使用できることに注意してください。
Laravel News (https://laravel-news.com/) に最初に掲載されました。