これまで説明してきたDスクリプトでは、モジュール名や関数名といった単位で採取対象を特定していました。 今回は、もっと複雑な採取対象の絞り込みを可能とする、前提条件の記述方法について説明したいと思います。 特定関数の呼び出し契機での絞り込み 本連載でこれまで例示してきたDスクリプトは、特定の関数から引数や戻り値を採取する一部の例外を除いては、基本的に全ての関数フローを採取するものでした。 しかし、必ずしも全ての関数フローの採取が必要なケースばかりではありません。むしろ全ての関数フローを採取した場合、以下のようなデメリットが生じます。 採取結果の中から調査対象を特定するのが難しくなる 採取結果の記録に必要なディスク領域が増加する このようなデメリットを無くすためには、採取範囲の絞り込みが必要です。 たとえば、リスト1のプログラム(show_nesting)を想定してみましょう。 リスト1 関数