2010-10-30 79 views
28

我無法找到我的日誌記錄調用結果。 記錄消息我都嘗試:Google App Engine - 找不到我的日誌消息

System.out.println("some message"); 

Logger logger = Logger.getLogger("MyLogger"); // Logger is java.util.logging.Logger 

// ... 

logger.info("some message"); 

我已經部署了我的應用程序和後幾次測試,我決定看看一些 日誌消息。但是沒有消息。我改變了最低嚴重 水平這樣對「信息」從默認的「錯誤」的,只有我看到過的消息是 服務消息:

http://dl.dropbox.com/u/1678938/logs.png

我也很感激,如果有人表現出小片段與記錄一些數據(如果它的工作) - 我懷疑我的問題可能是那些愚蠢的問題之一,當有些不正確的位置逗號可能是情況的原因。

+0

您是否單擊這些日誌消息旁邊的+號來展開它們?如顯示的那樣,不可能知道您記錄的內容是否在日誌中。 – geoffspear 2010-10-30 19:43:25

+0

是的,我點擊了+'es - 信息沒有任何相似之處,我登錄了我的應用程序。只嚮應用程序描述一些請求的「虛擬」字符串 – Alexander 2010-10-30 19:45:59

+1

您是否正在查看正確版本的應用程序的日誌?有可能您部署到版本X,但在發佈我的問題之前查看版本Y. – 2010-10-30 20:48:52

回答

12

問題已縮減爲更具體的形式 - App Engine「吃」信息消息,但顯示其他信息,如錯誤和警告消息。

這個電話後,我終於有看到我的信息郵件:

log.setLevel(Level.INFO); 

但它仍然沒有明確的 - 爲什麼沒有被顯示的信息的消息。谷歌的manual狀態:

一切的servlet寫入 標準輸出流(System.out的) 和標準錯誤流(System.err的) 由App Engine的拍攝,並在應用程序日誌記錄 。在標準輸出流中寫入 的行爲 ,在「INFO」級別記錄,寫入標準錯誤流 的行 在「警告」級別記錄。

+0

我會嘗試這個,如果它真的有效。 – 2010-11-02 12:40:45

+5

除了這個決定,我找到了另一種方法 - 嘗試編輯文件WEB-INF/logging.properties。它只有一個字符串 - 你應該將警告級別改爲INFO(或者其他) – Alexander 2010-11-02 22:46:47

27

請問您的logging.properties是否將默認值設置爲WARNING

我們有這個在我們war/WEB-INF/logging.properties文件:

# Set the default logging level for all loggers to WARNING 
.level = WARNING 

# Default level for subpackages of 'server' will be INFO 
com.company.whatever.server.level=INFO 
+1

非常感謝。我因爲那個愚蠢的東西而陷入了一個小時...... – KimKha 2015-05-20 16:48:15

8

有完全相同同樣的問題,從

.LEVEL =警告

改變logging.properties值後

.level = INFO

該pr會徽被明確固定。 Google需要更新其文檔和/或更改提供的默認值,以免「INFO」日誌消息被吞噬。

+0

同意Google doc情緒。並且,詳細說明,不同的相關部分需要與所有示例代碼,配置等一起記錄。 – mobibob 2013-06-22 18:29:10

+0

這可行,但爲什麼這樣工作? – Micro 2016-04-08 18:21:12

0

我用來設置LEVELSEVERE測試

logger.log(Level.SEVERE, "test message"); 

它不需要改變任何記錄值。屬性