我在我的Django項目中設置了日誌記錄。它在本地開發但在生產中造成麻煩。 settings.py
位如下:Django日誌記錄 - 未找到處理程序的日誌文件
import os
PROJECT_PATH = os.path.abspath(os.path.dirname(__name__))
. . .
'handlers': {
'log_file': {
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(PROJECT_PATH, 'logs/django.log'),
'maxBytes': '16777216',
'formatter': 'verbose'
},
. . .
我不斷收到此錯誤/var/log/apache2/error.log
:
ValueError: Unable to configure handler 'log_file': [Errno 2] No such file or directory: '/logs/django.log'
我已經通過運行代碼和手動設置PROJECT_PATH
在Django的殼測試這一點,它似乎返回正確的道路。另外,我檢查並檢查了日誌文件的權限。儘管沒有必要,但我將它改爲777
只是爲了測試。仍然沒有運氣。
我的本地日誌填滿了我期望的所有內容,而生產日誌爲空。
考慮到這一點,我認爲這個日誌位置可能不是最好的,但如果它在生產中起作用,至少我會知道......然後,我可以改變位置。
我錯過了什麼?
用戶是否有效並可寫入「/ logs/django.log」路徑? – arocks
當前,Apache用戶是'www-data',所有權爲'root:www-data',權限設置爲'775'。但是我已經測試過不同的所有權和'777'權限,正如原始問題所示。 – nicorellius