您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > PHP框架 > ZendFramework

zendframework日志组件zend_log的使用

作者:  来源:互联网  日期:2013-10-22 21:34:28
收藏  评论:( 0 )  阅读:1034

Zend_Log 在ZendFramework里是一个通用日志组件. 它支持多个日志后端,格式化发送给日志的消息,过滤被纪录的消息.这些功能被划分为如下的对象:

•一个Log (Zend_Log的实例)是应用程序使用最多的对象.如果你想你可以有任意多的Log对象; 它们之间不会相互影响.一个Log对象必须至少包含一个Writer对象,可选的可以包含一个或多个Filter.

•一个 Writer (继承自Zend_Log_Writer_Abstract) 负责向存储中保存数据.

•一个 Filter (实现 Zend_Log_Filter_Interface接口)阻塞数据被保存.一个Filter可以应用到个别的Writer, 或则在所有Writer之前应用到一个Log.这样Filter是串联起来的.

•一个 Formatter (实现了 Zend_Log_Formatter_Interface接口) 在由Writer写入数据之前可以对日志数据进行格式化.每一个Writer只能有一个Formatter.

使用例子:

1,在application.ini中配置日志目录

       resources.logdir = APPLICATION_PATH "/../logs"

2,在启动文件Bootstrap.php中增加初始化log对象的方法:

public function _initLog()
        {
        $options = $this->getOption('resources');
        $logdir = $options['content'];
        $logFile = $logdir. '/log_'.date('Ymd').'.log';
        if (! is_dir($logdir)) {
            try {
                mkdir($logdir, 0700);
            } catch (Exception $e) {
                echo nl2br($e->__toString());
            }
        }
        $writer = new Zend_Log_Writer_Stream($logFile);
        $format = '[%timestamp%] [%priorityName%] : %message%' . PHP_EOL;
        $formatter = new Zend_Log_Formatter_Simple($format);    
        $writer->setFormatter($formatter);
        $logger = new Zend_Log($writer);
        $logger->addFilter((int) $log->priority);
                          
        Zend_Registry::set('logger', $logger);
                          
        }

使用log对象记录日志:

       在你的工具类中封装一个静态方法:

public static function log ($message, $priority=Zend_log::INFO)
        {  
            $logger = Zend_Registry::get('logger');         
            return $logger->log($message, $priority);      
        }

程序中就可以直接调用这个log方法记录日志了。



除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/zend/419.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论
UncleToo,一档有态度的PHP中文网

图片教程