4

中央のログアプリケーションにlog4jログを送信するために使用するアプリケーションがあります。sysloglog4jはアプリメッセージの送信に成功していますが、メッセージ自体にはsyslogヘッダー(タイムスタンプ、ホスト名などを含む)がありません。

アプリケーションから各ログ行にsyslogヘッダーを追加する方法を理解しようとしています。

以下は私の構成です

log4j.logger.com.axeda.esrs=INFO, SYSLOG log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout
log4j.appender.SYSLOG.layout.ConversionPattern=%d{ISO8601}: %m%n log4j.appender.SYSLOG.SyslogHost=syslog_destination
log4j.appender.SYSLOG.Facility=LOCAL0
log4j.appender.SYSLOG.FacilityPrinting=false

confに次のプロパティを追加しました。

log4j.appender.SYSLOG.Header=true

しかし、プロセスを再開した後、ログファイルに次のエラーが表示されます。

log4j:WARN No such property [header] in org.apache.log4j.net.SyslogAppender

各ログイベントにsyslogヘッダーを追加する方法を教えてください。

log sample currently in use without the syslog header: <134>2012-11-02 16:22:30,451: EMC Policy Manager Audit: Fri Nov 02 16:22:30 CEST 2012, CK0000000, System, Remote Session 5171112upPI4v4Hp3FrHJbSOxiHZ7aEp3crZNwngP8ZrLw625 started on device CK292603612 with model Symmetrix-GW by remote user 00000 from enterprise servicelinkcluster at Fri Nov 02 16:19:52 CEST 2012

ありがとう!

4

2 に答える 2

0

古いバージョンの log4j を使用していますか? SyslogAppender の header プロパティは 1.2.15 で追加されました。Papertrail にログを記録するように既存のシステムを構成しているときに、同じ警告が表示され、ビルド プロセスで古い log4j バージョンが取り込まれていることがわかりました。

于 2013-11-22T03:57:49.970 に答える
0

ヘッダーの H は小さくなければならないと思います... したがって、プロパティ名は log4j.appender.SYSLOG.header=true でなければなりません。

クラスファイルを見ると、ヘッダーはクラスhttp://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/net/SyslogAppender.htmlのプロパティのようです。したがって、プロパティを定義するときは、LOWER_CHAR で開始します...試してみることができます...

于 2012-11-28T17:41:31.597 に答える