強烈推薦一個擴展包:Laravel Log Enhancer

laravel log enhancer 是 laravel 5.6? 的一個擴展包,可以在 laravel 日志中添加額外的數據。 得益于 laravel 5.6 中日志的更新,這個包利用這些特性擴展日志記錄并添加數據,例如請求頭、內存使用情況、會話信息和其它數據 。

你可以通過修改 config/logging.php 中的 tap 屬性,來添加 ?LogEnhancer?到你的日志通道:

'production_stack' => [     'driver' => 'stack',     'tap' => [FreshbitswebLaravelLogEnhancerLogEnhancer::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 vendor:publish?, 以激活上面的自定義配置:

php artisan vendor:publish --tag=laravel-log-enhancer-config

在一個基于 Laravel 5.6 的項目中,你可以使用如下命令利用 composer 來安裝這個擴展包:

composer require freshbitsweb/laravel-log-enhancer

由于 ?Laravel 的包自動發現?機制,你只需要安裝這個包并根據你的程序需要進行配置就可以了。

了解更多

詳情請查看該包的?GitHub 官方倉庫(https://github.com/freshbitsweb/laravel-log-enhancer)。需要注意的是,這個擴展包依賴于 Laravel 5.6 的新日志系統,所以你只能在該版本或者更新版本中使用它。

它首先出現在?Laravel News (https://laravel-news.com/)上。

相關推薦:最新的五個Laravel視頻教程

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享