paip. 調試技術打印堆棧 uapi print stack java php python 總結. 做者Attilax 艾龍, EMAIL:1466519819@qq.com 來源:attilax的專欄 地址:http://blog.csdn.net/attilax ---------uapi 打印堆棧:printStack god.printstack() 獲得堆棧String:getStack ----------------php, debug_print_backtrace(),加入error line的前面行上... 保存stack到文件:print_r(debug_backtrace()); C:\phpdeskc9>D:\wamp\php\php.exe E:\DedeCMS-V5.7-UTF8-SP1-Full\uploads\del_some _dir.php E:\OfflineExplorerPortable\Download budejie,xiaohua #0 c() called at [E:\DedeCMS-V5.7-UTF8-SP1-Full\uploads\del_some_dir.php:31] #1 b() called at [E:\DedeCMS-V5.7-UTF8-SP1-Full\uploads\del_some_dir.php:27] #2 a() called at [E:\DedeCMS-V5.7-UTF8-SP1-Full\uploads\del_some_dir.php:38] Fatal error: Call to undefined function d() in E:\DedeCMS-V5.7-UTF8-SP1-Full\upl oads\del_some_dir.php on line 35 debug_backtrace() 函數生成一個 backtrace。[1] 該函數返回一個關聯數組 ------------java e.printStackTrace() 保存stack到文件,方法1 StackTraceElement [] messages=ex.getStackTrace(); int length=messages.length; for(int i=0;i<length;i++){ System.out.println("ClassName:"+messages[i].getClassName()); System.out.println("getFileName:"+messages[i].getFileName()); System.out.println("getLineNumber:"+messages[i].getLineNumber()); System.out.println("getMethodName:"+messages[i].getMethodName()); System.out.println("toString:"+messages[i].toString()); } } 保存stack到文件,方法2 public String getTrace(Throwable t) { StringWriter stringWriter= new StringWriter(); PrintWriter writer= new PrintWriter(stringWriter); t.printStackTrace(writer); StringBuffer buffer= stringWriter.getBuffer(); return buffer.toString(); } ------------python info = traceback.format_exc() print info 參考: python異常處理及異常信息追蹤 - 趣客(放糖的綠豆湯) - Power by SupDo!.htm