Fluentdでは出力側が詰まると、バッファがたまっていき、ある程度するとバッファが詰まり、今度はそこにForwardしているバッファが詰まり、数珠つなぎにバッファが詰まっていく。大量にたまらないときは出力側が流れ出したら、復帰してくれてとても便利だ。memoryバッファにしておくと、プロセスを再起動しないといけないときに消えちゃうので、fileバッファにするのがいまのところ王道設定である。 しかし、出力先で障害が発生し長引くと、バッファが詰まっていって回復するまでにバッファがあふれてログを取りこぼしてしまったり、いざ回復しても、今度はFluentdからバースト的にログが流れてきてまた詰まってしまったりする。また、出力先が何かの障害でログが失われてしまったとき、復旧する手段がなくて困る。 そこで、Fluentdからいろんな時に出力するときに、一旦ファイルにログを書き出して数週間ためておいて
The document discusses using Fluentd to collect raw logs. It describes how the basic method uses in_tail and out_file plugins, but that traditional systems require raw logs. The fluent-agent-lite and fluent-plugin-file-alternative plugins are introduced as ways to collect and output raw logs with Fluentd while maintaining high performance and throughput. Configuration examples are provided for usi
Regular Expression Test String Custom Time Format (See also ruby document; strptime) Example (Apache) Regular expression: ^(?<host>[^ ]*) [^ ]* (?<user>[^ ]*) \[(?<time>[^\]]*)\] "(?<method>\S+)(?: +(?<path>[^ ]*) +\S*)?" (?<code>[^ ]*) (?<size>[^ ]*)(?: "(?<referer>[^\"]*)" "(?<agent>[^\"]*)")?$ Time Format: %d/%b/%Y:%H:%M:%S %z
OSSのログ収集管理ツールFluentdを用いてログを統合管理している場合の懸念点として、ログの収集漏れが考えられます。 Fluentdでは、バッファ機能を活用することでログを収集漏れすることなく確実に収集することができます。 このバッファ機能のメカニズムを理解すべく動作検証した結果を紹介します。対象とするFluentdのバージョンは0.10.30です。 Fluentdとは Ruby実装のOSSのログ収集管理ツールです。 Fluentdは、Input、Buffer、Outputの3つのコンポーネントで実現されています。 様々な場所からログを収集、JSON形式に変換し(Input)、蓄積(Buffer)、様々な出力先にデータ出力(Output)します。 例として、あるサーバ(server01)のApacheのアクセスログを別のサーバ(server02)内にファイルとして出力する場合
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~Iwasaki Noboru
プラグイン¶ プラグインはFluentdの機能を拡張します。 ユーザーはFluentdに添付された標準プラグインを使ったり、独自のプラグインを作成することができます。追加プラグインを作成する方法の詳細については プラグイン作成 を参照してください。 Fluentdが適切に機能するためには、ユーザーは設定ファイルを使用して、少なくとも1つのインプットプラグインと1つのアウトプットプラグインを有効にしなければなりません。設定ファイルの詳細については 設定ファイル を参照してください。 Input plugin イベントの入力元を定義します。 インプットプラグインは通常スレッドと待機ソケットを作成します。それは定期的にデータソースからデータを取得するように実装することができます。注意: ユーザーが代替実装によってインプットプラグインを作成した場合には、この限りではありません。 Output pl
このブログやTwitterをご縁に、Fluentd meetup in Japan #2 で登壇させていただくことになり、張り切って発表してきました。 発表資料はアニメーションを多様していたのでSlideShareだとわかりづらいかもですが、アップロードしましたので御覧くださいませ。 内容の補足 いくつか質問を受けて答えたりTwitterで見た点について、資料の補足をしておきます。 Agent -> Collector通信経路について Q. なぜVPNにしなかったのか A. VPNは可用性/負荷分散性の点で弱いため。また、VPNサーバや他にもGatewayなど余計な経路を通ることになり無駄である。Agentの増加に対してボトルネックができない構成にしたかったため。政治的な理由で、ある環境だけVPNをはれないといった場合もあり、総合するとGlobal+暗号化 が良い落とし所だった。 圧縮/暗
入出力プラグインをrubyで書けるのがじつにいい感じの fluentd がいい感じに見える。 fluent/fluentd · GitHub ので使えるかどうか、使えるとしたらどれくらいのノードを用意すればいいのかについて考えるため、とりあえずベンチマークをとってみた。 結論 以下非常に長くなるので結論だけ書くと、大変使える感じ。現状だとほとんど何も考えずにデータ中継させても秒間1万メッセージ、100Mbpsくらいまでは処理できる。効率よくなるよう流す側も考えてやれば 300Mbps を超えるデータの転送に成功した。だいぶいい感じ。 なおこれは in_scribe および out_scribe を使用した場合で、開発者 @frsyuki によるとMessagePackでのデータ転送の場合はこの倍くらい出るらしい。 もちろんこれは右から左に流しただけなので現実にタグによるルーティングだとかロ
インストール¶ ユーザは次の4つの方法でFluentdをインストールすることができます。 バイナリパッケージ RubyGems .tar.gz Gitリポジトリ ほとんどの場合バイナリパッケージからのインストールをお勧めします。 バイナリパッケージからのインストール¶ Fluentdの安定板は Treasure Data, Inc. からtd-agentという名称で提供されています。もし、自分でRubyインタプリタ (> 1.9.2)をインストールしたくない場合、またFluentdとプラグインのバージョンを管理したくない場合にはtd-agentを使うのがお勧めです。 td-agentは以下のコンポーネントで構成されています: Fluentd専用のRuby1.9.3インタプリタ(ノード上でRubyをインストールする必要はありません) Fluentd jemalloc (メモリの断片化を防ぎま
はじめに Fluentdは、ログを収集し格納するためのログ収集基盤ソフトウェアです。Fluentdにインプットされた、すべてのログをJSONに変換し、アウトプットします。インプットとアウトプットはモジュール化されており、モジュールを追加することでインプット元とアウトプット先を追加できるようになっています。 Fluentdは急速に知名度を高め、多くのWebサービス会社で実際に使用されるようになりました。従来のログが抱えていた問題も、Fluentdが適切な解決策となっていると認知され、かつ簡単に導入・スモールスタートできるミドルウェアであったことが大きかったと思います。 本稿では、Fluentdの簡単な仕組みと導入方法、シンプルな動作事例について紹介します。 対象読者 システム管理者 データサイエンティスト 必要な環境 UNIX系OS Ruby 1.9 ログを出力する理由 システム運用を始める
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く