如何将调试消息写入Silverstripe日志文件

时间:2014-03-06 02:32:52

标签: php silverstripe

我有一个正在开发的Silverstripe 3.1网站,并希望将邮件写入默认日志文件 - silverstripe.log

这是我们用来向屏幕输出变量或消息的方法:

Debug::show($variable);
Debug::message("Debug message goes here");

将这些输出到silverstripe.log文件的最简单方法是什么?我一直在查看文档,但找不到正确的方法:http://doc.silverstripe.com/framework/en/topics/debugging

2 个答案:

答案 0 :(得分:11)

您可以执行以下操作:

在mysite / _config.php

SS_Log::add_writer(new SS_LogFileWriter('silverstripe.log'), SS_Log::WARN, '>');
你的代码中的

SS_Log::log("Dammit, an issue with variable ".$var, SS_Log::WARN);

更多http://doc.silverstripe.com/framework/en/topics/error-handling

同时阅读框架/ dev / Log.php中的代码可以让您更深入地了解优先级的工作原理。

PS:确保在apache用户可写的文件夹中定义'silverstripe.log'

答案 1 :(得分:2)

最简单的解决方案实际上非常接近您的原始尝试。

Debug::log("output");

这将输出到站点根目录中的debug.log文件。