Application log(PLC)
アプリケーションログの中で特別なキーワードをリアルタイムで検出したい場合はどうすればよいですか? たとえば、以下のようなアプリケーションログの中で、2020010100037キーワードをリアルタイムで検出する場合です。
1. 収集されたログを確認する

2. conf設定(rsyslog使用)
80-application.conf → confファイルの作成
vi /etc/rsyslog.d/80-application.conf
3. conf ファイル生成例
File = "ログパス"、"Tag = "ログタグ"、"Severity = "深刻度"
ファイル名にワイルドカードを使用する必要がある場合は、rsyslogバージョン8.25以上を使用してください。
# variables required for non-syslog log file forwarding – application log file #edit on your location
input(type=”imfile” File=”/var/log/application.log” Tag=”application” Severity=”info” Facility=”local7″)
### Creates a template for each log file in the Logentries UI
### logic to apply the relevant templates to the different log files
if $programname == “application” then /var/log/plura/ceelog-127.0.0.1.log;CEETemplate
:programname, isequal, “application” ~
3-1. repoからダウンロードする
wget https://repo.plura.io/v5/module/rsyslog/80-application.conf
curl https://repo.plura.io/v5/module/rsyslog/80-application.conf -o /etc/rsyslog.d/80-application.conf
4. rsyslog デーモン再起動
service rsyslog restart
5. ログ確認
全体ログ > ホスト > 主要オブジェクトカラムでアプリケーションを確認

6. リアルタイム検出フィルター登録
2020010100037 キーワードに対するリアルタイム検出登録フィルタ
フィルター > 登録フィルター > ホスト/ウェブ/ウェブファイアウォール > 登録
フィルター登録下段 > 情報入力 > msg > 2020010100037登録

7. 最新のrsyslogインストール
cp /etc/yum.repos.d/rsyslog.repo /etc/yum.repos.d/rsyslog.repo.old
curl -s http://rpms.adiscon.com/v8-stable/rsyslog.repo -o /etc/yum.repos.d/rsyslog.repo
yum -y install rsyslog
yum list rsyslog
rsyslogd -version
rsyslogd 8.2012.0 (aka 2020.12) compiled …
参考サイト
https://www.rsyslog.com/doc/v8-stable/configuration/modules/imfile.html
Last updated