LoginSignup
0
3

More than 5 years have passed since last update.

fluentdでログ収集

Posted at

サーバのログをfluentdでS3に転送してAtenaで解析することになったのでメモ。
まずはubuntuにfluentdをインストールしてログをテスト収集できるところまで。

環境

Ubuntu Server 16.04 LTS

fluentdをインストール

Ubuntu 16だとこれっぽい。

curl -L https://toolbelt.treasuredata.com/sh/install-ubuntu-xenial-td-agent2.sh | sh
参考

Installing Fluentd using DEB Package (Debian / Ubuntu Linux)

ログを収集確認用に仮フォルダを作成

あくまでローカルでfluentdの動作を確認するためだけに作った。

# mkdir /var/log/td-agent/copy-log-test/

fluentdの設定

転送するファイルや間隔などを定義する。

設定ファイル
vi /etc/td-agent/td-agent.conf

イベントの受信方法の設定

<source>
  @type tail
  format syslog
  path /var/log/syslog
  pos_file /var/log/td-agent/copy.syslog.pos
  tag copy.syslog
</source>
使ったプラグインの詳細

tail Input Plugin

受信したイベントの処理方法の設定

<match bastion.syslog>
  @type file
  path /var/log/td-agent/copy-log-test/syslog
</match>
使ったプラグインの詳細

file Output Plugin

flentdを起動

sudo /etc/init.d/td-agent start

さっき作った /var/log/td-agent/copy-log-test/ フォルダにログが出来ていれば成功だが、
Permissionエラーが出たのでFluentd の実行ユーザをrootにしてしまう。

/etc/init.d/td-agent
- TD_AGENT_USER=td-agent
- TD_AGENT_GROUP=td-agent

+ TD_AGENT_USER=root
+ TD_AGENT_GROUP=root

そして再起動

sudo /etc/init.d/td-agent restart

ひとまず出力は成功。

/var/log/td-agent/copy-log-test/
2017-07-24T18:44:45+00:00   copy.syslog {"host":"test","ident":"dhclient","pid":"1","message":"DHCPACK of 0.0.0.0 from 0.0.0.0"}
2017-07-24T18:44:45+00:00   copy.syslog {"host":"test","ident":"dhclient","pid":"1","message":"bound to 0.0.0.0 -- renewal in 1785 seconds."}
0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3