タグ

fluentdに関するkenjiskywalkerのブックマーク (30)

  • fluentdを利用してsshログインを通知する · さよならインターネット

    December 12, 2014 sshを利用していると招かれざる客の来訪が多い。 また、サーバに不必要にログインしている関係者がいないか 把握しつづけるのも難しい。 今回はfluentdを利用して簡単にログイン周りの通知をSlackに流してみる。 準備 /var/log/secureはパーミッションが厳しいので y-kenさんのブログを参考にパーミッションを変更する必要があります。 Fluentdでsyslogを取り込むための権限設定(CentOS 5&6両対応) - Y-Ken Studio SlackAPIがバージョンアップしてリアルタイム性を持つようになった。 A new Slack API: The inevitable rise of the bots Bots 個人的にはリアルタイム性よりも private roomでもhubotが利用できるようになったのいうのがアツい。

    kenjiskywalker
    kenjiskywalker 2014/12/12
    どうにか間に合ったぜ...
  • Fluentdでsyslogを取り込むための権限設定(CentOS 5&6両対応) - Y-Ken Studio

    syslog経由で出力される次のようなログファイルを、Fluentdに取り込む場合に便利なTIPSを紹介します。 /var/log/messages /var/log/secure 今回はこれらのsyslogを一般ユーザでも読み込みは出来るよう、権限を少し緩める設定を紹介したいと思います。 設定例 素の状態でsyslogをtd-agent(fluentd)から取り込もうとすると、権限エラーが発生します。 Fluentdから読み出せるよう、rsyslog(syslog)の設定を変更していきます。 # サンプルのためsourceブロックのみ記述します $ cat /etc/td-agent/td-agent.conf <source> type tail path /var/log/messages format syslog tag td.syslog.messages pos_file /

    Fluentdでsyslogを取り込むための権限設定(CentOS 5&6両対応) - Y-Ken Studio
  • Created check-fluentd-monitor-agent of sensu-plugin · さよならインターネット

    May 30, 2014 Colleagues said to me that I want to monitoring fluentd’s state, Then I created this plugin. 同僚がfluentdの状態を監視したいと言っていたので 私はこのプラグインをつくりました。 Monitoring Fluentd - fluentd sensu-community-plugins/plugins/fluentd/check-fluentd-monitor-agent.rb how to use. 使い方 { "checks": { "check_fluentd_monitor_agent_retry": { "command": "/etc/sensu/plugins/check-fluentd-monitor-agent.rb -w 5 -c 10 -m 're

    kenjiskywalker
    kenjiskywalker 2014/05/30
    オラァ!
  • sinatra を使って td-agent(fluentd) のバッファの状態をモニタリングするダッシュボードを作ってみた - ようへいの日々精進XP

    はじめに ちゃんとモニタリングしたい場合にはこちらを使うと良いです! td-agent(fluentd) の内部情報を monitor_agent を有効にして収集するようにしてみた 複数のホストから収集出来る情報を一覧で見たいと思ったので ruby や sinatra 等の勉強も兼ねてダッシュボード的なものを作ってみた the 車輪の再発明 また、td-agent(fluentd) のバッファリングについても自分の中で整理整頓してみた 参考 Buffer Plugin Overview Fluentd out_forward における最適化パラメータいくつかの話 FluentdでバッファつきOutputPluginを使うときのデフォルト値 Fluentdの仕組み -バッファ機能でログ収集漏れを防ぐ- で、どんなものなの? ソースコード一式はこちら。 スクリーンショット やってること mo

    sinatra を使って td-agent(fluentd) のバッファの状態をモニタリングするダッシュボードを作ってみた - ようへいの日々精進XP
    kenjiskywalker
    kenjiskywalker 2014/05/29
    そっか〜
  • Fluentdがよくわからなかった話

    The document discusses the Fluentd logging system. It includes an explanation of how Fluentd buffers and queues log data before outputting it. The emit method is used to add log data to a chunk, and if the chunk limit is reached a new chunk is created and added to the queue. Once data is in the queue it can be output by the configured plugin.Read less

    Fluentdがよくわからなかった話
    kenjiskywalker
    kenjiskywalker 2014/04/03
    わかりやすい
  • Buffer Plugin Overview | Fluentd

    Please provide a valid email address and we will send you a copy of the Fluentd Documentation PDF immediately. Email Download Fluentd has 3 types of plugins: Input, Output, and Buffer. This article gives an overview of Buffer Plugin. We will first explain how Buffer Plugin works in general. Then, we will explain the mechanism of Time Sliced Plugin, a subclass of Buffer Plugin used by several core

  • Fluentd out_forward における最適化パラメータいくつかの話 - たごもりすメモ

    Fluentdのデータをネットワーク経由で転送するための組み込みプラグイン out_forward には最適化のための設定がいろいろあるが、内部構造への理解がないとなかなか意味がわからなかったりするものも多い。ので、あんまりいじってる人はいないんじゃないかという気がする。 最近複数の転送先へのロードバランスを out_roundrobin ベースの方法から out_forward の機能を使った方法に切り替えてみたので、ついでにそのあたりについて書いてみる。 (おまけ) out_roundrobin と out_forward(のロードバランス)の違い out_roundrobin は event stream の emit つまりFluentd内部における最小の配送処理単位ごとに配送先プラグイン(のインスタンス)を切り替える。可能な限り細かい単位で配送先をバラけさせたいときはこちらを使う

    Fluentd out_forward における最適化パラメータいくつかの話 - たごもりすメモ
    kenjiskywalker
    kenjiskywalker 2014/03/28
    めちゃくちゃ参考になる
  • Fluentdの仕組み -バッファ機能でログ収集漏れを防ぐ- - Tech-Sketch

    OSSのログ収集管理ツールFluentdを用いてログを統合管理している場合の懸念点として、ログの収集漏れが考えられます。 Fluentdでは、バッファ機能を活用することでログを収集漏れすることなく確実に収集することができます。 このバッファ機能のメカニズムを理解すべく動作検証した結果を紹介します。対象とするFluentdのバージョンは0.10.30です。 Fluentdとは Ruby実装のOSSのログ収集管理ツールです。 Fluentdは、Input、Buffer、Outputの3つのコンポーネントで実現されています。 様々な場所からログを収集、JSON形式に変換し(Input)、蓄積(Buffer)、様々な出力先にデータ出力(Output)します。 例として、あるサーバ(server01)のApacheのアクセスログを別のサーバ(server02)内にファイルとして出力する場合

  • fluent-debugと戯れる - Qiita

    こんにちは、こちらはFluentd Advent Calendar 19日目の記事となります。 fluentdの動作を確認するときやpluginのデバッグをする時などに、print文を埋め込んだりしていましたが、ふとしたきっかけでtd-agentパッケージに「 fluent-debug 」なるものが同梱されていることを知りました。さっそく使ってみようと思いましたが、これに関する記事がほとんど出てきませんでした...。 というわけで、せっかくなので今回はfluent-debugを触ってみた話をしたいと思います。 fluent-debugとは 実行中のfluentdに対してgdbのように、アタッチして内部をごにょごにょできるツールで、 fluentdの公式ドキュメント にも記載されています。内部では dRuby を使っており、 DRbObject と DRbServer を利用することでflu

    fluent-debugと戯れる - Qiita
    kenjiskywalker
    kenjiskywalker 2014/01/20
    便利っぽい
  • fluentdのoutputプラグインでブロックするものはBufferedOutputを使うべき - still deeper

    tl;dr タイトルのまま 前置き fluentdクラスタのあるノードにだけ、そのノードに送信しているout_forwardがdetachされ続けるという症状が出ました。 調査したところ、外部への通知用に追加したhipchatプラグインを追加したところで症状が発生するようです。 原因 BufferedOutputプラグインでの write メソッドでのスタックトレースはこんな風になります。 /home/choplin/git/fluentd/lib/fluent/buffer.rb:296:in `write_chunk' /home/choplin/git/fluentd/lib/fluent/buffer.rb:276:in `pop' /home/choplin/git/fluentd/lib/fluent/output.rb:309:in `try_flush' /home/cho

  • 個人情報を難読化するfluent-plugin-anonymizerの安定版をリリースしました #fluentd - Y-Ken Studio

    photo by minnepixel 突然ですが皆さん、アプリログをFluentdで収集する際に個人情報となるデータの扱い、どうしていますか? こういったログデータは個人情報保護や内部統制の観点から、データマスキングをしてから分析した方が好ましいです。 しかしながら、サーバにアクセス出来る人が限られるといった理由で問題の先送りをしているケースがあるかもしれません。 最近流行のログの見える化により、データマスキングされないまま多くの人がそういった情報にアクセス出来るようになっているのなら、余計にマズいですよね。 そこでデータマスキングを実現するfluent-plugin-anonymizerの出番です。 このプラグインを経由することで、文字列のハッシュ化と、IPv4/IPv6アドレスの丸め処理が出来ます。 リアルタイム分析用のElasticsearch+Kibanaといった検索ダッシュボー

    個人情報を難読化するfluent-plugin-anonymizerの安定版をリリースしました #fluentd - Y-Ken Studio
    kenjiskywalker
    kenjiskywalker 2014/01/07
    便利っぽい
  • Fluentd 2013年開発・状況まとめ / 2014年に向けて | Post Moratorium

    Fluentd 2013年開発・状況まとめ / 2014年に向けて ワイワイ!Fluentd Advent Calendar 2日目担当の @kzk_mover です。このエントリでは2013年 Fluentd の開発・コミュニティの状況まとめをお届けします。 2013年開発まとめFluentdコア自体は2013年、191 commit (そのうち @repeatedly が 84 commit)。ドキュメントの方は326 commitあります。コア以外にも、2012年年末に約70だったプラグイン数は、2013年12月1日現在に約3倍の206個となっています。 Fluentdのコア自体は10回リリースされ、td-agentは6回リリースされています。大体Fluentdが月1回、td-agentが月に2回の計算になります。また、@repeatedlyがTD社に入社し、td-agentのメンテ

  • fluentdのout_fileプラグインの仕様について - hack in 3 minutes

    ウィークリーFluentdユースケースエントリリレー #1 の記事です。 ウィークリーFluentdユースケースエントリリレーまとめ @oranie さんが in_tail を解説されてたんで、Output plugin から out_file を解説しようかと思います。さまざまな output に対応する Fluentd ですが、一番シンプルで基的なこのプラグインの動作を今一度確認してみました。 file plugin out_file はその名の通り、他の出力から受け取ったバッファをファイルに書き出すプラグインです。 公式ドキュメントは こちら 設定例はこんな感じです <match pattern> type file path /var/log/fluent/myapp time_slice_format %Y%m%d time_slice_wait 10m time_format

  • 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-plugin-numeric-counter fluent-plugin-numeric-counter | RubyGems.org | your community gem host tagomoris/fluent-plugin-numeric-counter · GitHub このプラグインは数値の上下範囲にマッチするメッセージをカウントする。数値版の datacounter みたいなものだと思えばよい。出力も datacounter の出力内容とまったく同じ。 Fluentd Casualのときの @fu

    fluent-plugin-numeric-monitor v0.1.0 and fluent-plugin-numeric-counter v0.1.0 released! - たごもりすメモ
  • FluentdでバッファつきOutputPluginを使うときのデフォルト値 - たごもりすメモ

    なんか自分で docs.fluentd.org へのpatchを書いてて混乱してきたのでまとめる。コードを読んでも関係する設定値がいくつものモジュールに分散しており、完全に把握することが困難である。具体的には、この組合せを記憶だけで答えられる fluentd コミッタはおそらく一人もいない。 概要 対象は BufferedOutput および TimeSlicedOutput を継承している output plugin の全て*1。out_forward, out_exec や out_exec_filter も含まれる。 基的にはいくつかの設定により flush をするタイミングを制御するパラメータ一式、およびflush対象となるデータのチャンクを溜めておく量の上限を決めることとなる。fluentd をうっかり試したときに「アイエエエ、fluent-cat してみたんだけど、設定したと

    FluentdでバッファつきOutputPluginを使うときのデフォルト値 - たごもりすメモ
  • 覚えるテク| [Ruby][Fluentd]in_tailの正規表現をテスト

    in_tailのformatに正規表現を書く時は、 (修正→設定ファイル読み込み→確認) x nとしてましたが、 もっと簡単にテストしたかったので、formatで使用する正規表現のテスト方法を調べてみました。 ソースを見てみると、どうやらfluent/parserの"RegexpParser"クラスで正規表現の解析を行なっているみたいなので、このクラスでテストをしてみました。 これで少し楽に! require 'time' require 'fluent/log' require 'fluent/config' require 'fluent/engine' require 'fluent/parser' $log ||= Fluent::Log.new format = /^\[(?<time>[^\]]*)\] (?<log>.*)$/ time_format = '%Y/%m/%d

  • TDDでFluentdのフィルタプラグイン書いてgemにできるようにしてみた #fluentd - ぽにくすじゃないだいありー

    fluentd, プラグイン, 開発Fluentdのプラグインって割と簡単に開発できるので、ローカルで動かす程度ならさっくり作るのもありなんだけど、gem化もかなり簡単でした。参考にしたのは id:tagomoris さんの fluentdのためのプラグインをイチから書く手順(bundler版) - tagomorisのメモ置き場。わかりやすい!実際にやってみていくつか気づいた事をまとめる セットアップまずは上記記事に従ってセットアップを行う。もちろん名前は自分が開発したいプラグイン名を元に書き換えていくことになる。 bundle gem fluent-plugin-hogehoge する時には、要らないファイルがステージングされてる元々 bundle gem で作成されるファイル構成と fluent-plugin でのファイル構成は違うため、bundle gem した時点で既に git

  • fluent-plugin-parser released! - たごもりすメモ

    Fluentd上に流れる任意のフィールドをparseするための out_parser および任意のフィールドを結合するための out_deparser を含むプラグイン fluent-plugin-parser v0.1.0 をリリースしました。 tagomoris/fluent-plugin-parser · GitHub fluent-plugin-parser | RubyGems.org | your community gem host out_parser これにより「アプリケーションログが投げられてくるんだけど、このフィールドが微妙に複数の情報を結合した文字列になってて惜しい!!!!」みたいなケースについて、そいつを分解してそれぞれのフィールドに収める、というようなことができるようになります。 また in_tail が使っているのと同じ Fluent::TextParser

    fluent-plugin-parser released! - たごもりすメモ
  • fluentdのformat(正規表現)の作り方について試行錯誤中 #fluentd - Glide Note

    Fluentdを触るようになって、いろんなログをfluentdに 渡すように試行錯誤している最中。 td-agent.conf、fluent.confを用意するときに任意のjson形式にするために 正規表現を用いてformatを書く必要があるんですが、formatの作り方というかデバック方法について どういう手順に作ると良いのか情報がネット上に見当たらず試行錯誤中。 もっと良い方法を教えてもらいたいので、今やっている方法を晒してみる。 そもそもの疑問、どうやってformatを作るのか たとえばfluentd関連の情報を調べてると、 #fluentd で maillog を読み込んで MongoDB に投入 - 酒日記 はてな支店 format /^(?<date>[^ ]+) (?<host>[^ ]+) (?<process>[^:]+): (?<message>((?<key>[^ :

  • Fluentdでparser用の正規表現を書く・試す - たごもりすメモ

    こんなエントリを目にしたので、なんか書こうかなと思った。 fluentdのformat(正規表現)の作り方について試行錯誤中 #fluentd - Glide Note - グライドノート Fluentd の in_tail や拙作 fluent-plugin-parser ではログのparse用の正規表現を指定することになるが、確かにこれを設定してログを流して試して直して、というのはいささか効率が悪い。ので、簡単に試す方法を書いてみる。 なお irb を使う手順。ruby 1.9系がインストールされていればたぶん入っているけれど td-agent だとちょっとどうだっけ。適当にがんばっていただきたい。 とりあえず以下のようなログをparseしたいとする。 Jul 16 00:45:47 BJA login[58879]: USER_PROCESS: 58879 ttys002irbを起動

    Fluentdでparser用の正規表現を書く・試す - たごもりすメモ