• English日本語한국어
  • ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

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

問題を作成する

insert_distributed_trace_headers (PythonエージェントAPI)

構文

newrelic.agent.insert_distributed_trace_headers(list_of_headers)

この方法は、分散トレース内のトランザクションを接続するためのヘッダーを挿入するために使用されます。

要件

Pythonエージェントのバージョン5.6.0.135以上。

Distributed Tracingが有効であること .

説明

このAPIは、 分散型トレースが有効になっている必要があります

この呼び出しとそのパートナー呼び出し accept_distributed_trace_headersの使用方法については、 「エージェント API で分散トレースを有効にする」を参照してください。

この呼び出しは、分散トレースを実装するために使用されます。これは、受信アプリケーションが accept_distributed_trace_headers メソッドを使用して読み取ることができるリストにヘッダーを挿入します。

パラメーター

パラメータ

説明

headers

リスト

必要。ヘッダーのリスト。このリストは呼び出しによって変更されます (ヘッダーは (header_name, header_value)の形式でリストに挿入されます)。

戻り値

Noneを返します。入力リストは、この関数の呼び出しによって更新されます。

重要

トレース内のスパンの適切な順序を維持するためには、ペイロードを送信するスパンのコンテキストでペイロードを生成する必要があります。

バックグラウンドタスク内での分散型トレースペイロードの作成

単一のバックグラウンド タスク内から 外部トレース を作成する際の insert_distributed_trace_headers の使用例:

@newrelic.agent.background_task()
def main(url):
with newrelic.agent.ExternalTrace('my_external_library', url, method='GET'):
# Generate the payload in the context of the ExternalTrace
# span that sends it
headers = []
newrelic.agent.insert_distributed_trace_headers(headers)
response = my_external_library._get(url, headers=headers)
data = _process_response(response)

外部トレースの中に分散型トレースペイロードを作成する

外部トレースの作成での insert_distributed_trace_headers の使用例:

def _bind_url(url, *args, **kwargs):
# _bind_url is called with the args and kwargs sent to the `get`
# method below
return url
@newrelic.agent.external_trace('my_external_library', _bind_url, method='GET')
def get(url):
headers = []
newrelic.agent.insert_distributed_trace_headers(headers)
return my_external_library._get(url, headers=headers)
Copyright © 2024 New Relic Inc.

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