0

これが誰かに起こったかどうかはまだわかりません。検索しましたが、解決策はまだ見つかりませんでした.Log4Jは、すべてのWebサイトのコンテンツと応答コードと画像も出力します..

][0xaf][0xac]aSn[0xbc][0xe4][0x85][0xbf]i[0x1]p[0xad][0x82])O[0xbb]"[0xd7]u[0x1a][0xcc]Q[0x87][0x98][0xeb][0xcb]+[0xf9][0x1e][0xa5][0xfd][0x83]l[0xb7][0xd6][0xb2][0xb4]RL2[0xe][0xc3]}[0xc][0xff]][0xf5][0xe3][0xad][0xda][0x83]a[0x91][\r]g[0x9a][0x9b][0xe6][0xeb][0xb7][0x80][0x8b][0xfb][0x12]:[0x14]3C[0xad][0xe5]JNN[0xc0][0xd3][0xb6]%[0xe1]_[0xd0]z([0xa4]K[0x90][0xcd][0xd8][0xcb][0xdb][0xfe][0xcc][0xf0][0x17][0xb0][0xab]f[0x7][0xc5][0x84][0xb6]=[0x91]6[0xc1]=r[0x86][0xc3]}^D4<[0xa0][0x8a][0x6]>[0xed][0xa7][0xa4][0xec]1[0x4][0x9b][0xdc][0xa5]Y*[0xa3][0xaa][0x13][0x9f]R[0x9e][\r][0x81][0xb0][0x99][0xcd]J[0xf8][0x12][0x88][0xfa]o[0x96][0xdd][0x92][\r][0xd0][0xbd][0xb8]du[0xa3]>[0xf5][0xe2][0xaa][0xb][0xd3][0xd1][0xad]0[0xf6]6[0xef]s[0x8b][0xcf][0xd0][0xd0][0xa8](0[0xa5]x[0x9]V[0x13][0xcb][0x1]<[0x83c[0xf1]A[0xfa]f[0xfa][0x97]SM[0xf3][0xc][0x91][0xe8][0x96][0x16]i[0xbf]"b[0xab][0x95]l[0x11]e[0xbd]_[0xe8] [0xe9][0xb0]A''[0xc7][0x9e][0x81][0xa7]"*[0x0]a[0xb][0xac]R[0x9f]x[0xcc][0x1c][0xc9][0xc0][0xcf][0xd8]J[0x19][0xa3]>e[0xde][0x99][0xcf]T[0xc2]{r[0xc5][0x84]r*[0xa4]8[0xe]"
2012-11-08 11:23:40,728 DEBUG - >> "[\r][\n]"
2012-11-08 11:23:40,728 DEBUG - >> "--"
2012-11-08 11:23:40,728 DEBUG - >> "Rn8Y3anzO4BsiuQ8eSDsFYPH8Yef21FYHm"
2012-11-08 11:23:40,728 DEBUG - >> "[\r][\n]"
2012-11-08 11:23:40,728 DEBUG - >> "Content-Disposition: form-data; name="
2012-11-08 11:23:40,728 DEBUG - >> """
2012-11-08 11:23:40,728 DEBUG - >> "description"
2012-11-08 11:23:40,728 DEBUG - >> """
2012-11-08 11:23:40,728 DEBUG - >> "[\r][\n]"

