2011-12-02 39 views
0

我在kohana 3.0.12上的網站上工作,我已經安裝了一個模塊,記錄我一些錯誤。所有的工作都很好,除了當我想要有效地記錄一個錯誤,我得到一個錯誤,我不知道如何管理它。kohana 3.0.12如何登錄

這裏是亂碼:

public static function handler(Exception $e) 
{ 


    // It's a nice time to log :) 
    Kohana::$log->add(Kohana::ERROR, Kohana_Exception::text($e)); 

    etc code here 

清楚,Kohana_Exception ::文本($ E)引起像一個例外:調用未定義的方法Kohana_Exception ::文本()?我想這是一個框架錯誤。任何想法如何我可以解決這個問題? (我想我應該用另一種實例,但Kohana_Exception ::但什麼情況下?) 謝謝

回答

1

,因爲無論Kohana_Exception也不Exception類沒有text()方法你得到這個錯誤。我認爲,模塊的作者想寫這樣的:

Kohana::$log->add(Kohana::ERROR, Kohana::exception_text($e)); 
+0

現在的作品完美,但我已經在異常結束留下一個錯誤: echo請求::工廠(路線::得到( 'kohana_error') - > URI($請求)) \t \t \t \t - >執行() \t \t \t \t - > send_headers() \t \t \t \t - >體(); 這段代碼拋出我調用未定義的方法Request :: body()任何想法爲什麼? – dana

+0

body()在3.2中引入,對於3.0我相信你應該使用'Request :: factory(Route :: get('kohana_error') - > uri($ request)) - > execute() - > send_headers() - >回覆;' – matino

+0

問題解決了。剩下一個(更多)問題:它實際上不會在日誌位置(在引導程序中聲明)中記錄這類錯誤。任何提示?非常感謝 – dana

0

我相信在3.0異常處理位於Kohana的類。嘗試Kohana :: exception(),或者查看API指南,如果不是這樣。

+0

謝謝,@matino解決方案解決了我的問題 – dana