私は数時間フォーラムを精査してきましたが、rsyslog
の使用方法に関する具体的な説明が見つかりません。私は本当に基本が必要です。
ログファイルlogFile.log
があり、ポートserver2
の514
にログを転送したい。これを行うには、どのようにrsyslog
を設定しますか?必要に応じて追加情報を提供します。
さて、この質問をチェックしている人が何人かいるのを見て、その方法を見つけました。そこで、rsyslogの小さな初心者向けガイドを作成します。
Syslogデータをリモートサーバーに転送するだけの場合:
/etc/rsyslog.d/50-default.conf
の最後にこの行を追加します(プロトコルに基づいて):
UDP:*.* @remoteserverIP:PORT #usually port 514
TCP:*.* @@remoteserverIP:PORT #usually port 514
これらの行を.conf
で作成した/etc/rsyslog.d/
ファイルに追加します
$ModLoad imfile
$InputFileName /var/log/test #change this to desired input
$InputFileTag test #change filetag
$InputFileStateFile stat-test
$InputFileSeverity info #log severity
InputRunFileMonitor
*.* @remoteserverIP:PORT #change to remote server
Rsyslogを再起動します
Sudo service rsyslog restart
次に、リモート(ロギング)サーバーで、/etc/rsyslog.conf
ファイルを編集してトラフィックをリッスンする必要があります。ファイルの上部には次のセクションがあります。
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514
適切なプロトコルのセクションのコメントを外します。
ファイルの最後には、おそらくログがどこから来たかに基づいてファイルに解析されるように、何らかのフィルタリングテンプレートを含めることができます。以下に例を示します。
$template FILENAME,"/var/log/%fromhost-ip%/access.log
*.* ?FILENAME
ファイルを保存し、このマシンでサービスを再起動します。
うまくいけば、これはあなたのすべてのために働く!