4

Tomcatサーバーが実行されているアプリケーションサーバー(Ubuntu 14.04)があります。この同じアプリケーション サーバーは、ログをNXlogサーバー (Ubuntu 14.04 上)に送信するように構成された " rsyslog " サーバーで構成されています。

rsyslog サーバーは、Tomcat エラー、例外およびスタック トレースを含むすべてのログを syslog サーバーに送信しますが、問題は複数行のログにあります。ログ メッセージがファイルに保存されるか、カプセル化されずにネットワーク経由で転送される場合、複数行にまたがるメッセージに存在する改行文字は、すべての行を個別のイベントとして扱う単純な行ベースのパーサーを混乱させます。& したがって、例外ログが新しい行で壊れます。

私のrsyslogのバージョンは: 7.4.4

rsyslog.conf ファイルは次のようになります。

#################
#### MODULES ####
#################
$EscapeControlCharactersOnReceive off
$LocalHostName nishant-app

$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog   # provides kernel logging support (previously done by rklogd)i
#$ModLoad immark  # provides --MARK-- message capability
$ModLoad imfile
$ModLoad omrelp
#$ModLoad omhdfs

# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514

module(load="imfile" PollingInterval="10")
###########################
#### GLOBAL DIRECTIVES ####
###########################
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++#

#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# Filter duplicated messages
$RepeatedMsgReduction on

#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog

#
# Where to place spool files
#
$WorkDirectory /var/spool/rsyslog

#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf           ## This includes all the conf files which tells rsyslog which logs need to be sent

したがって、基本的には、例外が複数の行に散らばらないように、Tomcat スタック トレースと例外を送信する必要があります。

  • 私はrsyslogの最後でこれを解決しようとしていますが、これがNxlogサーバー側でも解決できると混乱していますか?

どんな助けでも大歓迎です。

4

1 に答える 1