Laravel 中自定義日志目錄


原文連接:https://laravel-china.org/articles/7125/custom-log-directory-in-laravel

新人報單!!!
這是我工作用遇到的一個問題,如何把日志寫入到指定目錄文件
希望對各位小伙伴有幫助哈!
那么問題來了,比如我在寫job的時候,使用 Log::info() 會讓日志全部記錄在 storage/logs/laravel.log 文件里,查找起來比較麻煩。那么我可不可以單獨記錄在一個日志文件里呢?

laravel文檔里沒有寫,於是我去翻Laravel的源碼,結果還真給我找到了。只需在你的代碼中加入

Log::useDailyFiles(storagepath('logs/job/error.log'));
這樣日志就會單獨記錄在 logs/job/error.log 中,如:

file

這是按每日記錄的,想要單文件記錄日志可以使用
Log::useFiles(storage_path('logs/job/error.log')); 。

到這里,日志會記錄兩份,
1.是自帶的日志文件內容,
2.是自己指定的日志文件內容。

那么,只想在指定的文件里記錄要腫么辦呢?
只需在 Log::useDailyFiles(storage_path('logs/job/error.log')) 之前加上,
$monolog = Log::getMonolog();
$monolog->popHandler();

例如:
file
這樣,該類中的日志就是只記錄在你指定的文件中。

如果有大神理解更透徹的,希望能把更詳細的發布上出來。嘿嘿。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM