1. 程式人生 > >[性能調優]如何通過讀PeopleSoft Trace文件來調優

[性能調優]如何通過讀PeopleSoft Trace文件來調優

正在 內容 準備 .cn 技術分享 分享 需要 pps ima

理解PeopleSoft Trace文件對於解決性能問題是絕對有必要的。你可能面臨一個問題,用戶抱怨性能較慢,而OEM並沒有補貨SQL,你有2種方法選擇:使用PeopleSoft trace檢查或啟用數據庫的跟蹤來查找SQL。

你應該優先選擇PeopleSoft的Trace。此外你需要了解Trace文件中的所有內容才不會感到困惑。你可以使用TraceMagic工具來分析Trace文件。

下面是如何來讀取Trace 文件來識別性能瓶頸的SQL,然後再做進一步打算:

這個trace文件是8.54的

PSAPPSRV.8972 (706) 1-19753 10.45.11 0.000000 Cur#1.8972.ELM91DEV RC=0 Dur=0.000000 COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL

下面來理解下這行日誌,我們關註的部分是:

1-19753 10.45.11 0.000000 Cur#1.8972.ELM91DEV RC=0 Dur=0.000313 COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL

第一列:1-19753 這是進程的順序行計數器,下一行將有遞增的數字。

第二列:10.45.11 這是記錄跟蹤行的時間戳,這個時間戳來自於用戶的機器,並不是來自於數據庫的時間戳。

第三列:0.000000 這是自上一條日誌寫進來的時間這意味1-19752之後用了0.000000秒 寫了1-19753。

第四列:Cur#1 這是語句的光標號,如果您打開第二個遊標,將會有一個大於1的光標號。例如:

PSAPPSRV.20822 (56) 1-54263 11.42.34 0.000195 Cur#1.20822.notSamTran RC=0 Dur=0.000002 Open Cursor Handle=0000000000AF0E10
PSAPPSRV.20822 (56) 1-54264 11.42.34 0.000009 Cur#2.20822.notSamTran RC=0 Dur=0.000002 Open Cursor Handle=0000000000AF0E10

第五列:ELM91DEV 這是API調用正在執行的PeopleSoft 實例名。

第六列:RC=0 這是API調用返回的代碼。

第七列:Dur=0.000313 這個返回的時間是根據調用的不用或執行sql語句的不同返回的時間。

第八列:COM Stmt=SELECT FILL.LM_GRADE_VAL_ID,FILL.LM_GRADE_LABEL FROM PS_LM_GRD_SCH_VW FILL 這是數據庫API調用。

理解trace timer 對於解決性能問題是非常有必要的。有2個主要的timers需要理解:

Dur=0.000313 這表示與SQL語句相關的API調用時間,換句話說這可能是準備或執行的時間,這是你在解決性能問題時需要考慮的時間參數,很多時間這個參數的值和CPU的值是一樣的。

第二列:0.000000 前文已經說明,這是上一條跟蹤被寫入的時間,所以這個時間可能是下面幾種:

用戶在思考的時間--如果此處的值非常大,那麽這一定是用戶思考的時間。如果之前的行是斷開連接,提交或回滾,也說說明是用戶思考的時間。這個值很大的話,不用擔心。

PeopleTools處理時間--這將是一個導致不會寫日誌的活動。這可能是在等待遠程調用,或者是頁面在處理,由於這些原因,這個時間可能很大,需要考慮。

SQL-可能是SQL執行的時間。

我的公眾號:

技術分享

[性能調優]如何通過讀PeopleSoft Trace文件來調優