error-detector について
error-detectorは、コード、実行時の挙動、ログに現れる欠陥パターンを扱う、開発・運用向けのエラー分析スキルです。静的・動的分析、監視、根本原因分析、予防策を整理し、調査やプロセス改善に役立てます。
主な機能
- 01静的コードとアンチパターンの分析
- 02実行時例外と性能の分析
- 03ログのエラーパターン検出
- 04根本原因分析と分類
- 05監視と予防策の提案
活用シーン
- 01コードのセキュリティや複雑度の確認
- 02例外ログや反復エラーの分析
- 03メモリリークや性能ボトルネックの調査
- 04エラー監視と予防の計画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ 404kidwiz/ claude-supercode-skills --skill error-detectorインストール後、Claude Code で/error-detectorを入力して読み込まれたか確認します。
詳細
エラー検出スキル
目的
ソフトウェアの欠陥の事前特定、コード分析、システム動作の監視を専門とする、エラー分析とパターン検出の知識を提供します。静的および動的分析の手法を通じて、ソフトウェアエラーを特定、分析し、その防止を支援します。
使用する場面
- 静的コード分析とアンチパターン検出を行う場合
- 実行時エラーと例外パターンを分析する場合
- メモリリークとパフォーマンスのボトルネックを検出する場合
- エラーログを監視および分析する場合
- コードパターンからセキュリティの脆弱性を特定する場合
- エラーを事前に防止するための分析を行う場合
概要
コード分析、ログ監視、システム動作分析を通じたエラー分析、パターン検出、ソフトウェアの欠陥の事前特定を専門とします。
エラー検出の方法論
静的分析
- コードパターンの認識
- アンチパターンの特定
- 複雑度分析
- セキュリティの脆弱性検出
- パフォーマンスのボトルネックの特定
動的分析
- 実行時エラーの監視
- 例外パターンの分析
- メモリリークの検出
- パフォーマンスのプロファイリング
- リソース使用状況の追跡
ログベースの分析
# Example patterns for error detection
grep -r "ERROR\|FATAL\|CRITICAL" logs/ --include="*.log" --include="*.txt"
grep -r "exception\|error\|failed" src/ --include="*.js" --include="*.py" --include="*.java"
grep -r "TODO\|FIXME\|HACK" src/ --include="*.*" --exclude-dir=node_modules
エラーのカテゴリとパターン
一般的なプログラミングエラー
- Null ポインター例外
- 配列インデックスの範囲外エラー
- 型変換エラー
- リソースリークの問題
- 並行処理の問題
ロジックエラー
- オフバイワンエラー
- 条件式の誤り
- ループの終了に関する問題
- 状態管理の問題
- データ検証の失敗
パフォーマンスエラー
- 非効率なアルゴリズム
- メモリ最適化の問題
- データベースクエリの問題
- ネットワークタイムアウトの処理
- リソースの競合
高度な検出手法
機械学習ベースの検出
- システム動作における異常検出
- エラーログのパターン認識
- 障害予測モデリング
- エラータイプの分類
- 根本原因の自動分析
統計分析
- エラー頻度の分布
- 障害の時系列分析
- コンポーネント間の相関分析
- 回帰テストの失敗パターン
- パフォーマンス低下の検出
コード複雑度の指標
- 循環的複雑度の分析
- 認知的複雑度の評価
- 保守性指数の計算
- 技術的負債の定量化
- コード重複の検出
エラー分析フレームワーク
根本原因分析(RCA)
- 5 Whys 手法
- フィッシュボーン図による分析
- 優先順位付けのためのパレート分析
- フォールトツリー分析
- 変更影響の評価
エラー分類システム
- 重大度の分類
- 優先度の割り当てフレームワーク
- 影響評価マトリックス
- 頻度に基づく優先順位付け
- ビジネスリスクの評価
パターン認識
- 繰り返し発生するエラーの特定
- エラーのクラスタリングアルゴリズム
- シーケンスパターンの分析
- 相関の検出
- 時間的パターンの分析
監視とアラート
リアルタイム監視
- システムヘルスダッシュボード
- エラー率の監視
- パフォーマンスしきい値のアラート
- ログの集約と分析
- インシデント対応の自動化
予測分析
- 障害予測モデル
- 早期警告システム
- トレンド分析と予測
- キャパシティプランニングのアラート
- 予防保守のスケジュール設定
ロギングのベストプラクティス
- 構造化ロギングの実装
- ログレベルの最適化
- 機密データの保護
- ローテーションポリシー
- ログの一元管理
エラー防止戦略
コード品質の向上
- ピアレビューのプロセス
- 自動テストの網羅率
- 静的分析ツールの統合
- コードスタイルの徹底
- ドキュメントの標準
開発プロセスの最適化
- テスト駆動開発(TDD)
- 継続的インテグレーションの実践
- デプロイパイプラインの自動化
- ロールバック手順
- フィーチャーフラグの実装
システム設計パターン
- サーキットブレーカーパターン
- リトライ機構
- グレースフルデグラデーション
- フォールバックシステム
- 冗長化の実装
エラー検出ツールと統合
静的解析ツール
- JavaScript/TypeScript 用の ESLint
- Python 用の Pylint
- 多言語解析用の SonarQube
- Java 用の Checkstyle
- C# 用の FxCop
動的モニタリングツール
- アプリケーションパフォーマンスモニタリング(APM)
- エラー追跡サービス(Sentry、Bugsnag)
- ログ管理システム(ELK スタック)
- 分散トレーシングツール
- インフラストラクチャモニタリング
カスタム検出スクリプト
- エラーパターンのマッチング
- 異常検知アルゴリズム
- 自動回帰テスト
- パフォーマンスベンチマーク
- データ検証チェック
エラーへの対応と解決
インシデント管理
- エラーのトリアージ手順
- エスカレーションプロトコル
- コミュニケーション用テンプレート
- 解決状況の追跡
- インシデント発生後のレビュー
自動復旧
- 自己修復メカニズム
- 自動再起動手順
- フェイルオーバーシステム
- データ復旧プロセス
- サービス復旧ワークフロー
ナレッジ管理
- エラー文書データベース
- ソリューションリポジトリ
- ベストプラクティスライブラリ
- トレーニング資料
- 教訓アーカイブ
特定のドメインに関する専門知識
Web アプリケーションのエラー
- HTTP エラーコードの分析
- JavaScript のランタイムエラー
- API の障害パターン
- データベース接続の問題
- フロントエンドのパフォーマンス問題
モバイルアプリケーションのエラー
- デバイス固有の問題
- ネットワーク接続の問題
- アプリストアでの却下パターン
- バッテリー使用量の最適化
- メモリ管理の問題
バックエンドシステムのエラー
- データベーストランザクションの失敗
- メッセージキュー処理のエラー
- 認証および認可の問題
- マイクロサービス間の通信問題
- リソース枯渇のケース
レポートと分析
エラーメトリクス
- 平均検出時間(MTTD)
- 平均解決時間(MTTR)
- エラー発生頻度の傾向
- 解決の有効性
- 予防措置の効果
品質ダッシュボード
- リアルタイムのエラーモニタリング
- 過去の傾向分析
- チームのパフォーマンス指標
- システムの健全性指標
- コンプライアンス状況の追跡
成果物
分析レポート
- 包括的なエラー分析
- 根本原因の特定
- 影響評価の文書
- 解決策の推奨事項
- 予防策
実装計画
- エラー検出システムの設計
- モニタリングの設定手順
- アラート設定ガイド
- 自動テストフレームワーク
- プロセス改善の推奨事項
トレーニング資料
- エラー処理のベストプラクティス
- トラブルシューティングガイド
- ツールの使用方法に関するドキュメント
- プロセスワークフロー図
- ナレッジベースの記事
例
例 1:E コマースプラットフォームのエラーモニタリング
シナリオ: トラフィックの多い E コマースサイトに、包括的なエラー追跡を導入します。
実装:
- エラー追跡: すべてのサービスに Sentry を統合
- ログ集約: 一元的なログ管理に ELK スタックを使用
- アラート: 重大なエラーに対応するため PagerDuty を統合
- ダッシュボード: エラーメトリクス用のカスタム Grafana ダッシュボード
結果:
- MTTD が数時間から数分に短縮
- 解決までの時間が 40% 短縮
- 新たな問題を事前に特定
例 2:モバイルアプリのクラッシュレポート
シナリオ: iOS および Android アプリケーションのクラッシュレポートを設定します。
アプローチ:
- クラッシュレポート: Firebase Crashlytics を統合
- シンボリケーション: 読みやすいスタックトレースを得るため、dSYM を自動アップロード
- パンくず: コンテキストを把握するため、ユーザー操作を追跡
- リリース追跡: クラッシュとアプリのバージョンを関連付け
追跡する主要なメトリクス:
- クラッシュしなかったユーザーの割合(目標:99.5%)
- デバイスおよび OS バージョン別のクラッシュ件数上位
- クラッシュなし率の傾向を含むセッションデータ
- ユーザーフィードバックとクラッシュの関連性
例 3:API ゲートウェイのエラー分析
シナリオ: SaaS プラットフォームの API ゲートウェイレベルで、エラーを監視・分析します。
監視の設定:
- リクエストのログ記録:すべての API リクエストをステータスコードとともに記録します
- レートの追跡:429 Too Many Requests のパターンを監視します
- レイテンシー分析:エンドポイントごとに P95、P99 のレイテンシーを追跡します
- 認証エラー:セキュリティ対策として、認証に失敗した試行を追跡します
アラートの設定:
- エラー率の急増(5 分間で 5% 超)
- レイテンシーの悪化(P95 で 1 秒超)
- 認証失敗(単一の IP から 1 分あたり 100 件超)
- サーキットブレーカーの状態変化
ベストプラクティス
エラー検出の設定
- 包括的なカバレッジ:重要な関数だけでなく、すべてのコードパスに計測機能を組み込みます
- コンテキストが豊富なデータ:ユーザー ID、リクエスト ID、環境の詳細を含めます
- 機密データの取り扱い:エラーを報告する前に、PII とシークレットを除去します
- サンプリング戦略:詳細なデータ収集とパフォーマンスへの影響のバランスを取ります
- タグ付け:フィルタリングと集計に、一貫性のあるタグ付けを使用します
アラート管理
- しきい値の調整:アラート疲れを軽減するため、感度を調整します
- エスカレーション経路:重大度ごとの明確な手順を定めます
- 営業時間:オンコール時と営業時間内で、異なる期待値を設定します
- アラート疲れの防止:関連するアラートを統合し、重複を避けます
- オンコールローテーション:明確な責任分担のもと、持続可能なスケジュールを組みます
メトリクスとレポート
- 主要なメトリクス:MTTD、MTTR、エラー率、解決率を追跡します
- トレンド分析:週次・月次で比較し、パターンを特定します
- SLA レポート:サービスレベル契約に対するエラーの影響を報告します
- チームダッシュボード:チームや役割ごとにカスタムビューを用意します
- 経営陣向けレポート:経営陣向けに概要をまとめます
エラー処理のベストプラクティス
- 防御的プログラミング:入力を検証し、エッジケースを処理します
- 適切な縮退:依存先に障害が発生した際のフォールバック機構を用意します
- エラーからの回復:指数バックオフを伴う自動再試行を行います
- ユーザーへの説明:エンドユーザーにわかりやすいエラーメッセージを表示します
- ログ記録:デバッグと監査証跡のために、包括的なログを記録します
継続的な改善
- インシデント後のレビュー:重大なエラーが発生するたびに、そこから学びます
- パターン分析:再発する問題を特定し、システム的な修正につなげます
- ナレッジベース:将来参照できるよう、エラーと解決策を記録します
- ツールの進化:検出ツールを定期的に評価し、更新します
- チームトレーニング:一貫したエラー処理の実践を徹底します
コメント
Markdown 対応