V1.0.1の新機能
BugCapturer V1.0.1は強力な新機能を導入しました:自動技術診断コレクション。この機能は、バグレポートを送信する際にコンソールエラーと失敗したネットワークリクエストを自動的にキャプチャし、開発者にバグの再現コストを劇的に削減する正確な診断の手がかりを提供します。診断がなぜ重要か
バグを報告する際、最も価値のある情報は常に画面に表示されているとは限りません。多くの場合、本当の手がかりは以下に隠れています:- コンソールエラー: JavaScriptの例外、警告、エラーメッセージ
- 失敗したネットワークリクエスト: 4xx/5xxステータスコードを返すAPIコール
仕組み
コンソールエラー収集
「技術診断を含める」にチェックを入れてレポートを送信すると、BugCapturerは最大10件のエラーレベルのコンソールログを自動的にキャプチャします:- レベル: 常に「error」(警告や情報は収集しません)
- メッセージ: エラーメッセージのテキスト
- ソース: エラーが発生したファイル、行、列(例:
app.js:142:8)
ネットワークエラー収集
BugCapturerは最大5件の失敗したHTTPリクエスト(ステータスコード ≥ 400)もキャプチャします:- URL: リクエストURL(機密パラメータはサニタイズ済み)
- メソッド: GET、POST、PUT、DELETEなど
- ステータスコード: 404、500、403など
- ステータステキスト: 「Not Found」、「Internal Server Error」など
プライバシーファーストの設計
診断コレクションは3つのプライバシー原則に基づいて構築されています:1. URLサニタイズ
機密URLパラメータは自動的に*に置換されます:
token、key、secret、password、auth、access_token、refresh_token、api_key、private_key、credential
https://api.example.com/data?token=abc123&user=johnはhttps://api.example.com/data?token=*&user=johnになります。
2. ユーザーのオプトイン
「技術診断を含める」チェックボックスはデフォルトでチェックされていますが、ユーザーはいつでもオプトアウトできます。チェックを外すと、診断データは収集されません。3. 一回限りの収集
診断はレポートを送信する瞬間にのみ収集されます。バックグラウンドモニタリングも、継続的なロギングも、データの蓄積もありません。あなたが見ているものが正確に送信されます。技術的な実装詳細
コンソールエラーキャプチャ
BugCapturerは拡張機能のアクティベーション時にブラウザのconsole.errorメソッドにフックします。エラーを最大10エントリのリングバッファに格納し、最新のエラーのみを保持します。
ネットワークエラーキャプチャ
chrome.webRequest APIを使用して、BugCapturerは完了したネットワークリクエストを監視し、ステータスコード ≥ 400をフィルタリングします。サニタイズされたURL、メソッド、ステータス情報のみが保存され — リクエストやレスポンスのボディは保存されません。
データフロー
開発者が見るもの
開発者が診断付きのBugCapturerレポートを受け取ると、メール本文には以下が含まれます: コンソールエラーセクション:- 各エラーのメッセージとソース位置
- 最大10エントリ、最新が最初
- 各失敗リクエストのサニタイズ済みURL、メソッド、ステータス
- 最大5エントリ、最新が最初
インパクト
ユーザーからの初期フィードバック:- バグレポートの「さらに情報が必要」のやり取りが60%削減
- 開発者がすぐにデバッグを開始可能 — 再現が不要に
- より正確なバグレポートがより速い修正につながる