fluentd-plugin-kestrelを更新しました

kestrelへoutputするプラグインを以前作りました。 fluentd-plugin-kestrelを作ってみた | tjun memo 最近の記事やイベントでまたfluentdが盛り上がっているようなので、久しぶりにプラグインの更新をしました。 tjun/fluent-plugin-kestrel 以前はkestrelへのoutputだけのpluginでしたが、kestrelからの入力をできるようなinput pluginを追加しました。 また、kestrelへの書き込む文字列にprefixやsuffixが付いちゃうというライブラリ依存の問題は回避できることが分かったので、そこも修正しました。 outputのデータのformatを柔軟にしたかったので、tagomoris/fluent-plugin-file-alternativeを参考にさせていただいて、formatのoptionをいくつか追加しました。 これでやりたかったことは一応実装が終わりました。 inputの実装がよくないみたいでinputのテストでshutdownを呼べないため、inputの方はちゃんとテストできてません。 gemの作り方などいろいろ忘れていたのでメモ。 参考にしたのは、 fluentdのためのプラグインをイチから書く手順(bundler版) - tagomorisのメモ置き場 jeweler でらくらく rubygems 作成(github編) - @sugamasao.blog.title # => ”コードで世界を変えたい” updateの流れは、 テストとコードを書いたら、 rake test でテスト。rake install でローカルに開発中のものをgemとしてインストールして試すこともできる。 ドキュメントを修正したら、 rake version:…

fluentd-plugin-kestrelを作ってみた

先週末くらいにTLにたくさん流れてきた"fluentd"について調べてみたらよさそうだったので、勉強を兼ねてpluginを書いてみました。 tjun/fluent-plugin-kestrel - GitHub fluentdっていうのは、ログを収集するツールで、プラグインでいろいろ柔軟に設定できて、複数のサーバのいろんなイベントのログを集めて使いやすい形にする、というような使い方ができるみたいです。 Scribeのようなもの。 fluentdについてもっと知りたい人に参考になるのは以下のサイトです。 fluent/fluentd - GitHub イベントログ収集ツール fluent リリース! - 古橋貞之の日記 最近ちょっと触っていたKestrelというメッセージキューへログを投げられたら便利かな、ということで、fluentdで集めたログをkestrelにenqueueするpluginを作ってみました。 実装は、既にあるいろいろなプラグインを参考にしました。Gemを作るのも初めてでよく分かんなかったけど、fluentdのためのプラグインをイチから書く手順 - tagomorisのメモ置き場 や jeweler でらくらく rubygems 作成(github編)- @sugamasao.blog.title # => ”コードで世界を変えたい”の通りにやっていたらできました。 jewelerって便利。 ちゃんとrubygemsに登録されているので、そのうち…

KestrelをJavaから利用する

kestrelのセットアップについては以前の記事を参照してください。 Kestrelをcentosにセットアップ | tjun memo 以下では、JavaのプログラムからKestrelのキューを利用する方法を説明します。 Kestrelは、memcachedプロトコルで利用できるので、memcachedのライブラリなら基本的に大丈夫だと思います。 でも、kestrelに対応しているというところと、パフォーマンスがよさそうなところから、Xmemcachedというライブラリを利用します。 参考: User_Guide - xmemcached - User Guide Version 0.3 - Extreme performance modern memcached client for java - Google Project Hosting Xmemcachedのダウンロード JavaプログラムからKestrelを利用するために、Xmemcachedというmemcached用のライブラリを利用します。 http://code.google.com/p/xmemcached/downloads/list からxmemcached-1.3.5-bin-with-dependencies.…

Kestrelをインストールしたメモ

2013/02/01 に修正した時点のものです、最新のものがあるかもしれないので確認してください。 Kestrelは、twitterが使ってるらしいメッセージキューです。 前準備 まずgitが必要となるので、gitを使えるようにしてください。 Javaも必要となります。使用するユーザでJAVA_HOMEを設定しておいてください。 kestrelのインストール 次はkestrelをインストールします。 kestrelを/usr/local/kestre以下にインストールします。 まずは最新版をダウンロード。2013/02/01では2.4.1でした。 wget http://robey.github.com/kestrel/download/kestrel-2.4.1.zip 解凍して、/usr/local/kestrel以下にコピーする。 最新のものに対して、 /usr/local/kestrel/currentにシンボリックリンクを作る。 mkdir /usr/local/kestrel unzip…