Webサーバのエラー監視に利用できる便利ツールにはいろいろ種類があるのですが今回sentryを利用することになりました。
sentryを一度いろいろ試したいと思っていたら自前の環境に立てられるonpremiseバージョンがあることがわかったので今回はそちらを試した記録をつけておこうと思います
onpremise
必要なのは
- sentry-onpremiseというリポジトリをクローンすること
- dockerとdocker-compose
この2つなので簡単!
https://github.com/getsentry/onpremise
リポジトリがあるのでここから持ってくるといい感じです
git clone https://github.com/getsentry/onpremise sentry
Dockerの入れ方は環境によって違うので今回は割愛します
リポジトリの使い方
基本的なことはREADMEに全部書いてあってその通りに実行すればとりあえず動くのですが手順を書いていくとこんな感じに
docker-compose run --rm web config generate-secret-key
# docker-compose.ymlの環境変数にSENTRY_SECRET_KEYをコピペ
docker-compose run --rm web upgrade
# 初期のアカウントの作成を開始
# emailを入力
# passwordを入力
# superuser => true
docker-compose up -d
# ブラウザでIPアドレス:9000へアクセス
RootURL -> URL:9000を入力するかIPアドレス:9000を入れる
AdminEmail -> 管理者のメールアドレスを入れておく
Authentication -> チェックは付けない!付けると誰でも登録できるのでだめ
Beacon -> sentry開発者へエラー情報を送るかどうかのチェックっぽい
メールの設定
メールの設定はリポジトリのルートにある config.yml
で行います
今回は実験だったのでGmailで設定するようにしました
mail.backend: 'smtp'
mail.host: 'smtp.gmail.com'
mail.port: 587
mail.username: 'example@gmail.com'
mail.password: 'パスワード。これは二段階認証用のパスワードなので事前に取得すること'
mail.use-tls: true
mail.from: 'example@gmail.com'
まとめ
WEBサーバ側の設定はSentryのドキュメントにいろいろあるので今回は割愛します