flutter-observability について
Flutter の本番障害診断とテレメトリー管理を支援するスキルです。既存の計測と証拠を確認してから条件付きの対処案を示し、データ収集の最小化とプライバシー管理を重視します。
主な機能
- 01既存のテレメトリーとリリース経路を確認
- 02最小限の運用イベント契約を定義
- 03マスキング、同意、サンプリングに対応
- 04クライアント制御とバックエンド責務を区別
- 05エラー捕捉とエンドツーエンドの信号を検証
- 06関連する診断資料のみを参照
活用シーン
- 01Flutter の本番障害を調査し不足する証拠を特定
- 02安全なログ、トレース、エラー計測を計画
- 03リリース識別子、シンボル化スタック、マスキングを確認
- 04テレメトリーのオフライン、制限、停止時の動作をテスト
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ thienqo/ flutter-skills --skill flutter-observabilityインストール後、Claude Code で/flutter-observabilityを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
evals/cases.jsonreferences/error-and-crash-capture.mdlogging-tracing-privacy.mdvendor-and-verification.md詳細
Flutter のオブザーバビリティ
不要なユーザーデータを収集せずに、本番環境の障害を診断できるようにします。ユーザーから移行を求められない限り、既存の Sentry、Crashlytics、OpenTelemetry、Dynatrace、Datadog、またはその他のテレメトリスタックを維持してください。
事前確認
原因を診断したり変更を提案したりする前に、SDK の制約、エントリーポイント、フレーバー/環境、および既存のテレメトリと配信の構成全体を確認してください。これには、SDK の初期化、エラーフック、同意/プライバシーのルール、ネットワークとナビゲーションの計測、アイソレートの使用、難読化、シンボルの保持/アップロード、CI、リリースの識別情報が含まれます。ダッシュボードの症状だけから根本原因を推測しないでください。リポジトリやバックエンドの証拠を確認できない場合は、まだ必要な具体的な成果物とバックエンドの証拠を最初に示し、診断は未完了であることを明記したうえで、修正案は条件付きにしてください。具体的な診断上の質問またはインシデントから始め、デフォルトであらゆるイベントを計測しないでください。
小規模な運用イベントの契約を定義してください。安定したイベント名、重要度、タイムスタンプ、リリース/ビルド、環境、プラットフォーム、相関識別子、結果、意味のある場合は処理時間、および範囲を限定して秘匿化した属性を含めます。ユーザーコンテンツ、トークン、認証情報、決済データ、未加工のリクエスト/レスポンス本文をテレメトリに含めないでください。
すべての計測計画では、ガバナンスに関する次の5つの管理策を明示的に扱ってください。秘匿化、同意、サンプリング、バックエンドでの保持/アクセス、範囲を限定したオフラインバッファリングです。どの管理策がクライアントコードで適用され、どの管理策をバックエンドで確認する必要があるかを示してください。クライアントの設定だけで保持やアクセスが徹底されるかのように示してはいけません。
作業の振り分け
- フレームワーク、ルートアイソレート、子アイソレート、非同期エラーの捕捉については、エラーとクラッシュの捕捉を読んでください。
- 構造化ログ、パンくず、トレース、相関、サンプリング、秘匿化、同意については、ログ、トレーシング、プライバシーを読んでください。
- ベンダーの選定または維持、リリースメタデータ、シンボル、バッファリング、エンドツーエンドの実証については、ベンダーと検証を読んでください。
依頼に関連する参照のみを読み込んでください。
対応範囲
flutter-performanceはプロファイルモードでの測定と最適化の判断を担当します。本番環境のトレースから回帰やボトルネック候補が見つかることはありますが、それだけで最適化の効果が証明されるわけではありません。flutter-product-analyticsはファネル、アトリビューション、コンバージョン、実験、ビジネスイベントを担当します。運用テレメトリは、信頼性やインシデント診断に関する質問に答えるものです。ユーザージャーニーを計測する際は、この違いを明示し、分析イベントや UI トラッキングが運用契約に漏れ込まないようにしてください。flutter-networkingは HTTP の動作を担当します。このスキルでは、その周辺で安全な相関情報と結果シグナルを定義します。flutter-securityは広範なセキュリティレビューを担当します。このスキルでは、テレメトリの最小化、秘匿化、同意、保持への配慮、最小限の露出を徹底します。flutter-build-releaseは成果物とシンボルの生成を担当します。このスキルでは、リリース/ビルド識別子とシンボルのアップロードとの関連付けを検証します。
検証
正規化、秘匿化、サンプリング、同意、相関、アダプターの動作をテストしてください。本番環境以外のバックエンド/環境で、処理済みエラーと、必要な各クラスの制御された未処理エラーを発生させ、実際のダッシュボードまたはクエリ画面で、イベントがちょうど1回取り込まれること、想定どおりのリリース/ビルド/環境、使用可能なシンボル化済みスタック、安全な属性を確認してください。シークレットや許可されていない個人データが含まれていないことを確認してください。テレメトリがオフライン、レート制限中、または利用不能な場合の劣化動作も検証してください。
初期化がコンパイルできたことを理由に、オブザーバビリティが機能していると主張しないでください。エンドツーエンドで観測できたシグナル、単体テストのみで確認したシグナル、ベンダーまたはデバイスの制約で未確認の事項を明記してください。