FreeBSDからSumo Logicへログを転送する方法(Syslog-ngを利用)
FreeBSDに保存しているログをSumo Logicに取り込むためにはSyslog-ngを利用することを推奨します。
Installed Collectorをインストールすることも可能ですが、Sumo LogicはFreeBSDをサポートしていません。
また、Installed Collectorを利用する方法がSyslogより複雑です。ではその手順を説明します。
■前提条件
- FreeBSDからSumoエンドポイント(プロトコル:TCP, ポート: 6514)へアクセスできること
- Sumo LogicにHosted Collectorがインストールされていること
(Hosted Collectorのインストール方法はここ)
■環境
■手順
-
Syslogのログソースを作成したいHosted Collectorの右側にあるAdd...をクリックし、ポップアップメニューからAdd Sourceを選択します。
-
Cloud Syslogを選択します。
- Sumo でこの Source に表示する名前を入力します。必要に応じて説明を入力します。またSource Categoryにメタデータ名を入力します。
- Saveボタンをクリックします。すると次のような画面が表示されます。
- FreeBSDにSSHでログインし、下記のコマンドを実行してシステムをアップグレードします。
# su - root
# pkg update
# pkg upgrade
- syslog-ngをインストールします。
# pkg install syslog-ng
Note:FreeBSDでのインストールバスは「/usr/local/etc」になる
- wgetをインストールします。
# pkg install wget
- /etc/rc.confの最後の行に次のラインを追加して、syslog-ngを有効化、syslogdを無効化します。
syslog_ng_enable="YES"
syslogd_enable="NO"
- Syslogdは使用しないため、停止しておきます。
# service syslogd stop
- SyslogサーバからSumoまでの通信暗号化に必要な証明書を設定します。
# mkdir -pv /usr/local/etc/syslog-ng/ca.d
# cd /usr/local/etc/syslog-ng/ca.d/
# wget -O digicert_ca.der https://www.digicert.com/CACerts/DigiCertHighAssuranceEVRootCA.crt
# openssl x509 -inform der -in digicert_ca.der -out digicert_ca.crt
# ln -s digicert_ca.crt `openssl x509 -noout -hash -in digicert_ca.crt`.0
- syslog-ng.confファイルを開き、templateを定義します。YOUR_TOKENをStep4のトークンで置き換えます。
template t_sumo_syslog { template("<$PRI>1 $ISODATE $HOST $PROGRAM $PID $MSGID [YOUR_TOKEN] $MSG\n"); template_escape(no); };
- 続けてsyslog-ng.confファイルにDestinationを定義します。YOUR _DEPLOYMENTにStep4のHostで置き換えます。
destination d_sumo_tls {
tcp(“syslog.collection.YOUR_DEPLOYMENT.sumologic.com"
port("6514")
template(t_sumo_syslog)
tls(
ca-dir(“/usr/local/etc/syslog-ng/ca.d”)
peer_verify("required-trusted")
)
);
};
- 最後にSumo エンドポイントに送信するログを指定します。次の例では、ApacheのAccessとErrorログソースを作成し、Sumo Logicエンドポイント(d_sumo_tls)へ転送するように設定します。
source s_access {
file("/var/log/httpd-access.log" flags(no-parse));
};source s_error {
file("/var/log/httpd-error.log" flags(no-parse));
};log {source(s_access); destination(d_sumo_tls); };
log {source(s_error); destination(d_sumo_tls); }; - Syslog-ngサービスを再起動します。
# service syslog-ng restart
- Sumo UIでFreeBSDのApacheログが取り込みできることを確認します。
Please sign in to leave a comment.
Comments
0 comments