2015-07-03 35 views
0

我當時正在上LoadRunner的VuGen中測試時,我得到了錯誤:「消息ID [-13992]未保存 - 自動日誌高速緩存太小,無法包含消息」錯誤使用VuGen

"Message id [-13992] was not saved - Auto log cache is too small to contain the message"

的在腳本代碼在這裏寫在下面的塊失敗:

int m, i;  
lr_save_string("","a_buf") 
m = atoi(lr_eval_string("{dcDownloads_count}")) 
for(i=0;i<=m;i++) 
{ 
    if(i<m) 
     lr_param_sprintf("a_buf",do something manipulating a_buf) 
    else 
     lr_param_sprintf("a_buf", do some other things with a_buf) 
     lr_param_sprintf(("a_buf", do some other things with a_buf) /*the same above  sprintf statement was copied by mistake somehow*/ 
} 

我能夠認識到,同樣的sprintf語句中的if..else塊之外寫入兩次。我剛剛刪除它,腳本工作正常。

但我的問題是:爲什麼我得到上述錯誤與上述代碼? 我認爲「a_buf」會在每次出現if .. else塊後被相同的語句覆蓋,並且可能在輸出中出現錯誤,可能導致我的Web請求失敗或者無法下載所需的記錄。 爲什麼我會得到這個運行時錯誤?這是什麼意思? 謝謝

回答

2

該消息表示用於保存消息的內部緩衝區不夠大。

解決方案: 在default.cfg文件的日誌部分設置AutoLogBufferSize。 下面的示例將其設置爲999 KB

[日誌]

AutoLogBufferSize = 999

+0

當你這樣做,你會被塑造每個虛擬用戶最小的資源池。在999KB的情況下,靠近一個預留的MB。考慮你需要什麼,而不是慷慨考慮你將要爲每個主機運行多個虛擬用戶,並且你不想在虛擬用戶交換自己或者完全耗盡內存的情況下結束。 –