濮阳杆衣贸易有限公司

主頁 > 知識庫 > 關于laravel 日志寫入失敗問題匯總

關于laravel 日志寫入失敗問題匯總

熱門標簽:事業(yè)單位如何百度地圖標注 地圖標注入哪個科目 格陵蘭島地圖標注 南寧crm外呼系統(tǒng)平臺 福泉電話機器人 熱線電話機器人 天津營銷電話機器人加盟代理 電銷招聘機器人 太原極信防封電銷卡

Throw問題

項目部署到Linux 服務器上后有時會出現 每日日志無法寫入的問題。由此匯總一下常出現的問題及解決方式。

權限問題

導致無法寫入日志的問題,是由于代碼更新時添加了文件是 root 用戶,所以創(chuàng)建日志文件也是root 權限,導致其它用戶的 www 權限無法寫入日志文件中。

所以修改 storage/logs/ 的用戶權限為 www

chown www:www storage/logs -R

注意:如果用戶使用supervisord服務運行隊列的話,如果隊列里有日志記錄,那么運行的用戶也需要改成 www 用戶。

還有一種解決方式,就是修改日志的源碼。

laravel在web模式下產生的日志文件(storage/logs)由www-data用戶創(chuàng)建,而在命令行(php artisan)模式下是由當前登錄系統(tǒng)用戶創(chuàng)建。

這兩個用戶不在同一個組下,就導致后操作的功能無法對日志文件進行寫操作。解決這個問題需要修改Laravel在使用Monolog框架時的源代碼。

需要修改的文件在 vendor/laravel/framework/src/Illuminate/Log/Writer.php 第229行。

$handler = new RotatingFileHandler($path, $days, $this->parseLevel($level))

改為

$handler = new RotatingFileHandler($path, $days, $this->parseLevel($level),true,0777)

該代碼在useDailyFiles函數中,因為config/app.php中對日志框架的配置是

'log' => 'daily',

所以使用的是RotatingFileHandler,構造函數中第五個參數是指定創(chuàng)建文件的權限。

用戶問題

用戶問題,也算是權限問題。我用這個方式解決的問題。

首先 crontab -l 查看定時任務,laravel 的定時任務定義在這里。

crontab -e 修改定時任務。一切依舊。定時任務也執(zhí)行了。第二天,開始出現日志不可寫的問題。

解決步驟1:修改 crontab -u www -e 定時任務配置給 www 用戶,去掉root 的定時任務。第二天不再出現日志不可寫問題。

結果定時任務不再執(zhí)行。沒遇到過這樣的情況,于是同時給www 用戶和 root 用戶 都配置了 定時任務。結果還是日志不可寫。

解決步驟2:經過一番掙扎的搜尋 ,打開了最后一次的日志。

* 號 是代表可能會有很多個 cron 開頭的日志,打開最后一個即可。

vi /var/logs/cron* 

如圖:

看到定時任務的錯誤日志,進入home 目錄,建立www文件夾。賦予權限。完成問題的解決。

以上這篇關于laravel 日志寫入失敗問題匯總就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • laravel日志優(yōu)化實例講解
  • 解決laravel中日志權限莫名變成了root的問題
  • 自定義Laravel (monolog)日志位置,并增加請求ID的實現
  • Laravel 5.5 異常處理 & 錯誤日志的解決
  • Laravel 重寫日志,讓日志更優(yōu)雅

標簽:金華 郴州 香港 寶雞 阿克蘇 通化 佳木斯 自貢

巨人網絡通訊聲明:本文標題《關于laravel 日志寫入失敗問題匯總》,本文關鍵詞  關于,laravel,日志,寫入,失敗,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《關于laravel 日志寫入失敗問題匯總》相關的同類信息!
  • 本頁收集關于關于laravel 日志寫入失敗問題匯總的相關信息資訊供網民參考!
  • 推薦文章
    湘阴县| 莱州市| 抚远县| 松江区| 衡阳市| 龙州县| 永新县| 张家界市| 寿光市| 方山县| 沙坪坝区| 平南县| 泽普县| 边坝县| 夏邑县| 神木县| 霞浦县| 济阳县| 扎囊县| 绥中县| 秦皇岛市| 安塞县| 启东市| 清苑县| 泽普县| 沙湾县| 正定县| 满洲里市| 郁南县| 祁连县| 宾川县| 江陵县| 安徽省| 武义县| 东乡族自治县| 进贤县| 上犹县| 安乡县| 卓资县| 宝兴县| 军事|