亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

關于PHP的Yii框架中日志的相關配置及使用

2020-03-22 17:40:38
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP的html' target='_blank'>Yii框架中日志的相關配置及使用,包括bug追蹤以及數據庫查詢耗時記錄等,需要的朋友可以參考下

默認的日志是輸出到protected/runtime/application.log

如果需要修改那么需要在main.php里面的 components 下面增加log配置,如下:

 preload = array( log ),//這句也必須加上 components = array(  log = array(  class = CLogRouter ,  routes = array( //這是一個文件route表示category為test開頭的所有類型的輸出都會記錄到runtime/test.log下面  array(  class = CFileLogRoute ,  levels = trace, info, debug, warn, error, fatal, profile ,  categories = test.* ,  maxFileSize = 1048576,//單文件最大1G  logFile = test.log , // 開發過程中所有日志直接輸出到瀏覽器了,這樣不需要登錄服務器看日志了 
),

如果在某處調用了Yii::log( jdkshgds , info , test.xx

這個log首先被記錄在了內存中一個CLogger類的array中,然后會逐一的判斷每個LogRoute,判斷是否需要輸出,注意是逐一判斷,不是其中一個輸出下一個就不管了。

拿上面的配置來說:

第一個CFileLogRoute, categories = test.* ,levels里包含了info, test.xx滿足條件,所以會執行,將這條log輸出到test.log中,然后下一個CWebLogRoute, levels = CLogger::LEVEL_PROFILE,。而這條log是info的,所以不會執行,再下一個CWebLogRoute, categories = test.* ,levels沒指定,那就說不過濾,所以這個也會被執行,所以這條log將被輸出到瀏覽器中。

二、profile功能
另外logger還有一個很強大的功能:profile,

Yii::beginProfile( blockID ...code block being profiled...Yii::endProfile( blockID 

這樣就能測試這個code block的執行效率了,非常的方便啊。

詳細的配置查看:http://www.yiiframework.com/doc/api/1.1/CProfileLogRoute

然后還有一個很BUG的功能,Profiling SQL Executions

很多時候sql語句寫的不好會非常影響效率的,但是要確定哪一條語句影響了效率就需要profiling了。YII也提供了這個bug級別的功能。

三、Yii::log()和Yii::trace()的使用
首先在config文件中設置log

 log = array( class = CLogRouter , routes = array( array( class = CFileLogRoute ,//這表示把日志輸出到文件中,下方有詳細的 levels = error, warning , array( class = CWebLogRoute ,//這表示把日志顯示在網頁下方,下方有詳細的 levels = trace, info, error, warning , categories = cool.*,system.db.* ,),

日志路由class:

CDbLogRoute: 將信息保存到數據庫的表中。

CEmailLogRoute: 發送信息到指定的 Email 地址。

CFileLogRoute: 保存信息到應用程序 runtime 目錄中的一個文件中。

CWebLogRoute: 將 信息 顯示在當前頁面的底部。

CProfileLogRoute: 在頁面的底部顯示概述(profiling)信息。

信息級別levels:

trace: 這是在 Yii::trace 中使用的級別。它用于在開發中 跟蹤程序的執行流程。

info: 這個用于記錄普通的信息。

profile: 這個是性能概述(profile)。下面馬上會有更詳細的說明。

warning: 這個用于警告(warning)信息。

error: 這個用于致命錯誤(fatal error)信息。

分類categories:

可以自定義,但在輸出函數里要對應才會被寫入日志里
(例如上邊寫的是 cool.* 和 system.db.* ,就會把相應分類的信息寫入日志,請結合下文來理解)

設置完了,就可以用寫入日志的函數來記錄了:

Yii::trace( My log message. , cool.pd //cool.pd屬于cool.*分類,所以會被寫入日志Yii::log( My log message. , info , cool.collectpd //log定義級別為info,結合上文,第一個logclass會忽略,不會被寫入文件,但會被第二個logclass接收,寫入日志在網絡下方顯示。

trace()和log()的區別:
trace()只會在調試模式下生效,即開啟debug的時候
trace()不分level,但log()能設置levels參數

四、調試sql query每個語句執行的耗時
在配置中的log下加上下面這個Route

//這個配置專門負責數據庫操作的profile array(  class = CProfileLogRoute ,  levels = CLogger::LEVEL_PROFILE,  showInFireBug = true,  ignoreAjaxInFireBug = true,  categories = system.db.* , //只記錄db的操作日志,其他的忽略 ),

然后在某個controller的某個action中加入:

Yii::beginProfile( db , pocketpet for($i=0;$i 1000;$i++){  $user = UserModel::model()- findByPk( 1 //這里只要是數據庫操作就行,這個只是個例子 }

Yii::endProfile( db , pocketpet

在瀏覽器中訪問這個action,記得先打開firebug,然后firebug中就能看到如下圖的記錄:

2015128153707541.jpg (600×83)

相同的query會進行歸類,計算total和average,這個對于分析還是非常有幫助的。

也可以將db的日志寫到文件,配置如下(不建議使用,還是到瀏覽器用firebug方便):

array(  class = CFileLogRoute ,  levels = CLogger::LEVEL_PROFILE,  categories = system.db.* , //只記錄db的操作日志,其他的忽略  logFile = db.log , ),

當然,想要生效還得有下面兩步配置:

1 . 記得在index.php, 中加入以下配置

$yii = dirname(__FILE__). /../yii/framework/yii.php $config = dirname(__FILE__). /protected/config/main.php defined( YII_DEBUG ) or define( YII_DEBUG ,true);defined( YII_DEBUG_SHOW_PROFILER ) or define( YII_DEBUG_SHOW_PROFILER ,true);//enable profilingdefined( YII_DEBUG_PROFILING ) or define( YII_DEBUG_PROFILING ,true);//trace leveldefined( YII_TRACE_LEVEL ) or define( YII_TRACE_LEVEL ,3);//execution timedefined( YII_DEBUG_DISPLAY_TIME ) or define( YII_DEBUG_DISPLAY_TIME ,false);require_once($yii);Yii::createWebApplication($config)- run();

2. 在main.php主配置文件里面,的components db 里將enableProfiling設置為true

 components = array( db = array( enableProfiling = true, //這個是用來記錄日志的,會記錄每一條語句執行的時間 enableParamLogging = true,//true表示包括sql語句的參數在內的信息都會記錄到日志里,非常詳細)

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !

相關推薦:

關于PHP中Yii框架的常用日志操作

關于PHP的Yii框架中的日志功能

以上就是關于PHP的Yii框架中日志的相關配置及使用的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩美女写真福利在线观看| 精品一区电影国产| 日韩在线中文视频| 国产色综合天天综合网| 亚洲精品第一页| 这里只有精品丝袜| 日本久久精品视频| 亚洲激情在线视频| 国产一区二区黑人欧美xxxx| 亚洲精品国产精品自产a区红杏吧| 亚洲国产精品热久久| 欧美性猛交99久久久久99按摩| 亚洲国产成人久久综合一区| 久久久精品中文字幕| 色噜噜狠狠色综合网图区| 亚洲第一页在线| 久久综合国产精品台湾中文娱乐网| 国产精品福利小视频| 亚洲天堂第二页| 国产亚洲精品综合一区91| 成人黄色激情网| 伊人伊人伊人久久| 国产精品福利在线观看| 成人黄色片网站| 91中文在线观看| 欧美黑人狂野猛交老妇| 色悠久久久久综合先锋影音下载| 久久久成人精品视频| 日本久久久久久久| 国产精品视频一区国模私拍| 欧美精品18videosex性欧美| 热久久免费国产视频| 国产在线精品自拍| 最新69国产成人精品视频免费| 91精品国产91久久久久久| 亚洲护士老师的毛茸茸最新章节| 亚洲人精品午夜在线观看| 一区二区日韩精品| 欧美高清不卡在线| 日韩性xxxx爱| 欧美大片免费观看| 亚洲综合自拍一区| 92国产精品久久久久首页| 日韩人在线观看| 国产一区二区三区欧美| 久久精品中文字幕电影| 亚洲一区二区三区四区视频| 欧美成人中文字幕| 国产亚洲欧美日韩美女| 亚洲欧美日韩视频一区| 91在线网站视频| 国产精品黄页免费高清在线观看| 国自产精品手机在线观看视频| 国内精品久久久久影院 日本资源| 国产精品91久久久久久| 欧美自拍视频在线观看| 亚洲欧美三级伦理| 日韩精品亚洲精品| 色综久久综合桃花网| 国产美女扒开尿口久久久| 韩国19禁主播vip福利视频| 中文字幕在线看视频国产欧美在线看完整| 成人免费视频xnxx.com| 国产日产亚洲精品| 国产成人综合精品| 一二美女精品欧洲| 国产女人精品视频| 日韩黄色在线免费观看| 欧美视频在线观看 亚洲欧| 97视频免费观看| 久久久久久久久久久网站| 日韩成人在线电影网| 亚洲精品久久久久久下一站| 日韩最新免费不卡| 日韩国产在线播放| 国产精品久久久久久久天堂| 欧美精品xxx| 欲色天天网综合久久| 成人美女免费网站视频| 日韩视频精品在线| 国产精品午夜国产小视频| 亚洲淫片在线视频| 久久成人精品一区二区三区| 欧洲精品久久久| 欧美肥臀大乳一区二区免费视频| 国产欧美日韩亚洲精品| 成人黄色av网站| 国语自产精品视频在线看| 欧洲成人免费视频| 69av成年福利视频| 亚洲另类激情图| 九九久久久久久久久激情| 日韩**中文字幕毛片| 欧美激情xxxx性bbbb| 一区二区三区无码高清视频| 国外成人在线视频| 亚洲欧洲日本专区| 亚洲欧美激情四射在线日| 国产精品黄色影片导航在线观看| 亚洲日本欧美日韩高观看| 国产999在线| 日韩免费观看高清| 成人在线视频福利| 国产精品爱啪在线线免费观看| 日韩中文娱乐网| 欧美日韩成人精品| 亚洲欧洲成视频免费观看| 日本高清+成人网在线观看| 91美女片黄在线观看游戏| 欧美丰满少妇xxxxx| 一本色道久久综合狠狠躁篇的优点| 亚洲自拍偷拍区| 亚洲欧美激情四射在线日| 久久久久久久影视| 成人免费观看49www在线观看| 欧美性猛交xxxx黑人猛交| 中文字幕亚洲欧美| 国外成人免费在线播放| 久久夜色精品国产欧美乱| 日韩av成人在线观看| 在线观看久久av| 在线播放日韩欧美| 亚洲人成电影网站色…| 国产a∨精品一区二区三区不卡| 欧美电影免费看| 日本一区二区不卡| 国产97免费视| 亚洲精品日韩在线| 亚洲精品一区久久久久久| 成人a级免费视频| 国产精品精品一区二区三区午夜版| 欧美精品一区二区三区国产精品| 精品高清美女精品国产区| 日韩在线www| 国产精品久久久久久久久借妻| 欧美亚洲成人xxx| 亚洲国产一区二区三区在线观看| 国产精品一区专区欧美日韩| 97超碰国产精品女人人人爽| 欧美亚洲日本黄色| 亚洲免费视频一区二区| 亚洲欧美制服第一页| 国产精品爽黄69| 亚洲一区二区三区视频| 啊v视频在线一区二区三区| 国产精品欧美日韩久久| 91欧美日韩一区| 亚洲精品456在线播放狼人| 欧美第一淫aaasss性| 成人xxxxx| 97精品欧美一区二区三区| 国产精品99久久久久久久久久久久| 国产精品影院在线观看| 精品一区电影国产| 韩国日本不卡在线| 国产极品精品在线观看| 国产精品第一页在线| 日韩在线观看你懂的| 欧美日韩国产一区在线| 国模视频一区二区三区| 中文字幕精品在线视频| 国产精品福利在线| 日韩成人xxxx| 日韩在线观看网站|