(更新については下を参照してください...)
私は(beanstalkdから収集統計に、Rubyで)サボテンのためのデータ入力方法スクリプトを書いたのだが、コマンドライン(、単一の単純な整数を返すの作品ここに記載されているようにサボテンユーザーアカウントとして実行したとき)が、サボテンツールそれ自体はデータを収集しておらず、ログには何もありません。
データ入力方法の設定は次のとおりです 。Cactiデータ入力方法http://img.skitch.com/20091009-gh7g1kukn9yradj6y2iqrd5qm1.jpg
そして、これが結果のグラフです(ホストのグラフテンプレートに追加され、データを収集するのに十分な時間実行された後): Cacti Graph http://img.skitch.com/20091009-xq1kn3qxkteb5hb11wtx6tbs8m.jpg
アップデート#1:Cactiが環境を削除しているようです:
sudo su-cacti -c 'env -i / script / beanstat --host 10.11.12.13 --port 11300 --stat current-waiting' / script / beanstat:4:in `require ':ロードするファイルはありません-rubygems(LoadError) / script / beanstat:4から
その場合、どうすれば回避できますか?
アップデート#2:この stackoverflow.comへの応答により、環境の問題は解決されたようですが、それでもグラフにはデータがありません。
更新#3:@Heathの提案のおかげで、ポーラーのロギングレベルを上げて、これをキャッチしました。
警告:CMDからの結果が無効です。部分的な結果:U
「部分的な結果:U」が何を意味するのかをググるのに運がありません。スクリプトは、単一の整数値を出力するだけです。
更新#4:私はようやくこれを動作させました。中心的な問題は、シェルスクリプトが実行されるときの環境の欠如でした。Rubyスクリプトの前に次の行を付けることで、これを解決する必要がありました。
#!/ bin / sh PATH = / usr / local / bin:$ PATH exec ruby -x "/ full / path / to / script / directory" $ 0 "$ @" #!/ usr / bin / env ruby
そして2番目の問題は、データテンプレートにフィードするデータソースにフィードするデータソースにフィードするデータ入力メソッド(すべてが同じスクリプトを使用していたとしても、収集したい個別のメトリックごとに1つ)の適切な構成でした(またはその逆、 mはまだ明確ではありません)デバイスに割り当ててグラフツリーに追加する必要があるグラフテンプレートをフィードします。要約すると、それはドキュメンテーションのがらくたとなる大きな大失敗であり、私は二度とそれをする必要がないことを願っています。
アップデート#5:GitHub http://github.com/trak3r/cacti-beanstalkd-scriptでスクリプトを共有しました