2012-02-13 9 views
0

私はKM APIをインストールするためのRuby APIメソッドを使用していますが、正しく実行しているかどうかはわかりません。私がした最初の事は私のinit.rbファイルにKMのinitコードを入れている:レールアプリにKissmetricsを正しくインストールするにはどうすればよいですか?

KM.init("API-KEY", 
    :log_dir => '/var/logs/km/', 
    :use_cron => true, 
    :to_stderr => true) 

が、私は明らかに、私のAPIキーとAPI-KEYを置き換えます。その後、データをファイルに保存し、5分ごとにKMにcronjobとして送信することが適切な方法であると言います。私の最初の質問は、 -/var/logs/km /データを保存するための正しいディレクトリですか?私は実際に私のレールアプリでそのディレクトリを参照していない。

私は、次のようにcronジョブを送信するためにシェフのレシピを使用しています:

# send KM logs to KM 
cron "Send KM data to KM" do 
    minute '*/5' 
    hour '*' 
    day  '*' 
    month '*' 
    weekday '*' 
    command "/usr/bin/ruby /km-install-dir/bin/km_send" 
end 

私もこれが正しいかどうかはわかりません。この例では、cronコードを次のように示しています。

*/5 * * * * /usr/bin/ruby /km-install-dir/bin/km_send 

どのように私がシェフでcronジョブを作ったのですか。だから、いくつかの質問:私はそれが動作しているかどうかを知るには?私はcronジョブのデータが格納されているファイルを見つけることができないようですが、間違ったディレクトリに置いたのですか?私のシェフのレシピは正しいですか?

ありがとうございます!

答えて

1

シェフを使用して非同期でデータを送信しませんでした。 debugger gemをインストールし、適切な環境(development.rb、production.rb)でKM変数が初期化されているかどうかを確認できます。また、ログディレクトリに適切な権限があるかどうかを確認してください。

0

KissMetricsデータをファイルに保存してcronジョブを設定する代わりに、delayed_jobdelayed_kmを組み合わせて良い結果が得られました。

イベントデータはデータベースに保存され、定期的にバッチで送信されます。 これは、カスタムcronジョブを設定する必要がなくなり、アプリの拡張が容易になることがわかりました。 KissMetricsにはsmall amount of documentationがあります。

関連する問題