mcpField
1
162-java-profiling-analyze

162-java-profiling-analyze

github.com/jabrena開発456355 回インストール1 日前に更新
リポジトリ

162-java-profiling-analyze について

性能データを評価する Java 開発者向けの分析スキルです。負荷の妥当性を確認し、複数のプロファイルを照合してボトルネックを優先順位付けし、根拠と制約をレポートに記録します。

主な機能

  1. 01プロファイルファイルの一覧化
  2. 02負荷条件の妥当性確認
  3. 03メモリ・CPU・スレッドの分析
  4. 04複数ファイルの照合
  5. 05影響度と工数による優先順位付け
  6. 06根拠と制約の記録

活用シーン

  1. 01Java の CPU ホットスポット調査
  2. 02メモリリークと GC 負荷の確認
  3. 03スレッド競合やデッドロックの診断

インストール

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

$npx skills add https://github.com/jabrena/plinth --skill 162-java-profiling-analyze

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

同梱ファイルreferences/162-java-profiling-analyze.md

詳細

Java プロファイリングのワークフロー/ステップ 2/プロファイリングデータの分析

プロファイリング結果(フレームグラフ、JFR、GC ログ、スレッドダンプ)を体系的に分析します。結果を一覧化し、問題(メモリーリーク、CPU ホットスポット、スレッド関連の問題)を特定し、標準テンプレート(profiling-problem-analysis-YYYYMMDD.md、profiling-solutions-YYYYMMDD.md)を使用して調査結果を記録し、影響度/工数スコアを使用して優先順位を付け、複数のプロファイリングファイルを相互に照合して検証します。

このスキルで扱う内容

  • 一覧化:profiler/results/ をスキャンして allocation-flamegraph、heatmap-cpu、memory-leak、.jfr、.log、*.txt を確認
  • 問題の特定:メモリー(リーク、過剰な割り当て、GC の負荷)、パフォーマンス(CPU ホットスポット、ブロッキング)、スレッド(デッドロック、競合、プールの飽和)
  • ドキュメント作成:docs/profiling-problem-analysis-YYYYMMDD.md、docs/profiling-solutions-YYYYMMDD.md
  • 優先順位付け:影響度(1~5)/工数(1~5)。優先度の高い項目から対応
  • ツール:async-profiler、JFR、JProfiler/YourKit、GCViewer、フレームグラフ、ヒートマップ

対象範囲: プロファイリング結果が現実的な負荷シナリオを反映していることを検証します。複数のファイルを相互に照合します。定量的な指標を含めます。

制約

分析の前に、プロファイリング結果が現実的な負荷を反映していることを検証します。前提条件と制限事項を記録します。複数のファイルを相互に照合します。

  • 検証:分析の前に、プロファイリング結果が現実的な負荷シナリオを反映していることを確認します
  • 記録:分析レポートに前提条件と制限事項を記録します
  • 相互照合:複数のプロファイリングファイルを使用して調査結果を検証します
  • 適用前:問題分析と解決策のテンプレートに関するリファレンスを読みます
  • エッジケース:依頼の範囲が曖昧な場合は、変更を適用する前に作業を中断し、確認の質問をします
  • エッジケース:必要な入力、ファイル、またはツールが不足している場合は、不足しているものを報告し、セットアップ手順の案内を続けるか確認します

このスキルを使用する場面

  • JFR プロファイルを分析する
  • プロファイルを分析する
  • パフォーマンスを分析する
  • メモリーを分析する
  • スレッドを分析する
  • GC を分析する
  • プロファイリングを分析する
  • 影響度に基づいて Java プロファイリングのボトルネックに優先順位を付ける
  • パフォーマンス分析

ワークフロー

  1. 分析リファレンスを読み、入力を一覧化する

references/162-java-profiling-analyze.md を読み、profiler/results/ 内のプロファイリング成果物を一覧化します。

  1. データ品質と前提条件を検証する

データセットが現実的な負荷条件を反映していることを確認し、結論を導く前に前提条件と制限事項を記録します。

  1. ボトルネックを特定して優先順位を付ける

メモリー/CPU/スレッドに関する調査結果を分析し、複数のファイルを相互に照合して、影響度/工数に基づいて問題に優先順位を付けます。

  1. 調査結果と解決策の候補を記録する

定量的な根拠を添えて、docs/profiling-problem-analysis-YYYYMMDD.md と docs/profiling-solutions-YYYYMMDD.md を作成します。

リファレンス

詳細なガイダンス、例、制約については、references/162-java-profiling-analyze.md を参照してください。

コメント