• /
  • EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

external_trace (PythonエージェントAPI)

構文

newrelic.agent.external_trace(library, url, method=None)

外部サービスへの呼び出しをトランザクション・トレース・セグメントとして報告する。

説明

external_trace 追加セグメントの形式でトランザクション追跡に詳細を追加するために使用されます。external_traceで報告された呼び出しは、APM の外部タブに表示されます。external_traceは、外部サービスを呼び出す関数のデコレータとして使用できるExternalTraceWrapper部分を返します。

external_traceデコレーターは、エージェント バージョン 2.102.0.85 以降のジェネレーターとコルーチンで使用できます。これらのオブジェクトのタイミングは、消費が開始されたときに始まり、オブジェクトが使い果たされるか範囲外になると終了します。これは、メトリックがジェネレータまたはコルーチン オブジェクト自体の作成にかかった時間を表す以前のバージョンからの変更です。

アプリケーションでデコレーターを使用できない場合は、これらの他の呼び出しフォーマットのいずれかを使用することができます。

  • The context manager

    : コンテキスト マネージャー フォームはExternalTraceです。

  • The wrapper

    : ラッパーフォームはExternalTraceWrapperです。 デコレータを使用せずにラップされた関数を返すために使用できます。

  • The path-based wrapper

    : パスベースのラッパー形式はwrap_external_traceです。 これは、モンキーパッチングを通じて、指定されたオブジェクトにExternalTraceWrapperを適用します。 これは、デコレータと同じ引数に加えて、追加のmoduleobject_path引数を受け取ります。

これらの異なるコールフォーマットの用途についての説明は、 Different call formats を参照してください。通話例については、 をご覧ください。

パラメーター

external_traceのパラメータ

newrelic.agent.external_trace(library, url, method=None)

external_traceデコレータは次のパラメータを使用します:

パラメータ

説明

library

文字列 または 機能

必須項目です。使用している外部ライブラリの名前(またはタイプ)。定義した文字列か、それを返す関数を渡します。

url

文字列 または 機能

必須です。ライブラリーコールによって要求されたURLです。それを定義する文字列か、それを返す関数を渡します。

method

文字列 または 機能

オプション。行われる呼び出しのタイプを定義するメソッド。これらは通常、 getpostput 、またはdeleteです。

ExternalTraceのパラメータ

newrelic.agent.ExternalTrace(library, url, method=None)

ExternalTraceコンテキスト マネージャーは、 external_traceによって取得されたすべてのパラメーターを取得します。

ExternalTraceWrapperのパラメータ

newrelic.agent.ExternalTraceWrapper(wrapped, library, url, method=None)

ExternalTraceWrapperは、最初のwrappedパラメータに加えて、デコレータと同じパラメータをすべて受け取ります。

パラメータ

説明

wrapped

機能

必要です。外部時刻に帰属させる外部呼出機能です。

wrap_external_traceのパラメータ

newrelic.agent.wrap_external_trace(module, object_path, library, url, method=None)

wrap_external_traceは、 moduleパラメータとobject_pathパラメータに加えて、デコレータが行うすべてのパラメータを受け取ります。

パラメータ

説明

module

物体

必要です。ラップされるオブジェクトを含むモジュール。

object_path

ストリング

必要です。ラップされるオブジェクトへのパス。

戻り値

external_trace ExternalTraceWrapper()パーシャルを返します。

external_traceの例

external_traceの使用例:

@external_trace('library', 'http://example.com', 'get')
def foo():
pass

ネイティブ コルーチンでexternal_traceを使用する例:

@external_trace('library', 'http://example.com', 'get')
async def foo():
pass

ExternalTraceの例

ExternalTraceコンテキスト マネージャーの使用例:

def fetch_example_dot_com():
with ExternalTrace('library', 'http://example.com', 'get'):
pass

ExternalTraceWrapperの例

ExternalTraceWrapperの使用例:

wrapped_fetch_example_dot_com = newrelic.agent.ExternalTraceWrapper(fetch_example_dot_com, 'library', 'http://example.com', 'get')
response = wrapped_fetch_example_dot_com()

wrap_external_traceの例

wrap_external_traceパスベースのラッパーの使用例:

wrap_external_trace('module', 'Foo.bar', 'library', 'http://example.com', 'get')
Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.