其实我工作的是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