创星网络[分享知识 传递快乐]
标题:
YII Framework学习教程-YII的日志
[打印本页]
作者:
luinstein
时间:
2012-10-9 03:18
标题:
YII Framework学习教程-YII的日志
日志的作用(此处省略1000字)YII中的日志很好很强大,允许你把日志信息存放到数据库,发送到制定email,存放咋文件中,意见显示页面是,甚至可以用来做性能分析。
YII中日志的基本配置:/yii_dev/testwebap/protected/config/main.php
\'log\'=>array(
\'class\'=>\'CLogRouter\',
\'routes\'=>array(
array(
\'class\'=>\'CFileLogRoute\',
\'levels\'=>\'error, warning\',
),
// uncomment the following to show log messages on web pages
/*
array(
\'class\'=>\'CWebLogRoute\',
),
*/
),
),
复制代码
YII中日志的基本使用:
可以通过YII提供的Yii::log和Yii::trace进行日志信息的输出,两者的区别看看定义就知道了。
函数定义
public static function trace($msg,$category=\'application\')
{
if(YII_DEBUG)
self::log($msg,CLogger::LEVEL_TRACE,$category);
}
public static function log($msg,$level=CLogger::LEVEL_INFO,$category=\'application\')
{
if(self::$_logger===null)
self::$_logger=new CLogger;
if(YII_DEBUG && YII_TRACE_LEVEL>0 && $level!==CLogger::LEVEL_PROFILE)
{
$traces=debug_backtrace();
$count=0;
foreach($traces as $trace)
{
if(isset($trace[\'file\'],$trace[\'line\']) && strpos($trace[\'file\'],YII_PATH)!==0)
{
$msg.=\"nin \".$trace[\'file\'].\' (\'.$trace[\'line\'].\')\';
if(++$count>=YII_TRACE_LEVEL)
break;
}
}
}
self::$_logger->log($msg,$level,$category);
}
复制代码
$msg:你要输出的日志信息$category:日志信息所属分类
$level:日志信息的级别:
const LEVEL_TRACE=\'trace\';用于调试环境,追踪程序执行流程
const LEVEL_WARNING=\'warning\';警告信息
const LEVEL_ERROR=\'error\';致命错误信息
const LEVEL_INFO=\'info\';普通提示信息
const LEVEL_PROFILE=\'profile\';性能调试信息
复制代码
基本使用方法举例<div class=\"blockcode\"><div id=\"code_666\"><ol>
欢迎光临 创星网络[分享知识 传递快乐] (http://bbs.cxweb.com.cn/)
Powered by Discuz! X3