新人報單!!!
這是我工作用遇到的一個問題,如何把日誌寫入到指定目錄檔案。
希望對各位小夥伴有幫助哈!
那麼問題來了,比如我在寫job的時候,使用 Log::info() 會讓日誌全部記錄在 storage/logs/laravel.log 檔案裡,查詢起來比較麻煩。那麼我可不可以單獨記錄在一個日誌檔案裡呢?
laravel文件裡沒有寫,於是我去翻Laravel的原始碼,結果還真給我找到了。只需在你的程式碼中加入
Log::useDailyFiles(storage_path('logs/job/error.log'));
這樣日誌就會單獨記錄在 logs/job/error.log 中,如:
這是按每日記錄的,想要單檔案記錄日誌可以使用
Log::useFiles(storage_path('logs/job/error.log')); 。
到這裡,日誌會記錄兩份,
1.是自帶的日誌檔案內容,
2.是自己指定的日誌檔案內容。
那麼,只想在指定的檔案裡記錄要腫麼辦呢?
只需在 Log::useDailyFiles(storage_path('logs/job/error.log')) 之前加上,
$monolog = Log::getMonolog();
$monolog->popHandler();
例如:
這樣,該類中的日誌就是隻記錄在你指定的檔案中。
如果有大神理解更透徹的,希望能把更詳細的釋出上出來。嘿嘿。。。
本作品採用《CC 協議》,轉載必須註明作者和本文連結