0

http://people.apache.org/~sdeboy/のchainsaw2.1.0スナップショットを使用し
ています。ログファイルを解析するように設定できましたが、常に複数行のメッセージが複数の1行のメッセージに分割されます(他のすべてのフィールドを最初のメッセージに入れます)
複数行のメッセージを正しく解析するにはどうすればよいですか?回避策や代替手段はありますか?

編集:ファイルから数行:

[<proceed>(2)] INFO 2013-01-16 05:04:23,728 xmlstream.py:start_tls:740 ::: Negotiating TLS :::
[<proceed>(2)] INFO 2013-01-16 05:04:23,729 xmlstream.py:start_tls:741 ::: Using SSL version: 3 :::
[<proceed>(2)] DEBUG 2013-01-16 05:04:23,838 xmlstream.py:start_tls:809 ::: CERT: -----BEGIN CERTIFICATE-----
MIIDaDCCAtGgAwIBAgIKMfrHUQAAAABbMDANBgkqhkiG9w0BAQUFADBGMQswCQYD
VQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZR29vZ2xlIElu
dGVybmV0IEF1dGhvcml0eTAeFw0xMjA2MDUwMDUyMTRaFw0xMzA2MDUwMTAyMTRa
MGMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1N
...
Zfhf9Lio+EplEmBc
-----END CERTIFICATE-----
 :::

ログの形式は次のとおりです"[NDC] LEVEL TIMESTAMP FILE:METHOD:LINE ::: MESSAGE :::"
(解析を支援するために、メッセージの前後に一意の区切り文字を配置しようとしました)

4

1 に答える 1

1

レシーバー構成で「appendNonMatches」をfalseに設定してみてください。

それでも問題が解決しない場合は、ログファイルを数行(1行と複数行の組み合わせ)提供してください。構成に関して何をする必要があるかを説明します。

それもバグかもしれません、見なければなりません。

あなたの応答の後のいくつかのメモ:

  • AppendNonMatches = falseは、単一のロギングフレームワーク/レイアウト(printfスタイルの出力をランダムに埋め込まない)を使用している場合はおそらく問題ありません。
  • メッセージの終了区切り文字を使用してテストすることは一度もありません。メッセージフィールドの内容は変動する可能性があるため、メッセージがログメッセージの最後のフィールドである必要があります。
  • (tab)atで始まる複数の行がある場合、これらのフィールドはスロー可能なフィールドに変換する必要があります。
于 2013-01-17T02:37:36.337 に答える