雲應用開發之新浪SAE日誌檢視
在應用開發過程中,除錯是非常重要的一步,在此過程中我們可以跟蹤程式執行的中間結果,用以分析程式執行是否符合預定邏輯。在本地開發中,藉助System.out和log4j可以很容易列印中間結果,但把程式部署到雲端之後,要檢視程式日誌還是有些地方是需要注意的,因為雲平臺會把日誌分類,根據不同的查詢條件顯示不同輸出方式的日誌內容。
本文以一個簡單的註冊web app為例,分步驟說明雲應用SAE的日誌檢視方式。
一、web app開發及SAE雲應用部署
web app使用struts2 + jsp + log4j開發而成。需要說明的是在開發和匯出war包時均無特殊之處,和部署到tomcat過程一致
二、web app後臺action中日誌列印程式碼如下
protected void outputDebug(){ //system.out System.out.println("引數除錯!輸出自System.out.println!"); System.out.println("引數除錯!輸出自System.out.println!"); System.out.println("引數除錯!輸出自System.out.println!"); //log.info log.info("除錯引數!!!輸出自log.info!!!"); log.info("除錯引數!!!輸出自log.info!!!"); log.info("除錯引數!!!輸出自log.info!!!"); //log.error log.error("除錯引數!!!輸出自log.error!!!"); log.error("除錯引數!!!輸出自log.error!!!"); log.error("除錯引數!!!輸出自log.error!!!"); //log.warn log.warn("除錯引數!!!輸出自log.warn!!!"); log.warn("除錯引數!!!輸出自log.warn!!!"); log.warn("除錯引數!!!輸出自log.warn!!!"); //log.debug log.debug("姓名:" + report_name + ",輸出自log.debug!!!"); log.debug("暱稱:" + column1 + ",輸出自log.debug!!!"); log.debug("郵箱:" + column2 + ",輸出自log.debug!!!"); log.debug("聯絡方式:" + column3 + ",輸出自log.debug!!!"); }
三、SAE雲平臺日誌檢視
1、官方文件對SAE雲平臺說明如下,一定要仔細看平臺開發文件
2、瀏覽器訪問SAE雲應用
這裡需要說明的是,在訪問SAE應用時,需要寫出完整的URL,例如
http://7.reporttable.applinzi.com/index.jsp,不能寫成
http://7.reporttable.applinzi.com/,即使在web.xml中配置如下程式碼也不行。
填寫web app表格<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
3、檢視SAE應用日誌
在新浪雲控制檯左側運維子項下進入日誌中心
(1)檢視log4j.debug輸出日誌:
(2)檢視log4j.err輸出日誌
其它引起程式報錯的日誌也在此檢視,例如java.lang.NullPointerException,jar衝突等。
(3)檢視log4j.warn輸出日誌
(4)檢視log4j.info和system.out輸出日誌