LoginSignup
6
6

More than 5 years have passed since last update.

メモ:fluentでログの保存先にriakを使う

Last updated at Posted at 2013-02-13

試しに動かして見たのでメモ

riakのインストール

riakのインストールは前回の記事で。
Ubuntuにriakインストールしたメモ

fluentのインストール

fluentはgemからインストールします。

$ sudo gem install fluentd

fluentのriakプラグインをインストール

$ sudo gem install fluent-plugin-riak

fluentがログ保存先にriakを使うように設定

まだ作ってないなら設定ファイル生成
$ sudo fluentd --setup

githubのREADME.mdを参考にして、riakを使うように設定ファイルを編集

/etc/fluent/fluent.conf
<match hoge_app.**>
  type riak

  buffer_type memory
  flush_interval 10s
  retry_limit 5
  retry_wait 1s
  buffer_chunk_limit 256m
  buffer_queue_limit 8096

  # pb port
  nodes 127.0.0.1:8087
</match>

nodesは自分の環境のRiakのホストとポートに。複数設定する場合はスペースで区切るようです。

fluent起動

$ /usr/local/bin/fluentd

試しにログを保存してみる

試しにやるならfluent-catで試せるようです。

$ echo "{\"name\": \"shin\", \"age\":37}" | fluent-cat hoge_app.debug

Rubyからログを保存してみる

github にやり方が書いてあります。

$ sudo gem install fluent-logger
require 'fluent-logger'

log = Fluent::Logger::FluentLogger.new(nil, :host=>'localhost', :port=>24224)
log.post("myapp.access", {"agent"=>"foo"})

保存の確認

riakからキーのリストを取得してみます。

$ curl --insecure https://localhost:8098/buckets/fluentlog/keys?keys=true

キーは "yyyy-mm-dd-uuid" のようなフォーマットになっていました。

{"keys":["2013-02-13-c58a2fdf-04a0-41ff-8080-e25927c07c4d",
"2013-02-13-f2cc72df-fce4-4f47-87c0-81090c021f3d","2013-02-13-
de5b48ea-fb28-4022-9840-87e0953452e7",
....

キーから値を取得してみる

$ curl --insecure https://localhost:8098/buckets/fluentlog/keys/2013-02-13-f2cc72df-fce4-4f47-87c0-83090a023f3d

ひとつのキーに対して、複数のログがリストで保存されていました。

0.0.1の時はキーがTime.now.to_iしたものでしたが、0.0.2からは"yyyy-mm-dd-uid"フォーマットの文字列に変わりました。
まだしばらくは大きな仕様変更があるかもしれません。

6
6
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
6
6