たごもりすメモ

コードとかその他の話とか。

fluent

Ruby 2.1.0-preview2 で #fluentd (というかmsgpack)は動きません

このチケット(既にclosed)の関連なんだけど。http://bugs.ruby-lang.org/issues/9106Ruby 2.1.0-preview2 で gem install msgpack すると、ビルド&インストールされたgemのディレクトリにおいて lib 以下にビルド済みバイナリファイル(*.so や *.bundle)が…

out_exec_filter 入出力フォーマットの変更による負荷の変化

まず前置きですが、みんな大好きFluentdがなぜ*1実用上充分なくらい高速に動作するかというとそれは内部のシリアライズ/デシリアライズフォーマットとして使われているMessagePackのおかげによるところが大きいわけですね。ところで Fluentd の組込みプラグ…

Fluentd w/ Ruby 2.0.0-p0 のメモリ使用量 (追記: w/ msgpack v0.5.4)

いくつかFluentdのベンチマークをとらないとなー、そういえばRuby 2.0.0-p0も出ましたね、ということでベンチマーク取ろうと思ってあれこれ作業してたらなんか変なのを見付けたのでとりあえず記録。 なおベンチマークの結果については、いろいろ取りかたを考…

Fluentd meetup in Fukuokaにいってきた&しゃべってきた

