errbit-phpを試してみる
調べてもほとんど情報が出てこないのでメモ書き程度でも残しておく。
errbit-phpの中で無名関数使ってるので、php5.3以上でないと動かないので注意。
あと、errbitの中でmongod
使うようなので、こちらも別途インストールして起動しておく。
導入
errbitを入れる
ここはruby。
まず、rbenvとかで適当にruby入れておく。
rbenv install 2.1.1
rbenv rehash
rbenv shell 2.1.1
ruby -v
githubから取ってくる。
git clone https://github.com/errbit/errbit
bundleして
cd errbit bundle install
port3000で起動
bundle exec rails s
unicornとかに換えても良いと思う。
ブラウザでアクセスしてみる
http://localhost:3000/
デフォルトのままなら
- errbit@errbit.example.com
- password
でログインできるはず。
seedはdb/seeds.rb
にあると思う。
アプリケーションを登録。
ログインした後に
Apps
-> Add a New App
から登録。
ここで登録した時に割り振られるapi-key
は後で使うのでメモっておく。
errbit-phpを入れる
ここからphp。
githubから取ってくる。
git clone https://github.com/flippa/errbit-php.git
プロジェクトにコピー
cp -r errbit-php/lib/ /path/to/proj
設定
初期設定はこんな感じ。
詳細はREADME.md
見るといいかも。
- api-key: errbitのwebアプリから登録したアプリケーションのキー
- host: errbitの動いているホスト
- port: 上記errbitの導入でwebrickで起動してるので、この場合は3000
project_root
とかenvironment_name
とかはたぶん表示に使うだけだと思う。
require_once APPPATH . '/libraries/Errbit.php';
Errbit::instance()->configure(array(
'api_key' => 'd8e13dff0e25755995cbf25f512df250',
'host' => 'localhost',
'port' => 3000,
'project_root' => dirname(__FILE__),
'environment_name' => "development",
));
監視 or 通知の設定
以下、ざっくり使い方。
間違ってたら指摘お願いします。
詳細はREADME.MDを参照されたし。
Errbit::instance()->start();
とやっておくと、phpのエラーハンドラに登録するらしいので、
エラーが起きた時に自動的に通知してくれる。
が、これだとエラーハンドラがerrbit-phpに食われてしまうので、
手元から通知する場合は
try {
something_proc_error_may_occurs();
} catch(Exception $e) {
Errbit::instance()->notify($e);
throw $e;
}
とかしてやるといいと思う。
これで、errbitのwebアプリのErrors
タブにエラーが登録されて確認できるようになる。
ユーザの追加とかNOTIFICATIONSとかWATCHERSとかはまぁ、適当に。
# ほんとにちょっと試したかっただけなのでそこまでしっかり設定してない :)