td-agent-bit (ホスト側)
- docker コンテナは –log-driver で fluentd を指定して fluent プロトコルを話すので、 それはdockerの仕組みに任せしょう
- 一方、ホストのログ収集には、fluentd ではなく、
C 言語で書き直された fluent-bit をインストールしましょう
- fluentd 製作元のトレジャーデータ社が配布するバージョンは名前が異なり、 fluentd を td-agent、 fluent-bit は td-agent-bit という名前になっています。 中身は同じだと思うのですが…(たぶん)
Debian/Linux の場合
sudo apt install td-agent-bit
sudo systemctl enable td-agent
sudo systemctl start td-agent
設定ファイルは/etc/td-agent-bit/
以下にあるファイル群です。
メインの設定ファイルはtd-agent-bit.conf
、
ログを分析(parse)する設定がparsers.conf
にあります。
apacheやnginx、syslogなどの有名な設定は最初からparsers.conf
に定義されています。
ログを fluentd (ログを収集担当のサーバ側)に投げるには、
/etc/td-agent-bit/td-agent-bit.conf
の[OUTPUT]
をforwardに変更してください
[OUTPUT]
name forward
match *
設定例
Debian/Linux の /var/log/auth.log を監視し、 ログの中から sshd のログだけを抜きだして、 同じホストで動いている fluentd (locahost:24220/tcp)へ転送します
... 省略([INPUT]より上の部分は変更しなくてもよい) ...
[INPUT]
name tail
path /var/log/auth.log
tag auth
[FILTER]
name syslog-rfc5424
[FILTER]
name grep
match *
regex sshd
[OUTPUT]
name forward
match *