2011-12-08 117 views
1

當我在本地主機上調試我的GAE應用程序時,如何將記錄器類創建的日誌保存到文件?我可以在控制檯(stderr)中看到它,但不想將控制檯重定向到文件。我發現了一些python的解決方案,但不能使它適用於java。請你能幫助我嗎?GAE登錄本地主機到文件

回答

0

在log.xml設置文件添加ApplicationAppender:

<appender name="applicationAppender" class="org.apache.log4j.DailyRollingFileAppender"> 
    <param name="encoding" value="UTF-8"/> 
    <param name="file" value="C:/logs/yourlogname.log"/> 
    <param name="DatePattern" value="'.'yyyy-MM-dd" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{HH:mm:ss} %-5p %l - %m%n" /> 
    </layout> 
</appender> 

這是log4j的,但它是一個標準的日誌記錄模式。你也需要讓你的記錄器定義使用你創建的appender。

+0

這可能不會在App Engine上工作,因爲它可以防止你的寫作到本地文件系統。 –

+0

即使它是本地開發服務器?我明白你的意思,但它似乎是開發服務器端的一個愚蠢的約束。 –

+0

dev_appserver儘可能地模擬生產環境,包括禁止寫入文件。 –

0

在Linux和OSX,可以使用tee直接輸出到文件,同時還使其可見標準輸出:

my_command | tee filename 
相關問題