2011-06-21 80 views

回答

48

要查看在Drupal自己的內部日誌系統(watchdog數據庫表)條目,去http://example.com/admin/reports/dblog。這些可以包括Drupal特定的錯誤以及一般的PHP或MySQL錯誤。

使用watchdog()函數可以從您自己的自定義模塊向此日誌添加條目。

當Drupal引導它時,它使用PHP函數set_error_handler()爲PHP錯誤設置自己的錯誤處理程序。因此,每當Drupal中發生PHP錯誤時,將通過watchdog()調用admin/reports/dblog進行記錄。例如,如果您查找PHP致命錯誤,請在/var/log/apache/error.log中找不到它們,這就是原因。其他錯誤,例如Apache錯誤仍應該記錄在/var/log中,或者您已將其配置爲登錄的任何地方。

+0

爲什麼不使用error_log($ message + $ vars + $ etc)? – AlxVallejo

+2

你可以這樣做。看門狗表不僅僅包含消息,比如模塊或者庫或者其它的東西,你可能想要存儲的一系列序列化數據(與錯誤有關的信息,消息字符串之外),位置,引用者,當前登錄的用戶等等。因此,拋出'watchdog('my_module',「Something broke。」,$ array_of_data)'對調試非常有用。 –

0

:有關此命令可以在這裏

drush ws

更多信息確保安裝了drush(您可能還需要確保dblog模塊已啓用)並使用:

drush watchdog-show --tail 

這會給你一個實時看你的控制檯的日誌。