Focuslightを動かす
グラフ表示ツールGrowthForecastのRuby実装版であるFocuslightがリリースされたということで、さっそく使ってみました。
インストール
FocuslightのREADMEのInstallationに従って作業を行います。
環境
手元にあったvagrantのboxを適当に選んで、そこにFocuslightを構築しました。
* Ubuntu 13.04
事前準備
FocuslightはRuby2.0以上を必要とするとのことなので、Ruby2.0以上の環境を用意しておきます。
加えて、RRDTool and its dependencies must be installed before installing Focuslight.
とのことなので、RRDToolをインストールしておきます。
$ sudo apt-get install rrdtool
Focuslightを手に入れる
$ git clone https://github.com/tagomoris/focuslight.git
$ cd focuslight
依存ライブラリのインストール
READMEに従って次はbundle installを行うのですが、OSのバージョンなどによってはライブラリが足りず失敗してしまいます。
足りないと言われる度にライブラリを追加していけばokです。
参考までに構築中に追加でインストールしたライブラリを記載します。
$ sudo apt-get install librrd-ruby librrd4 librrd-dev
// Debianの場合このあたりも別途入れてあげないといけないかもしれません
$ sudo apt-get install libsqlite3-dev sqlite3 libsqlite3-ruby libdbd-sqlite3-ruby
これで、bundle installが成功するはずです。
起動
bundle installに成功したあとは
$ bundle exec rake init
$ bundle exec foreman start
15:10:30 web.1 | started with pid 9819
15:10:30 worker1.1 | started with pid 9820
15:10:30 worker2.1 | started with pid 9822
15:10:31 web.1 | I, [2014-02-19T15:10:31.315950 #9821] INFO -- : listening on addr=0.0.0.0:5125 fd=9
15:10:31 web.1 | I, [2014-02-19T15:10:31.316631 #9821] INFO -- : worker=0 spawning...
15:10:31 web.1 | I, [2014-02-19T15:10:31.317653 #9821] INFO -- : master process ready
15:10:31 web.1 | I, [2014-02-19T15:10:31.318822 #9838] INFO -- : worker=0 spawned pid=9838
15:10:31 web.1 | I, [2014-02-19T15:10:31.319418 #9838] INFO -- : Refreshing Gem list
15:10:31 web.1 | I, [2014-02-19T15:10:31.449224 #9838] INFO -- : worker=0 ready
こうしたメッセージが出力されればok。
さっそくブラウザでhttp://localhost:5125/ にアクセスします。
こんな感じの画面が表示されるはずです。
データを投げてみる
Focuslightは、http://localhost:5125/api/serviceA/metricsX/data1
にcurlでPOSTしてあげると、グラフができます。(serviceA, metricsX, data1をお好きなものに変更してください)
$ curl -F number=10 http://localhost:5125/api/socialgame/member/register
{"error":0,"data":{"id":1,"service_name":"socialgame","section_name":"member","graph_name":"register","number":10, ~略~ }}
このような出力が返ってきたら成功です。http://localhost:5125/ にアクセスすると、グラフができているはずです。
以上でFocuslightの構築が完了しました。さくっとできました、すごいです。
dstatからの情報を描画してみる。
FluentdからFocuslightにデータを流し込む場合、GrowthForecast向けのpluginであるfluent-plugin-growthforecastをそのまま利用できます!
こちらの記事に習って、fluent-plugin-dstatと、fluent-plugin-map、fluent-plugin-growthforecastの3つのpluginを使ってメモリ使用量などを描画してみます。
td-agent.confは、参考にさせていただいた記事のgfapi_url
を変更したのみなので、割愛させていただきます。
gfapi_url http://localhost:5125/api/
td-agent.confを書き換えた後、sudo /etc/init.d/td-agent restart
してしばらくすると...
メモリ使用量のグラフができました!
まとめ
Focuslightをインストールして、fluentdにてデータを流しこみ、グラフ描画まで行いました。GrowthForecastをこれまで触ったことがありませんでしたが、さくっと構築できるのはとても魅力的だと思います。
Author And Source
この問題について(Focuslightを動かす), 我々は、より多くの情報をここで見つけました https://qiita.com/tatsu-yam/items/f00ebeb0b4e85c64ae4e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .