サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
qiita.com/repeatedly
fluentdがv0.14からWindowsで動くようになりました.それにともない,fluentd v0.14を使うtd-agent 3.0もWindows用のmsiパッケージを提供することにしました! で,msiパッケージを作ってみたので,興味のある方に試してもらいたく,使い方を書きます. 正式版リリース時には,fluentdの公式ドキュメントにもちゃんとした手順は追加する予定です.これらの手順は管理者権限を持ったアカウントで実行しているのを想定しています. インストール msiパッケージをダウンロードしてクリックすればインストール出来ます.パッケージのURIは以下です. beta1とついている通り,まだbetaです.今後いくつか変更予定がありますが,それは最後に書きます. Fluentdを動かす プロンプトを起動する msiパッケージをインストールすると,Td-agent Comman
毎年やっているので,2016年もFluentd周りで起きたあれこれをまとめておこうと思います.v0.14がリリースされたり,CNCF入りしたりと色々と大きく前進した年でした. Fluentd本体 以下が現在の各リリースの最新バージョンです. old stable: 0.10.62 Current stable: 0.12.31 Development: 0.14.10 0.10は2016年末でEOLなので(アナウンス),これ以降新しいバージョンはリリースされないことに気をつけてください.0.10.0のリリースが2011年10月なので,約5年開発されていたことになります(実際はここ1年は開発してないので実質は4年ですが). また,v0.14が開発版という位置づけではあるものの,それなりに機能が実装され,gemから普通にインストールして使うことが出来るようにもなりました.Docker環境とかで
fluentdのv0.12.19から,buffer_queue_full_actionというパラメータを追加したので,その説明をします. 目的 fluentdのバッファはキューが全部埋まってデータをもう入れられない場合,Inputプラグイン側にBufferQueueLimitErrorを返します.これによって,in_forwardであれば送信側にエラーを返せるなど,リトライ/フォールバックがやりやすくなってます. その一方in_tailのような場合には,どうせキューが空かないと次のデータを読み込んでもまたエラーになるので,ブロックして待って欲しいこともあります. ということで,この二つを選べるようにしました. v0.14でプラグインやバッファ周りのAPI改善を考えており,そこでback-pressure相当の機能を考えています.もし入るのであれば上の機能はいらなくなる予定ですが,そもそも入
複雑な設定はありません.デフォルトで0.0.0.0:5044で起動し,topbeat,packetbeat,filebeatすべてのイベントを受け付けます.この設定だと固定タグですが,tagの代わりにmetadata_as_tagを設定すると,各イベントが持っているメタデータの設定を使うようになり,topbeatならtopbeatというタグが付くようになります.以下の"Elasticsearchに投げる設定例"を参照してください. filebeatが送ってくるイベントにはログそのものが含まれているので,これをbeatsプラグインの中でパースしたい場合には,in_tailのようにformatを指定すれば処理してくれるようになります. その他書いてない設定に関してはREADMEの設定セクションを参照してください. Elasticsearchに投げる設定例 各beatはlogstashのインデッ
Fluentd v0.12.16でプラグインの設定をコマンドラインから確認する方法 クリアコードさんのブログで既に書かれてますが,fluentdはv0.12.16から,プラグインの各パラメータを定義するconfig_paramに説明が付与できるようになってます.今だと二つ付与する方法があります.以下はout_stdoutのoutput_typeの例です. :descオプション config_param :output_type, :default => 'json', :desc => 'Output format.(json,hash)'
Fluentdのv0.14の開発バージョンであるv0.14.0.pre.1をリリースしました. これはテストして欲しい以下の二つの機能が実装されたからです. Windowsサポート イベントのナノ秒サポート インストール 開発版なので,普通にインストールは出来ません.--preをつけてください.注意点として,v0.14はruby 2.1以上を必要とします. 依存ライブラリのいくつかがWindows向けのbinary gemをリリースしてないので,Windows環境ではDevKitが必要になると思います.DevKitのインストールについてはfluentd for WindowsをRuby 2.2で動かすの記事を参照してください(時間があればパッチを投げたい). Windowsサポート nurseさんやokahashi117さんの尽力やパッチを投げてくれた方々のおかげで,Windowsで動くよ
背景 Rubyで文字列の時間表現を時間に変換するにはTime.strptimeをよく使います.以下は公式リファレンスの例です. Time.strptime('2001-02-03T04:05:06+09:00', '%Y-%m-%dT%H:%M:%S%z') #=> 2001-02-03 06:05:06 +0900 これは楽でとても便利なんですが,Time.strptimeには遅いという致命的な問題があります.例えばFluentdのようなひたすらログを読み込んでパースするソフトウェアの場合,Time.strptimeそのものがボトルネックになります.これはTime.strptimeは毎回文字列フォーマットをパースしないといけないなど,いくつかの要因があります. Fluentdでこの問題をどう解決していたかと言うと,文字列をキャッシュして,前と文字列が同じであればTime.strptime
treasure-data/kafka-fluentd-consumer Kafkaからデータを取り出してFluentdに転送するJava実装のKafka Consumerを書きました.基本的なことはREADMEに書いてるんですが,一応日本語でも書いておきます. 背景 1トピック1パーティションであれば,すでに公開されているfluent-plugin-kafkaが使えます.ですが,複数トピックだったりをConsumer Groupを使って処理しようとすると,現状fluent-plugin-kafkaが依存しているPoseidonに機能がたりないという問題があります(output側は問題ありません). 海外だとデータ量が多い会社も多く,それに伴いKafkaを使っている会社が少しずつ増えてます.その影響もあり,FluentdとKafkaを連携させたいという要望がちょくちょく出てきたので,Jav
すでにアナウンス済みですが,Treasure Agent(td-agent) 2.2.0を出しました td-agent 2.2.0 - Google Groups パッケージ内の更新は以下の通りです. fluentd v0.12.7 fluent-plugin-s3 v0.5.7 fluent-plugin-mongo v0.7.8 td v0.11.8.2 fluentd-ui v0.3.18 ruby 2.1.5 json 1.8.2 cool.io 1.3.0 Amazon Linux support fluentd v0.12 このバージョンから,fluentdがv0.10ではなくv0.12系が使われるようになりました.その結果,Filter/Label,forwardプラグインでのat-least-onceなどが使えるようになります. これらの機能に関しては,v0.12のリリース
Remove multi language page from official site. #160 というパッチを今日マージしました. 背景 fluentd-docsはdocs.fluentd.orgのリポジトリです.前は英語しかなく,各言語の翻訳バージョンが欲しいという要望があったので(特に日本語),複数言語を表示出来るように少し前にしました. ただ,Fluentdの開発者達は基本英語でドキュメントを書くのと,逐一日本語へ翻訳するのはかなりのコストなので,日本語への翻訳はコントリビューションベースという感じになりました. サポートした最初の頃は良かったんですが,Fluentd本体の進化にともない英語のドキュメントが更新される一方,日本語への翻訳ペースは全然追いつかないようになっていました(ほぼmazgiさん一人に頼り切りになってました). 問題点 分かるとは思いますが,日本の方は日本
12月12日にFluentd v0.12をリリースしました.ここでは出たばかりのv0.12について書きます.v0.12はv1リリースのための準備マイナーバージョンアップの一つで,なるべく互換性を維持しつつ新機能や新しいAPIを実装しています.以下がv0.12で提供される主な新機能です. フィルタ ラベル ログ転送でのAt-least-once semantics 新しいParser/Formatterクラス このうち,一番下の機能はv0.10にもバックポートされています.それぞれ説明していきます. フィルタ Fluentdで一番待ち望まれていた機能です.Fluentdはロバストなログ転送にフォーカスして開発されているログコレクタで,貯めた後にHadoopでバッチを回したり,Prestoでアドホッククエリを投げるなどがよくある構成です. ただ,ログを貯める前に速報値を出したいとか,ログ本体に
Treasure Data,昔はTreasure Agent(Fluentd)を中心としたデータインポートがメインでしたが,今では他の方法も増え,より簡単にデータをインポートできるようになっています.この記事ではそれらの概要を一通り眺められるようにしたいと思います. 現状データインポートには大まかに以下の方法があります. Treasure Agentによるインポート TDロガーによるインポート JavaScript SDKによるインポート モバイル SDKによるインポート Web Consoleからのファイルアップロードによるインポート tdコマンドを使ったインポート 以下,それぞれを簡単に見ていきたいと思います. Treasure Agentによるインポート 広く使われているFluentdベースでのインポートです.fluent-plugin-tdを使いTreasure Dataへとデータ
毎年恒例1年のまとめ記事です.2014年はFluentdの飛躍の年でもあったので,エコシステム周りも含め色々と紹介したいと思います. 2014年は0.10.43から始まり,v0.10の最新版は0.10.57,v0.12が開発版としてpre2までリリースされています.v0.12に関しては13日,v1を含めた来年の開発に関しては25日に書く予定です. Fluentd本体 すべてを列挙するのは難しいので,すべてを見たい方はChangeLogを参照してください.ここでは特に運用やプラグイン周りで有用なものをピックアップします. プラグイン毎のlog_levelオプション (0.10.43) グローバルなレベルとは別に,各プラグイン毎にログレベルを設定出来る機能です.詳細は以前書いたFluentdのロギングを参照してください. sigdump (0.10.43) sigdumpが同梱されるようになり
きっかけ アドテクスキルアップゼミ カラムナーデータベース検証まとめという記事が公開されたのですが,Presto/Impalaの結果があまりにも散々で,これはさすがに何かおかしいんじゃないかという話になってました. 今だとすでに記事に注釈が入ってますが,Presto/Impalaは生のテキストファイルを対象にしていたのが原因でした.なので,その辺について少し書き,実際Prestoはどんなもんなのかというのを簡単に示します. 列指向ファイルフォーマット Presto/Impalaが生のテキストファイルだったのに対し,他のクエリエンジンは違うフォーマットでデータを保存していて,これがかなり結果に響いてます.Redshift,BigQuery,Treasure Dataなど,データ解析系のサービスは皆列指向フォーマットを採用していて,データインポート時に勝手に変換が行われます.列指向フォーマット
Treasure Dataが提供しているFluentdの配布パッケージであるtd-agentの今後について書く.この記事は http://docs.fluentd.org/articles/td-agent-v1-vs-v2 http://docs.treasure-data.com/articles/td-agent2 とかMLでのアナウンスを日本語でまとめたような感じの記事です. 現在は1と2の二つのバージョンが並行してリリースされているので,まずそれぞれの違いについて書きます. td-agent 1 今までのメインバージョンであり,現在はold stable.同梱ライブラリの大きなバージョンアップはありません.最新版の1.1.21では以下のものが同梱されています Ruby 1.9.3 jemallocやmsgpackなど,コアライブラリ群 Fluentdとよく使われるプラグイン群 サ
テストの書き方 基本 今までのTest::Unitと変わらないので,classで書く.ただ,昔のTest::Unitとは違い,TestCase毎に呼ばれるstartupやshutdownなどが増えている. require 'test/unit' class TestSample < Test::Unit::TestCase class << self # テスト群の実行前に呼ばれる.変な初期化トリックがいらなくなる def startup p :_startup end # テスト群の実行後に呼ばれる def shutdown p :_shutdown end end # 毎回テスト実行前に呼ばれる def setup p :setup end # テストがpassedになっている場合に,テスト実行後に呼ばれる.テスト後の状態確認とかに使える def cleanup p :cleanup
英語では少し情報はあるんですが,日本語だとTreasure DataのFluentdプラグインのまとまった情報がない気がしたので,とりあえず書いておく.いずれは公式ブログとかドキュメントの日本語化がされた時に整理されて公開される予定です. Treasure Dataに関しては,公式サイトや公式ブログに色々と記事が公開されているので,参照してみてください. http://www.treasuredata.com/jp/ http://treasure-data.hateblo.jp/ Treasure Dataプラグインについて その名の通りTreasure Dataにログを転送するFluentdプラグインです.Treasure DataのデータストアはスキーマレスなのでひたすらJSONなログを突っ込むことが出来,Fluentdと相性が良いです.実際はSchema on Readのアプローチ
Fluentdの公式ドキュメントにloggingのページがあるんですが,まだ英語しかなく,運用の話を聞いてるとここに書いてあることで解決出来るケースがいくつかあったので,とりあえず日本語で記事にしておきます. プラグイン毎のログレベル 昔のFluentdはグローバルに一つしかログレベルを設定出来なかったんですが,今ならプラグイン毎に設定出来ます.プラグインが対応している必要がありますが,まぁ今時のプラグインや広くつかわれているやつはほとんど対応していると思います. in_tailプラグインはログにマッチしない行があったらwarnでメッセージを出しますが,そういうbrokenな行があることが分かっていてログを出さずに無視して欲しい,というような場合に有効です. その他にも,あるプラグインだけデバッグモードで走らせたい,みたいなことが出来るようになります. ログのスタックトレースの抑制 Flu
Treasure Agent(td-agent)とAmazon Linuxの関係について,現状を簡潔にまとめておきます. 非サポート対象 td-agent v1 vs. td-agent v2のSupported Platformsに書いてますが,現状Treasure AgentはRedHat/CentOSの5/6向けのRPMを提供しています(7も近々出します).Amazon LinuxはRHELベースでRPMを使っているので,サポート対象に入っていると思われるかもしれませんが,実際は非サポートです.理由はいくつかあります. Amazon Linuxは俺俺バージョニングを採用していて,安定したサポートが難しい.$releaseverがlatestなのもつらい Treasure Dataが提供している http://toolbelt.treasuredata.com/sh/install-r
Fluentd v0.10.53がリリースされました. 恒例?の日本語での簡単な解説になりますが,v0.10.53の変更点は以下になります. in_tail: Fix forget to detach Closer timer object: #394 in_debug_agent: Fix config_param type of unix_path: #392 in_syslog: Add include_source_host and source_host_Key options: #391 config: Dump V1 escaped parameter correctly at start phase: #389 config: Fix bug for config_param of bool value without defaults: #410 config: Add
D言語 Advent Calendar 2013の最初の記事です.例年通り1年の間にあったD言語界隈の変更について書きます 現段階でのdmdの最新バージョンは2.064.2で,言語機能などはこれに従います.基本的な文法に関しては,以前書いた基礎文法最速マスターを参考にしてみてください. 公式プロジェクト dmd 自分が気になっている変更について,少しピックアップして書きます.型周りの改善や書きやすいシンタックスの追加など色々と改善されているので,全部追いたい方はchangelogを上から読むと良いと思います! Windows 64bit環境のサポート 私はWindowsを使っていないので試してないのですが,64bitビルドのPhobosも同梱されていますし,チケットもresolvedになっているので,動くと思います. import package_nameによる一括import D言語は今
# path/to/reposに外部リポジトリを追加 > git submodule add git@github.com:account/repos.git path/to/repos # 削除は .git/config and .gitmodules から[submodule "path/to/repos"]を削除.その後 > git rm --cached path/to/repos Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up
D言語 Advent Calendar 2012の最初の記事です.他の皆さんが技術的なことを書いてくれると思うので,この記事はLanguage Updateっぽいものにします.2010年Advent Calenderでそれっぽいのを書いていたので,2012年までの2年間での変更について書きます. 全部書くと死ねるので,公式のプロジェクトとサードパーティで主要なものについて書きます.目安として,現段階でのdmdの最新バージョンは2.060です.また基本的な文法に関しては,以前書いた基礎文法最速マスターを参考にしてみてください. 公式プロジェクト dmd D1サポートの終了 2012年を持ってD1とはおさらばになります.皆さんお疲れ様でした!これでD2に開発リソースが一本化されます. 64bit対応 Windows以外,全て64bitコードを吐けるようになりました.今現在,gitのHEADでは
次のページ
このページを最初にブックマークしてみませんか?
『@repeatedlyのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く