在ADF中跟蹤SQL執(zhí)行時間實現(xiàn)代碼
更新時間:2012年11月27日 09:55:29 作者:
ADF是oracle提供的一套企業(yè)開發(fā)的解決方案,本文將實現(xiàn)在ADF中跟蹤SQL執(zhí)行時間
ADF是oracle提供的一套企業(yè)開發(fā)的解決方案。
最近做性能測試, 需要獲取當前頁面有多少SQL 查詢,花費多少時間。首先想到的就是常用的log4jdbc 結(jié)果 ADF 不支持封裝的驅(qū)動。后嘗試在Orace DB 層面上攔截,比較復雜還要設置數(shù)據(jù)庫連接的sesson屬性,也要修改以后代碼。
ADF 的ViewObjectImp 提供復寫SQL調(diào)用的方法,但需要修改已有代碼,最后還是修改ADF源碼來達到不修改已有代碼而獲取到SQL執(zhí)行時間。
先用改好的adfm.jar 覆蓋已有的, 配置虛擬機啟動參數(shù) -DSQLTruckerToFile=D:\log.txt -DenableSQLTracker=true
重啟就可以看到SQL 執(zhí)行時間了
195:<SQL:>SELECT Geos.CREATED_BY, Geos.CREATED_TS, Geos.FAX_NUMBER, Geos.FROM_EMAIL_ADDRESS, Geos.ID, Geos.MODIFIED_BY, Geos.MODIFIED_TS, Geos.NAME, Geos.PHONE_NUMBER, Geos.REPLY_TO_EMAIL_ADDRESS, Geos.IS_DEFAULT FROM GEOS Geos ORDER BY Geos.IS_DEFAULT,Geos.NAME
195:<ElapsedTime(ms):>729
最近做性能測試, 需要獲取當前頁面有多少SQL 查詢,花費多少時間。首先想到的就是常用的log4jdbc 結(jié)果 ADF 不支持封裝的驅(qū)動。后嘗試在Orace DB 層面上攔截,比較復雜還要設置數(shù)據(jù)庫連接的sesson屬性,也要修改以后代碼。
ADF 的ViewObjectImp 提供復寫SQL調(diào)用的方法,但需要修改已有代碼,最后還是修改ADF源碼來達到不修改已有代碼而獲取到SQL執(zhí)行時間。
先用改好的adfm.jar 覆蓋已有的, 配置虛擬機啟動參數(shù) -DSQLTruckerToFile=D:\log.txt -DenableSQLTracker=true
重啟就可以看到SQL 執(zhí)行時間了
195:<SQL:>SELECT Geos.CREATED_BY, Geos.CREATED_TS, Geos.FAX_NUMBER, Geos.FROM_EMAIL_ADDRESS, Geos.ID, Geos.MODIFIED_BY, Geos.MODIFIED_TS, Geos.NAME, Geos.PHONE_NUMBER, Geos.REPLY_TO_EMAIL_ADDRESS, Geos.IS_DEFAULT FROM GEOS Geos ORDER BY Geos.IS_DEFAULT,Geos.NAME
195:<ElapsedTime(ms):>729
相關(guān)文章
在ORACLE中SELECT TOP N的實現(xiàn)方法
這篇文章主要介紹了在ORACLE中SELECT TOP N的實現(xiàn)方法,非常不錯,具有參考借鑒價值,需要的朋友參考下2017-01-01Oracle 跨庫 查詢 復制表數(shù)據(jù) 分布式查詢介紹
這篇文章主要介紹了Oracle 跨庫 查詢 復制表數(shù)據(jù) 分布式查詢的相關(guān)資料,需要的朋友可以參考下2014-10-10Oracle中查詢表結(jié)構(gòu)的6種方法總結(jié)
工作中查看oracle表結(jié)構(gòu)經(jīng)常會遇到,下面這篇文章主要給大家介紹了關(guān)于Oracle中查詢表結(jié)構(gòu)的6種方法,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2023-04-04Oracle數(shù)據(jù)庫及圖形化界面安裝教程圖解
本文通過圖文并茂的形式給大家介紹了Oracle數(shù)據(jù)庫及圖形化界面安裝教程,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-08-08