Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

fluent-plugin-resque_stat

  • Be the first to comment

fluent-plugin-resque_stat

  1. 1. fluent-plugin-resque_stat @Spring_MT13年2月15日金曜日
  2. 2. Profile Twitter : @Spring_MT 所属 :10xlab http://10xlab.jp (FBページ)13年2月15日金曜日
  3. 3. Resque Resque githubで使われてるRubyベースのジョブ キュー ライブラリ バックエンドはredis13年2月15日金曜日
  4. 4. fluent-plugin-resque fluentdからResqueにキューを送るoutputプラ グイン セコンさん謹製13年2月15日金曜日
  5. 5. fluent-plugin-resque_stat Resqueの状態をfluentdに投げるインプットプ ラグイン pending キューの残数 processed 取り出したキューの総数 queues 登録されてるキューの名前の総数 workers キューを取り出すworkerの数 working キューを処理中のworker数 failed 失敗したキュー数 servers resqueが動いてるサーバーのhostやportの情報 resque_statが動いているサーバーの RAILS_ENV or environment RACK_ENV(なければdevelopmentが入る)13年2月15日金曜日
  6. 6. fluent-plugin-resque_stat ikachanで見ると13年2月15日金曜日
  7. 7. 何でプラグインを書くのか?13年2月15日金曜日
  8. 8. 最初はexecプラグインで すまそうかと思った13年2月15日金曜日
  9. 9. #!/usr/bin/env ruby # encoding: UTF-8 require resque Resque.redis = "127.0.0.1:6379" while Resque.info sleep 1 end13年2月15日金曜日
  10. 10. できた!!13年2月15日金曜日
  11. 11. テスト!13年2月15日金曜日
  12. 12. テスト書きますよね。。。13年2月15日金曜日
  13. 13. どうやって書こうかな。。。 (´・ω・`)13年2月15日金曜日
  14. 14. テスト書きたい!13年2月15日金曜日
  15. 15. プラグインにしちゃえ!!13年2月15日金曜日
  16. 16. Fluent::Test::InputTestDriver13年2月15日金曜日
  17. 17. Fluent::Test::InputTestDriver 簡単に説明すると newしてインスタンス作っ て、runすればfluentdが動く emitsでデータ取得すれば、あとはそれを checkするだけ!13年2月15日金曜日
  18. 18. require fluent/testrequire File.dirname(__FILE__) + /spec_helperDEFAULT_CONFIG = %[ tag test host 127.0.0.1 port 6379 run_interval 1s]describe Fluent::ResqueStatInput do before { Fluent::Test.setup } context test_emit do it do d = Fluent::Test::InputTestDriver.new(Fluent::ResqueStatInput).co d.run do sleep 2 end emits = d.emits emits.length.should > 0 emits[0][0].should eql(test) emits[0][2].keys.should eql([pending,]) end endend13年2月15日金曜日
  19. 19. 13年2月15日金曜日
  20. 20. で、よく考えたら。。。13年2月15日金曜日
  21. 21. execで呼び出すそのscriptに テストはありますか?13年2月15日金曜日
  22. 22. テストを書くために プラグインにしてもいいのでは?13年2月15日金曜日
  23. 23. Rubyわかんない。。。。13年2月15日金曜日
  24. 24. 確かに。。。。 最初はperl脳とかで書いて後 で直すとかでもいいのでは?13年2月15日金曜日
  25. 25. テスト > 見た目13年2月15日金曜日
  26. 26. 公開できない。。。。13年2月15日金曜日
  27. 27. Bundler使っていれば、github のパスは指定できるが。。13年2月15日金曜日
  28. 28. ローカルでgem install$ git clone git://github.com/SpringMT/fluent-plugin-resque_stat.git test$ cd test$ gem build fluent-plugin-resque_stat.gemspec Successfully built RubyGem Name: fluent-plugin-resque_stat Version: 0.0.5 File: fluent-plugin-resque_stat-0.0.5.gem$ gem install fluent-plugin-resque_stat-0.0.5.gem Successfully installed fluent-plugin-resque_stat-0.0.5 1 gem installed Installing ri documentation for fluent-plugin-resque_stat-0.0.5... Installing RDoc documentation for fluent-plugin-resque_stat-0.0.5...13年2月15日金曜日
  29. 29. まとめ(一応) テストを書くためだけに プラグインにしても 良いと思います!13年2月15日金曜日
  30. 30. 13年2月15日金曜日

×