mcpField
M
magento-issue-debugger

magento-issue-debugger

github.com/maxnorm開発31256 回インストール40 週間前に更新
リポジトリ

magento-issue-debugger について

Magento 2 の開発者や運用担当者向けのトラブルシューティングスキルです。問題の再現や証拠の収集から、根本原因の特定と修正の検証までを体系的に案内します。性能、機能、連携、システムの問題を扱います。

主な機能

  1. 01再現手順の策定と環境の記録
  2. 02ログ、設定、性能データの収集
  3. 03コード、データベース、モジュールの分析
  4. 04切り分けテストと根本原因の特定
  5. 05修正、テスト、ロールバックの計画

活用シーン

  1. 01本番環境のエラー調査
  2. 02ページやデータベースの性能分析
  3. 03キャッシュ、インデックス、モジュール競合の特定
  4. 04決済、API、システム障害の診断

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/maxnorm/magento2-agent-skills --skill magento-issue-debugger

インストール後、Claude Code で/magento-issue-debuggerを入力して読み込まれたか確認します。

詳細

Magento 2 問題デバッガー

Magento スタックのすべての層にわたる複雑な技術的問題を体系的に調査、診断、解決する専門家。

使用する場面

  • 本番環境の問題をデバッグする
  • バグやエラーを調査する
  • パフォーマンス問題を分析する
  • システム障害を解決する
  • 連携の問題をトラブルシューティングする
  • キャッシュやインデックスの問題を診断する

デバッグ手法

体系的な調査
  • 問題の評価: 問題を再現するための一貫した手順を確立する
  • 環境の文書化: システム構成と環境の詳細を記録する
  • 影響分析: 範囲、頻度、ビジネスへの影響を判断する
  • タイムライン分析: 問題がいつ始まり、何が変わったのかを特定する
  • 切り分けテスト: モジュールや機能を無効化して問題を切り分ける
根本原因分析
  • 仮説検証: 理論を立てて体系的に検証する
  • データ収集: ログ、構成、パフォーマンス指標を収集する
  • コード分析: 最近のコード変更と関連モジュールを確認する
  • データベース調査: データ破損やマイグレーションの問題を確認する
  • 深掘り: 症状を対処するのではなく、根本的な原因を深く掘り下げて見つける

問題調査プロセス

1. 問題の評価
  • 問題の再現: 再現するための一貫した手順を確立する
  • 環境の文書化: システム構成を記録する
  • 影響分析: 範囲とビジネスへの影響を判断する
  • タイムライン分析: 問題がいつ始まったのかを特定する
  • ユーザーへの影響: 問題が各種ユーザーにどのように影響するかを理解する
2. データ収集
  • ログの収集: すべてのシステムコンポーネントから関連ログを収集する
    • Magento ログ: var/log/
    • PHP エラーログ
    • Web サーバーログ (Apache/Nginx)
    • データベースのスロークエリログ
  • 構成の確認: モジュール構成とシステム設定を確認する
  • コード分析: 最近のコード変更と関連モジュールを確認する
  • データベース調査: データ破損やマイグレーションの問題を確認する
  • パフォーマンス指標: タイミングとリソース使用量のデータを収集する
3. 体系的なデバッグ
  • デバッグモード: 詳細なエラー報告のために Magento のデバッグモードを有効にする
    bin/magento deploy:mode:set developer
    
  • Xdebug 連携: 複雑なロジックの問題に対してステップ実行デバッグを使用する
  • プロファイリングツール: パフォーマンス問題には Blackfire、XHProf、または同様のツールを使用する
  • データベースのデバッグ: クエリログを有効にしてデータベースのやり取りを分析する
  • 切り分けテスト: モジュールを無効化して問題を切り分ける
4. 解決策の実装
  • 修正の開発: 根本原因分析に基づいて適切な修正を実装する
  • テスト戦略: 検証のための包括的なテスト計画を策定する
  • ロールバック計画: 本番環境の修正に対するロールバック手順を準備する
  • 文書化: 調査結果、解決策、再発防止策を文書化する
  • 監視の設定: 問題の再発を防ぐための監視を実装する

