簡體   English   中英

通過log4j發送printStackTrace()到文件而沒有捕獲異常

[英]Sending printStackTrace() to file via log4j without catching the exception

我有一個由log4j配置的自定義日志文件,如下所示:

<appender name="ARQUIVO" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="${catalina.base}/logs/docnix.log" />
    <param name="DatePattern" value="'.'yyyy-MM-dd" />
    <param name="ImmediateFlush" value="true" />
    <param name="Append" value="true" />
    <param name="Encodig" value="UTF-8" />
    <param name="Threshold" value="DEBUG" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern"
               value="[docnix] %d{dd/MM/yyyy HH:mm:ss} %-5p %c{1}:%L - %m%n" />
    </layout>

(更多日志配置)

但是,由於它的大型應用程序並不總是能夠捕獲可能引發nullPointerException的代碼,並且在發生這種情況時,stackTrace進入tomcat的日志文件tomcat7-stderr(例如),因此可以將所有異常重定向到我的docnix.log? 沒有做很多嘗試/捕獲塊來使用log4j記錄器嗎?

我已經把swallowOutPut弄亂了,試圖將stderr和stdout輸出重定向到我的文件,但是到目前為止還算運氣。

提前致謝。

您可以將Tomcat配置為使用log4j,請參閱https://tomcat.apache.org/tomcat-8.0-doc/logging.html#Using_Log4j

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM