2

我正在尝试处理我网站上的错误。我在日志文件中记录每个错误,但我想知道如何自定义记录在日志文件中的消息。

现在,我收到以下消息:

2013/09/30 10:08:59 [错误] [exception.CException] 异常 'CException' 与 myDomain.com\protected\controllers\SiteController.php:234 中的消息“错误测试”

你能帮助我吗?

4

1 回答 1

2

对于手动自定义日志消息,您需要创建自己的 LogRoute 类。在您的情况下,您需要从 CFileLogRoute 继承类并覆盖方法 formatLogMessage (例如示例):

class MyFileLogRoute extends CFileLogRoute{
    protected function formatLogMessage($message,$level,$category,$time)
    {
        //enter code here your custom message format
        return @date('Y/m/d H:i:s',$time)." [$level] [$category] $message\n";
    }
}

比配置你的配置文件:

       'log' => array(
           'class' => 'CLogRouter',
           'routes' => array(
               array(
                   'class' => 'MyFileLogRoute',
                   'levels' => 'error, warning, info',
                   'categories' => 'application.*',
                   'logPath' => dirname(__FILE__).'/../../../../../logs/',
               ),
               ...

是的,@ragingprodigy 是对的:您可以在 index.php 中设置define('YII_DEBUG', 0)define('YII_TRACE_LEVEL', 0)从日志消息中删除堆栈跟踪

于 2013-10-11T15:08:14.840 回答