よくある問題のカテゴリ

パフォーマンス問題
  • ページ読み込みの遅さ: フロントエンドとバックエンド処理のボトルネックを特定する
  • データベースパフォーマンス: クエリ、インデックス、データベース構成を最適化する
  • メモリ問題: メモリリークとメモリ使用量の増大をデバッグする
  • キャッシュ問題: キャッシュの無効化とキャッシュのウォームアップの問題を解決する
  • フロントエンドパフォーマンス: JavaScript エラーと CSS レンダリングの問題をデバッグする
機能のバグ
  • チェックアウトの問題: 決済処理、配送、注文確定をデバッグする
  • 商品表示: カタログ、検索、商品ページの問題を解決する
  • 管理パネルの問題: バックエンド機能と構成の問題を修正する
  • 拡張機能の競合: モジュールの互換性の問題を特定して解決する
  • API の問題: REST および GraphQL API エンドポイントをデバッグする
システムレベルの問題
  • インストールの問題: セットアップとアップグレードの問題を解決します
  • 設定エラー: システムおよびモジュールの設定問題を修正します
  • ファイル権限の問題: ファイルシステムとディレクトリの権限問題を解決します
  • Cron ジョブの失敗: スケジュールされたタスクの実行問題をデバッグします
  • メールの問題: メール送信とテンプレートの問題を解決します
セキュリティの問題
  • アクセス制御: 権限と ACL の問題をデバッグします
  • 認証の問題: ログインとセッションの問題を解決します
  • CSRF の失敗: フォームキーの検証問題をデバッグします
  • SQL インジェクション: 脆弱なクエリを特定して修正します
  • XSS 脆弱性: 出力エスケープの問題を修正します

デバッグツールとテクニック

ログ分析
  • Magento ログ: var/log/exception.log、var/log/system.log
  • PHP エラーログ: PHP-FPM または Apache のエラーログを確認します
  • Web サーバーログ: Apache/Nginx のアクセスログとエラーログを分析します
  • データベースログ: スロークエリログとデータベースエラーを確認します
  • カスタムログ: 特定の問題に向けたカスタムログを実装します
パフォーマンスプロファイリング
  • Blackfire: パフォーマンスのプロファイリングと最適化
  • XHProf: PHP プロファイリングツール
  • New Relic: APM モニタリング
  • データベースプロファイリング: クエリログを有効化します
  • フロントエンドプロファイリング: ブラウザの DevTools によるパフォーマンス分析
デバッグコマンド
# Enable developer mode
bin/magento deploy:mode:set developer

# Clear cache
bin/magento cache:clean
bin/magento cache:flush

# Reindex
bin/magento indexer:reindex

# Check compilation
bin/magento setup:di:compile

# Check static content
bin/magento setup:static-content:deploy

# Check database
bin/magento setup:db:status
コードのデバッグ
  • Xdebug: ステップ実行デバッグ
  • var_dump/die: 簡易デバッグ(本番環境の前に削除してください)
  • Magento Logger: ログ記録には \Psr\Log\LoggerInterface を使用します
  • 例外処理: 適切な例外のキャッチとログ記録
  • エラーレポート: エラーレポートのレベルを設定します

ベストプラクティス

予防
  • 包括的なテスト: 単体テスト、統合テスト、機能テストを作成します
  • コードレビュー: 問題を早期に発見するための定期的なコードレビュー
  • モニタリング: モニタリングとアラートを実装します
  • ログ記録: 包括的なログ戦略
  • ドキュメント: 明確なドキュメントを維持します
解決
  • 根本原因: 常に症状ではなく根本原因を修正します
  • テスト: デプロイ前に修正を徹底的にテストします
  • ドキュメント: 問題と解決策を文書化します
  • コミュニケーション: ステークホルダーとコミュニケーションを取ります
  • モニタリング: 修正のデプロイ後にモニタリングします

参考資料

根本原因を特定し、恒久的な解決策を実装するために、体系的な調査に焦点を当ててください。

コメント