東京以外で初となる Fluentd meetup が福岡にて行われました。Fluentd meetup in Fukuoka on Zusaar福岡で50人規模の勉強会はそうそう無いとのことで、fluentdすごい! という話。で、スピーカーとしてお呼ばれしたのでいってきた。旅費は(自分で滞在延長し…

#fluentd Casual Talks #2 やってきた&fluent-plugin-secure-forwardの話

なんとなく気分が盛り上がったところで会場も見付かったのでカジュアルに企画して開催してまいりました。 Fluentd Casual Talks #2 : ATND いつもながら大人数の入る設備完璧な会場を貸していただき、また受付などすばらしいご協力を:DeNA様にいただきました…

fluent-plugin-parser supports LTSV!

乗るしかない、このビッグウェーブに!Labeled Tab Separated Values (LTSV) ノススメ - stanaka's blog LTSVフォーマットなログを fluentd + GrowthForecast で料理 - naoyaのはてなダイアリー Text::LTSV - naoyaのはてなダイアリー LTSV が行指向な Key-V…

FluentdでバッファつきOutputPluginを使うときのデフォルト値

なんか自分で docs.fluentd.org へのpatchを書いてて混乱してきたのでまとめる。コードを読んでも関係する設定値がいくつものモジュールに分散しており、完全に把握することが困難である。具体的には、この組合せを記憶だけで答えられる fluentd コミッタは…

#fluentd meetup 3 にいってきた&しゃべってきた

Fluentd meetup #3 #fluentd on Zusaar開催されたので参加してきた。また td-agent に fluent-plugin-webhdfs がバンドルされるようになった後ということで、それについて話さないかと言われていたのでそういう話をひとつしてきた。 今回の会場はIIJさんの会…

#fluentd でアクセスログからメトリクス生成/リアルタイム監視するための設定例

このエントリは ウィークリーFluentdユースケースエントリリレー の参加エントリです。いろいろアレでアレなときに回ってきて新ネタを思い付く余裕がないので、手元の設定を晒して解説しお茶を濁そうと思います。ユースケース!前提は以下の通り。 アクセス…

#fluentdの死活監視を ping message + ping message checker で

先日のFluentd meetup #2からこっちFluentdの監視熱が高まっている昨今ですが、みなさんFluentdの監視してますか。暑いですね。 ところで監視といえばプロセス監視とかは当然やってたんですが、まあやっぱりメッセージ飛ばしてみて実際に飛ぶかどうかとか確…

fluent-plugin-ping-message released!

Fluentd meetup in Japan 2の会場でFluentdの動作ホストリストアップや監視に関する意識が高まったので、そのためのプラグインをざっくり書いてみた。会場で書き上げたけど何故か既に酔っぱらってた*1のでその場でリリースは控えてた。 今日確認してみたらだ…

Fluentd meetup in Japan 2 にいってきた #fluentd

Fluentd meetup in Japan #2 #fluentd on Zusaarふらふらとお気楽に参加してきた。当方ささやかながらプラグインを作ったりしているので、他のひとがどのように使っているか、どのようなプラグインが他の人によって使われているか、あたりにたいへん興味があ…

UPDATE: fluent-plugin-config-expander and fluent-plugin-forest

先日 fluent-plugin-forest を書いたあとpatchをもらって __HOSTNAME__ というプレースホルダをサポートしたりしてた。 で、こないだ config-expander を書いたときに「ホスト名を置換できるプレースホルダを組込みで入れようかな? まあ out_forest あるし…

fluent-plugin-config-expander v0.1.0 released!

世間の Fluentd ユーザのみなさんはFluentdが1プロセスでいったいどれだけ大量のメッセージをさばけるかを実際にご覧になってそのすばらしさに驚いていることと思いますが、もちろん1ノードで処理できるメッセージ数にはいずれ限界があり、メッセージを次段…

Fluentd out_forward における最適化パラメータいくつかの話

Fluentdのデータをネットワーク経由で転送するための組み込みプラグイン out_forward には最適化のための設定がいろいろあるが、内部構造への理解がないとなかなか意味がわからなかったりするものも多い。ので、あんまりいじってる人はいないんじゃないかと…

fluent-plugin-notifier と fluent-plugin-ikachan の話

リリースしてはいたものの手元でちゃんと使っていなかったプラグインふたつ、をいよいよちゃんと使いはじめた。そのついで(?)にちゃんとテストを書いたりREADMEを書いたりしたので、せっかくだからここにも書いておく。 fluent-plugin-notifier Fluentdで流…

Fluentdでparser用の正規表現を書く・試す

こんなエントリを目にしたので、なんか書こうかなと思った。fluentdのformat(正規表現)の作り方について試行錯誤中 #fluentd - Glide Note - グライドノートFluentd の in_tail や拙作 fluent-plugin-parser ではログのparse用の正規表現を指定することにな…

fluent-plugin-numeric-monitor v0.1.0 and fluent-plugin-numeric-counter v0.1.0 released!

Fluentdメッセージ中の数値の統計・集計をとるためのプラグインをふたつリリースしたのでその話。numeric-monitorは前に 0.0.x 系のバージョンでいちおう出してたけど、自分の手元でもちゃんと使い始めたので v0.1.0 として改めてリリースした。 fluent-plug…

Fluentd Casual Talks 開催してきた&しゃべってきた

なんとなく思い付いたら各所の協力を得られましたので、そのまま開催してしまいました。 勉強会を主催するのは初めて*1だったのですが、会場をお貸しいただいた株式会社ディー・エヌ・エー様、ならびに当日運営をまるっとお手伝いいただいた @riywo さんをは…

fluent-plugin-mysql released!

FluentdからMySQLにデータを挿入するためのプラグイン fluent-plugin-mysql を公開しました。tagomoris/fluent-plugin-mysql · GitHub fluent-plugin-mysql | RubyGems.org | your community gem host機能としては以下のどちらかを指定してDBにデータを突っ…

fluent-plugin-forest released!

現状のfluentdでは、タグを動的に扱う方法がいまいち無い。具体的に言うと設定項目にタグに応じて変化するような指定をしたい場合、タグごとに分けて書くしかない。例えば out_file で出力先ファイル名をタグに応じてつけたい場合、タグの数だけ match 節を…

fluent-plugin-amplifier-filter released!

流れてくるメッセージから指定したフィールドの値を定数倍して再emitする fluent-plugin-amplifier-filter をリリースした。tagomoris/fluent-plugin-amplifier-filter · GitHub fluent-plugin-amplifier-filter | RubyGems.org | your community gem hostな…

続 #fluentd の性能・リソースに関する最近のいくつかの傾向の話

前回の話から、メモリについては西海岸方面の協力を得てあれこれ試していた。#fluentd の性能・リソースに関する最近のいくつかの傾向の話 - tagomorisのメモ置き場最終的には ruby 1.9.3-p125 + jemalloc + fluentd v0.10.16 でメモリ使用量が安定した。 je…

fluent-plugin-parser released!

Fluentd上に流れる任意のフィールドをparseするための out_parser および任意のフィールドを結合するための out_deparser を含むプラグイン fluent-plugin-parser v0.1.0 をリリースしました。tagomoris/fluent-plugin-parser · GitHub fluent-plugin-parser…

#fluentd の性能・リソースに関する最近のいくつかの傾向の話

いくつかそれぞれ違う内容のことについて書きます。また複数の変更をほぼ同時期にやったケースもあり「お前それ分けてやれよ」と言いたくものがあるかもしれません。いや分かってはいるんだけど、そうそう変更ばっかりもしてられないからまとめてやりたいじ…

#fluentd fluent-plugin-file-alternative released!

fluentd 標準のファイル出力プラグイン out_file はメッセージをJSONにシリアライズして出力するというもので、これはこれでまあいいんだけど、JSONだと逆に扱いづらいケースなんかもUNIXの文化ではあれこれある。また完全にJSONというわけでもなく、行頭に…

#fluentd 用ログ収集専用のエージェント fluent-agent-lite 書いた

みんな大好きfluentdはたいへん便利ですが、ログの収集&集約だけをしたい、というときにちょっとオーバースペック気味のところがあります。特に in_tail はログの読み込みと同時に parse をする仕組みになっており、まあログが書かれた場所ならparseのルー…

fluent-plugin-sampling-filter and fluent-plugin-datacounter released! #fluentd

Fluentd において特定パターンのデータをもっているメッセージ数をカウントする、およびメッセージ数に対してパターンごとの割合を算出する fluent-plugin-datacounter をリリースしました。また fluent-plugin-datacounter のようにメッセージの傾向を算出…

fluentdのためのプラグインをイチから書く手順(bundler版)

前に自分で書いた fluentdのためのプラグインをイチから書く手順 - tagomorisのメモ置き場 はたいへん重宝していたのだが、書いたすこし後になって実は現在すでに bundle gem コマンドを使うやりかたが良さそうだということがわかってしまったがばたばたして…

fluent-plugin-flowcounter および fluent-plugin-growthforecast released! #fluentd

Fluentd自体の動作状況を数値化するための fluent-plugin-flowcounter およびメトリクスを手間なくグラフに描かせて可視化するための fluent-plugin-growthforecast をリリースした。 fluent-plugin-flowcounter rubygems.org github fluent-plugin-growthfo…