其實我工作的是Sugar On Demand的Sugar CRM軟件包。 在此包中,Sugar CRM On Demand不允許文件處理PHP函數但我想爲我的包創建單獨的日誌文件。我們可以通過自己的方法在Sugar CRM中創建自定義日誌文件嗎?
有沒有一種方法可以在Sugar CRM中通過Sugar CRM內部庫創建單獨的自定義日誌文件,而不會干擾Sugar CRM的默認日誌。
其實我工作的是Sugar On Demand的Sugar CRM軟件包。 在此包中,Sugar CRM On Demand不允許文件處理PHP函數但我想爲我的包創建單獨的日誌文件。我們可以通過自己的方法在Sugar CRM中創建自定義日誌文件嗎?
有沒有一種方法可以在Sugar CRM中通過Sugar CRM內部庫創建單獨的自定義日誌文件,而不會干擾Sugar CRM的默認日誌。
您可能可以,但另一種解決方案是能夠將您的軟件包設置在不同的記錄器級別。我們用SugarChimp來做這件事,這非常有幫助。您可以在「調試」時將應用程序的其餘部分設置爲「致命」,以便只將您的日誌記錄到sugarcrm.log中。你只需要用你自己的內置的SugarCRM記錄器來抽象。
所以不是:
$GLOBALS['log']->fatal('MyPackage::my_function check point');
你可以這樣做:
MyPackage::log('fatal','MyPackage::my_function check point');
然後在你的日誌功能做你的邏輯來檢查你的包的記錄器級別設置並調用相應的SugarLogger功能。還提供了一種通過UI更改/設置記錄器級別的方法。
你可以用偉大的命題,從傑森,但是如果你想留在你的想法,有自己的記錄,你可以嘗試:https://gist.github.com/cmourizard/3e3762bbf709ef4b05e0
太謝謝你了。通過這個,我得到了很好的支持來解決我的問題。 – Hashim 2014-10-02 06:45:31
偉大的解決方案。有一點需要考慮的是如果您使用Sugar的On Demand服務,如何獲取這個單獨的日誌文件,因爲您無法通過文件系統訪問該文件。您可以通過電子郵件將其發送到某個支持地址,或通過UI提供鏈接,就像在Admin - > System Settings中爲sugarcrm.log所做的那樣。 – egg 2014-10-02 15:06:11