API を使用して、サイトの chartbeat.com 統計を取得しようとしています。Python chartbeat Egg の使用は問題なく機能しますが、Ruby では最初のフェーズを通過するのに苦労しています。最終的に、私の目標は chartbeat クイック統計配列 (現在のユーザー、1 秒あたりのレートなど) をプルしてグラファイトに送信し、すべてをデーモン化することです。
私はプログラミングの方法論、理論、および実践について十分に理解しています。私は Ruby の構文に非常に慣れており、シンボル、メソッド (プライベート/パブリック) を読んでみましたが、Ruby が私のコードでうまく動作するようには思えません。脳。それが私の問題である可能性が最も高いと思います。
私が理解していることから、私はそのようなことをする必要はありませんputs
。quickstats
on でメソッドを呼び出すとc
、GEM を介して chartbeat API から返されたものをすべて出力する必要があります。
chartbeat gem はhttps://github.com/ashaw/chartbeatにあります。私のルビーはRuby 1.9.3p362 (2012-12-25 revision 38607) [x86_64-darwin12]
.
スクリプトを実行すると、次のようになります。
/opt/local/lib/ruby1.9/gems/1.9.1/gems/chartbeat-0.2.2/lib/chartbeat.rb:31:in `[]': can't convert Symbol into Integer (TypeError)
from /opt/local/lib/ruby1.9/gems/1.9.1/gems/chartbeat-0.2.2/lib/chartbeat.rb:31:in `block in method_missing'
from /opt/local/lib/ruby1.9/gems/1.9.1/gems/chartbeat-0.2.2/lib/chartbeat.rb:30:in `each'
from /opt/local/lib/ruby1.9/gems/1.9.1/gems/chartbeat-0.2.2/lib/chartbeat.rb:30:in `method_missing'
from /Users/jed/Documents/workspace/chartbeat2graphite/c2b.rb:8:in `<main>'
コードは次のとおりです。
require 'chartbeat'
require 'graphite'
require 'daemonize'
c = Chartbeat.new(:apikey => "sadfklj09238402938" , :host => "lipsum.com")
c.quickstats :path => '/'