2012-11-08 11:23:40,728 DEBUG - >> "Rn8Y3anzO4BsiuQ8eSDsFYPH8Yef21FYHm"
    2012-11-08 11:23:40,728 DEBUG - >> "--"
    2012-11-08 11:23:40,728 DEBUG - >> "[\r][\n]"
    2012-11-08 11:23:40,728 DEBUG - Request body sent
    2012-11-08 11:23:41,481 DEBUG - << "HTTP/1.1 200 OK[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "HTTP/1.1 200 OK[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "Server: Apache-Coyote/1.1[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "Content-Type: text/html;charset=UTF-8[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "Transfer-Encoding: chunked[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "Date: Thu, 08 Nov 2012 11:14:44 GMT[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - << "[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - Completed Getting Page
    2012-11-08 11:23:41,481 DEBUG - << "5"
    2012-11-08 11:23:41,481 DEBUG - << "0"
    2012-11-08 11:23:41,481 DEBUG - << "[\r]"
    2012-11-08 11:23:41,481 DEBUG - << "[\n]"
    2012-11-08 11:23:41,481 DEBUG - << "{"status":"OK","code":"unspecified","message":"successfully uploaded procedure"}"
    2012-11-08 11:23:41,481 DEBUG - << "[\r]"
    2012-11-08 11:23:41,481 DEBUG - << "[\n]"
    2012-11-08 11:23:41,481 DEBUG - << "0"
    2012-11-08 11:23:41,481 DEBUG - << "[\r]"
    2012-11-08 11:23:41,481 DEBUG - << "[\n]"
    2012-11-08 11:23:41,481 DEBUG - << "[\r]"
    2012-11-08 11:23:41,481 DEBUG - << "[\n]"
    2012-11-08 11:23:41,481 DEBUG - << "[\r][\n]"
    2012-11-08 11:23:41,481 DEBUG - Resorting to protocol version default close connection policy
    2012-11-08 11:23:41,482 DEBUG - Should NOT close connection, using HTTP/1.1
    2012-11-08 11:23:41,482 DEBUG - Releasing connection back to connection manager.

あるサーブレットから別のサーブレットにデータを送信するために、Apache の httpClient の PostMethod() および GetMethod() .. を使用しています。 私はこれらを印刷していません。log4j はこれらを単独で出力しています。私は理解していません。また、ログ ファイルのサイズは約 50 ~ 100 MB になります。

私のLog4j構成:-

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">

   <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
      <param name="Threshold" value="INFO" />
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d %-5p  [%c{1}] %m %n" />
      </layout>
   </appender>
   <appender name="DRFA" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="/home/server/webSpecimen.log" />
    <param name="DatePattern" value="'.'yyyy-MM-dd" />
    <param name="Append" value="true" />
    <param name="Threshold" value="DEBUG" />

        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %-5p - %m%n" />
        </layout>
    </appender>

   <root>
                <level value="DEBUG" />
                <appender-ref ref="DRFA" />
        </root>

</log4j:configuration>
4

3 に答える 3

0

log4jのせいではないと思います。HttpClientコードベースは単にDEBUGレベルで大量のログを記録しているだけだと思います。解決策は、ルートロガーレベルをINFOに変更してログを減らすか、またはHttpClientが使用しているロガーに対してこれをより選択的に行うことです。(残念ながら、アペンダーのパターンにはロガー名が含まれていません...)


..しかし、なぜlog4jは画像とウェブサイト全体を印刷するのでしょうか..。

これは、log4j構成が実行するように指示しているためです。

  • log4jの紹介、特に設定ファイルの書き方に関する部分を読んでください。
  • これらのログメッセージを生成している特定のロガーに異なるログレベルが使用されるように、構成を変更します。

不要なログがすべて印刷された1つのクラスのすべてのログをコメントアウトしました...

それは間違ったアプローチです。log4jが何をログに記録し、何をログに記録しないかを決定する方法を理解する必要があります。ドキュメントを読んでください。ランダムにコメントアウトしても役に立ちません。

HttpClient 3.1を使用していて、現在のバージョンが4.2.2であるためです。

いいえ、それは原因ではありません。

于 2012-11-08T12:07:32.910 に答える
0

log4jでDEBUGをINFOに変更し、を参照してください。

Log4jにはレベル階層があります

ロガーにはレベルが割り当てられる場合があります。可能なレベルのセット、つまり:ここで学ぶ

TRACE,
DEBUG,
INFO,
WARN,
ERROR and
FATAL

debugを設定すると、DEBUGと以下のすべてのログレベルが出力されます。INFOを入力すると、INFOと以下のすべてのレベルのログが出力されます。

通常、本番モードで実行している場合は、エラーを発生させる準備をします

以下の更新もこれを参照してください

これをlog4jxmlに追加して、試してください

<logger name="httpclient.wire" additivity="false" >
  <level value="INFO" />
  <appender-ref ref="consoleAppender"/>
  <appender-ref ref="fileAppender"/>
  </logger>
于 2012-11-08T12:09:15.867 に答える
0

これはあなたを助けるかもしれません http://en.wikipedia.org/wiki/Log4j

デバッグ レベルに設定したのを見たので、INFO、WARN、または ERROR レベルに設定してみてください。詳細については、上記のリンクをお読みください。

ありがとう

于 2012-11-08T11:57:05.607 に答える