我有一些'意大利麪條式的代碼,慷慨地與自定義標記和存儲過程調用。模板包括彼此,自定義標籤嵌套和存儲過程調用其他存儲過程的地方。如何詳細跟蹤Coldfusion模板執行情況?
問題是一個模板調用掛在兩者之間。我無法看到任何錯誤,也看不到調試輸出。儘可能詳細地調試這種「懸掛」請求的最佳方式是什麼?
謝謝!
我有一些'意大利麪條式的代碼,慷慨地與自定義標記和存儲過程調用。模板包括彼此,自定義標籤嵌套和存儲過程調用其他存儲過程的地方。如何詳細跟蹤Coldfusion模板執行情況?
問題是一個模板調用掛在兩者之間。我無法看到任何錯誤,也看不到調試輸出。儘可能詳細地調試這種「懸掛」請求的最佳方式是什麼?
謝謝!
如果使用的是CF 8+,您可以使用步驟調試工具在Eclipse中單步執行代碼:http://www.adobe.com/devnet/coldfusion/articles/debugger.html
如果您使用的是較早的版本,可以使用第三方產品一樣融合調試(http://www.fusion-debug.com/fd/)做同樣的事情。
如果您正在使用CF8,你也可以使用CF管理服務器監視器看到一個線程掛起還有:http://www.adobe.com/devnet/coldfusion/articles/monitoring_pt1.html
如果內置調試器無用,導致請求只是掛起另一個快捷方式,那麼只需從頂部的cfabort開始,並一直向下移動,直到您點擊導致請求掛起的文件。
我這樣做了,但我認爲這是相當'低科技'的解決方案。我將錯誤追溯到MySQL存儲過程(即調用其他過程),目前我停在那裏。 – 2010-09-09 16:55:45
肯定是低科技。如果可用/可用,調試器會更好,因爲它會提供中斷點和切入點,變量檢查等等,但有時如果它只是意大利麪條代碼中的難題,調試器會導致比任何事情更多的痛苦,cflog也可以幫助... – jfrobishow 2010-09-09 18:27:02
CFTrace是一個很好的工具。它是原生的,並且也報告時間信息。
我唯一遇到的問題是,如果提問者具有speghetti代碼並且文件分佈在整個文件系統中,則必須在所有文件上添加跟蹤,這可能很麻煩。 – sksallaj 2013-01-24 18:12:48
你看過標準的coldfusion服務器日誌文件,看看裏面可能有什麼嗎?
您是否在控制檯窗口中運行服務器,以便您可以看到模板正在運行時(或者並非視情況而定)在控制檯中顯示的內容?
謝謝,但最好的運氣不好,系統掛在遠程直播服務器上... – 2010-09-16 12:49:07
你可以採取jvm線程轉儲。你可以通過命令行或通過服務器監控來完成,如果你有Enterprise 8+
什麼版本的CF? – 2010-09-09 16:30:07
CF8和Railo上運行的相同代碼 – 2010-09-09 17:34:19
FusionDebug與Railo合作 – 2010-09-09 19:39:35