2012-04-05 15 views
8

私のErlangアプリケーションの プロセス間の作業分布については、もっと詳しく調べようとしています。 プロセスによって実行される削減の数は、とりわけ、私が興味を持っているものの1つです。Erlang Processes削減数

私は、終了時に プロセスの削減数を読み込む手段を探しています。プロセスがまだ実行されている間に この種の情報を取得するのはかなり簡単ですが、終了する直前(または直後)に を取得することは別の話です。私は 文書の中で特にdbg:* functions、 を見てきましたが、残念ながら無駄です。ほとんどの場合、私が通知を受けるたびに、プロセスの終了については がありますので、何かを行うにはすでに遅すぎます

プロセス終了前にこれらの値を読み取るようにアプリケーション全体のコードを変更すると、 が実行できなくなります。 VMコードをダイビングして計測する以外の方法がありますか?

おかげ

答えて

1

私はあなたがプロセスのためにreductionsを得ることができるとは思わないが、あなたはrunningtimestampオプションでerlang:trace/3を行うことによって、時間ベースの作業の分布を得ることができます。それは私が思っているものを得るでしょう。当然のことながら、データを収集し、後処理またはジャストインタイム処理を行う必要があります。

私もまあ

+0

など終了、すなわち開始、必要なメタ情報を取得するためにトレースにオプションprocsを使用することになり、私はまさにそれをやってしまった...それは、トレース/ 3のは残念です、結果としてdbg:このような詳細なオプションはありません。 – Francesquini