構文
newrelic.agent.profile_trace(name=None, group=None, label=None, params=None, depth=3)
関数のトレース名に追加の属性を追加します。
説明
profile_trace
は、追加セグメントの形で トランザクショントレース に詳細を追加するために使用されます。 profile_trace
で報告されたすべてのコールは、 APM Databases ページ に表示されます。 profile_trace
は、 ProfileTraceWrapper
の 部分的な を返します。これは、プロファイラーへのコールの時間を計る関数のデコレーターとして使用できます。
アプリケーションでデコレーターを使用できない場合は、以下の呼び出し形式を使用することができます。ラッパー形式は, ProfileTraceWrapper
.デコレーターを使わずにラップされた関数を返すのに使えます.
これらの異なるコールフォーマットの用途についての説明は、 Different call formats を参照してください。通話例については、 例 をご覧ください。
重要
関数は、指定された関数呼び出しのスコープ内でのみ計測されます。関数 function_a
がトレースされ、それが function_b
を呼び出した場合、これは function_a
のスコープ内でのみ計測され、 function_b
が呼び出されたがトレースされていない他の場所では計測されません。
パラメータ
デコレーターのパラメータ
newrelic.agent.profile_trace(name=None, group=None, label=None, params=None, depth=3)
このコールには、以下のパラメータが含まれています。
パラメーター | 説明 |
---|---|
文字列 | オプションです。関数名を指定します。設定されていない場合は、キャプチャされた関数名がデフォルトとなります。 |
文字列 | オプションです。 省略された場合、グループはデフォルトで |
文字列 | オプションです。トランザクション・トレース内のセグメントにコールアウト形式のフラグを追加します。デフォルトは |
ディクト | オプションです。トランザクション・トレースのセグメントに追加するカスタム・パラメータ。 |
ディクト | 任意です。関数トレースの最大深度を表すパラメータです。デフォルトは3です。 |
ラッパーのパラメーター
newrelic.agent.ProfileTraceWrapper(wrapped, name=None, group=None, label=None, params=None, depth=3)
ラッパーのパラメータには、すべての パラメータ for profile_trace
と、 wrapped
パラメータが含まれます。
パラメーター | 説明 |
---|---|
機能 | 必要です。ラッピングされる機能 |
例
profile_trace
example
profile_trace
デコレーターの使用例です。
import newrelic.agent
@newrelic.agent.profile_trace()def some_function(): ...
ラッパーの例
ProfileTraceWrapperの使用例
:
import newrelic.agent
def another_function(): wrapped_function = newrelic.agent.ProfileTraceWrapper(some_function) ... wrapped_function() ...