2

RFC5424で定義されている構造化データをTwistedからsyslogに送信しようとしています。私はUbuntuを使用しており、syslogの実装はrsyslogです。

twistd --sysloglog.msgとlog.errで送信されたメッセージをsyslogに送信する''でツイストアプリを実行しています。

これまでのところ、次のように、仕様に従ってlog.msgのメッセージをフォーマットしようとしています。

log.err('[exampleSDID@32473 iut="3" eventSource="Application" eventID="1011"]')

しかし、それは機能しません。Rsyslogは、それを通常のメッセージとして表示するだけです。誰かがこれを行う方法を知っていますか?多分別のロギングライブラリを見る必要がありますか?

4

1 に答える 1

5

この問題はTwistedのsyslog統合とは関係がないようですが、PythonのstdlibsyslogモジュールはRFC5424で説明されているログ形式をサポートしていません。

さらに、RFC5424はDeadOnArrival 少なくとも構造化データ部分)のようです。ほとんどの場合、JSONまたはXMLに基づくProjectlumberjackで説明されている構文に置き換えられます。したがって、より構造化されたロギングに興味がある場合は、おそらくそれを確認する必要があります。

その標準に従ってメッセージをフォーマットするには、ここに示すような標準に準拠したカスタムフォーマッターを使用できます。

于 2012-05-06T11:28:57.480 に答える