私はこの質問に興味があり、いくつかのことを試しました。
通常、 JProfilerやVisualVMなどの製品を使用して、CPU のプロファイリングを実行し、調査中のメソッドを検索できます。
また、JETM、CodaHale Metrics、またはNetflix Servoなどのライブラリを使用して、アプリケーションに測定ポイントを導入することもできます。ただし、このアプローチの問題は、ライブラリがアプリケーション内に測定ポイントを導入することを期待しているため、サードパーティのライブラリでは機能しない可能性があることです。導入するコードの量が最小限であるため、これは私にとって最も興味深いアプローチです。
最後になりましたが、 Spring AOPなどの AOP ベースのアプローチを使用して、サードパーティ ライブラリの特定の実行を測定することもできます。このプロジェクトは AOP をまったく使用していないため、この測定のみを目的として新しい依存関係を導入したくありません。
たとえば、私の場合、JCL Logとlog4j Logger実装の混合などのロギング メソッドの実行を測定したいと考えています。Maven Surefire でJUnit RunListenerを使用し、私が持っているすべての単体テストでこの実行を測定したいと思います。
それで、何かアイデアはありますか?提案をいただければ幸いです。