Oracle Solaris Studio 12.2: パフォーマンスアナライザ

動作中のプロセスからのトレースデータの収集

いずれかの種類のトレースデータを収集するには、プログラムを実行する前にコレクタライブラリ libcollector.so をプリロードする必要があります。ヒープトレースデータまたは同期待ちトレースデータを収集するには、er_heap.so および er_sync.so もそれぞれプリロードする必要があります。これらのライブラリは、データ収集を実行するための実際の関数へのラッパーを提供します。また、コレクタは、ほかのシステムライブラリの呼び出しにもラッパー関数を追加し、それによって完全なパフォーマンスデータを確保できます。ライブラリをプリロードしないと、これらのラッパー関数を挿入できません。コレクタがシステムライブラリ関数に割り込む方法の詳細については、「システムライブラリの使用」を参照してください。

libcollector.so をプリロードするには、次の表に示すように、環境変数を使用してライブラリ名とライブラリへのパスを設定する必要があります。LD_PRELOAD 環境変数を使用して、ライブラリ名を設定します。ライブラリへのパスを設定するには、LD_LIBRARY_PATHLD_LIBRARY_PATH_32、または LD_LIBRARY_PATH_64 環境変数を使用しますLD_LIBRARY_PATH は、_32 および _64 バリアントが定義されていない場合に使用されます。これらの環境変数をすでに定義している場合は、新しい値を追加してください。

表 3–2 libcollector.soer_sync.so、および er_heap.so をプリロードするための環境変数設定

環境変数 

値 

LD_PRELOAD

libcollector.so

LD_PRELOAD

er_heap.so

LD_PRELOAD

er_sync.so

LD_LIBRARY_PATH

/opt/solstudio12.2/prod/lib/dbxruntime

LD_LIBRARY_PATH_32

/opt/solstudio12.2/prod/lib/dbxruntime

LD_LIBRARY_PATH_64

/opt/solstudio12.2/prod/lib/v9/dbxruntime

LD_LIBRARY_PATH_64

/opt/solstudio12.2/prod/lib/amd64/dbxruntime

Oracle Solaris Studio ソフトウェアが /opt/solstudio12.2 にインストールされていない場合は、システム管理者に正しいパスを確認してください。LD_PRELOADにフルパスを設定することもできますが、そのようにすると、SPARC V9 の 64 ビットアーキテクチャーを使用するときに問題が発生する可能性があります。


注 –

実行が終了したら、LD_PRELOADLD_LIBRARY_PATH の設定を削除し、同じシェルから起動されるほかのプログラムが設定の影響を受けないようにしてください。