skillup

技術ブログ

プログラミング全般

エラーレポーティングサービス Sentryについて

投稿日:2019年3月17日 更新日:

リリースした後、運用段階に入ると定期的にバグ報告が上がってきます。

本来はリリース前に検収テストをすべきなんですが、そんな余裕ないことも多い(汗)

で、そんな時に大事なのが

  1. エラーを気づけること
  2. 対処法をあらかじめ考えておくこと

の2点でしょうか。

エラーを気づけること

バッチの時もそうですが、以下にエラーに気づけるかが大事ですね。予算に余裕がなかったり、プロジェクト自体が実験的だったりするとお客さんから報告を受けて直すってことが多いですが、そうならずに対処できるのが理想です。

そのために必要なのが、以下のようなことでしょうか。

ログの管理

実際に運用始めるととんでもない量のログが出るので、どれくらいの量をだすのか、ローテートはどうするか、原因追求速度をあげるためにもレベル管理分けはどの程度するか、などをしっかり考えて起きましょう。

例外処理

基本、プログラムってどこかでこけることを前提に組んだ方がいいですね。自分も自分のプログラムも信用しない人の方がうまくいくと思います(汗)

プログラム側でしっかり組むのは当然として(フレームワークだと自動的に例外が出るようにはなっていますが・・・)

もう一つ大事なことは、エラー検知サービスの活用です。

Sentry

https://sentry.io

これはエラーが起こった時に自動的にエラーを記録、通知してくれるサービスです。これがあると一々ログを見なくとも詳細なレポートを画面に出してくれるので、どこでエラーが起こったかがすぐわかります。

また通知してくれるので、すぐに気づけます(土日にくると嫌ですが・・・・(汗))

上記URLから登録して、Exceptionを発生させればエラーを記録してくれます。

サンプルコードは下記を参考に。

https://github.com/umanari145/phptips

対処法をあらかじめ考えておくこと

サービスが運用する前に考えておくべきことですが、下記のような対策をするといいのではと思いました。

  1. 作業重要度、優先度の振り分け
  2. メンテ時間を月1などで持たせてもらい、ユーザーがさわれない時間を作る
  3. データが一番大事なので、復旧作業手順などをあらかじめ考えておく
  4. 最悪、サービスが止まった時の運用方法を考慮しておく

-プログラミング全般
-, , ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

シェルスクリプト ファイル読み込み・switchなど

以前のエントリーに引き続き、シェルスクリプトでログを解析する処理があってそこで覚えたことなどをまとめておきます。 Contents1 ファイル読み込み2 switch文2.1 基本パターン2.2 条件 …

no image

シェル基礎2

シェルコマンド使い始めて数年たちますが、いまだに知らないことはおおいですし、早く知っとけばよかった的なこともたくさんあります。 そんな小ネタ集を alias よく使うコマンドを別名で登録することができ …

no image

小〜中規模程度のWEBアプリ作成で気をつけるべきこと

初見の処理系(ライブラリ操作)などは休日などで最小パターンを確認しておくこと。実務で何時間も悩むと非常にストレスがたまる テーブル設計命。あとで終えるようにトレースができるような値を入れておくこと。 …

no image

トランザクション、ロールバックに関する考察

今までトランザクションの単位は基本的に処理の開始から終了までを範囲にすることが多かったのですが(ループがある場合はループ全体ではなく、1ループをトランザクションとみなします)、複数の処理が絡む場合、不 …

no image

Eclipseでのソースフォーマットでの自動改行を防ぐ

小ネタ。Eclipseのソースフォーマッタはディフォルトでは一定の字数で改行されしまい、大変見にくくなったりします。 またHTMLなどでは改行してほしいタグが改行されないなど思ったとおりに動いてくれま …

アーカイブ