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

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

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

問題を作成する

accept_distributed_trace_headers (PythonエージェントAPI)

構文

newrelic.agent.accept_distributed_trace_headers(headers, transport_type='HTTP')

このメソッドは、分散型トレース内のトランザクションを接続するために使用されるヘッダーを受け入れるために使用されます。

要件

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

Distributed Tracingが有効であること .

説明

この呼び出しの使用方法のコンテキストについては、最初にそのパートナー API 呼び出し insert_distributed_trace_headersエージェント API で分散トレースを有効にするをお読みください。

この呼び出しは、 insert_distributed_trace_headersによって生成された分散トレース ヘッダーを解析することにより、トランザクションをリンクするために使用されます。

パラメーター

パラメータ

説明

headers

辞書またはリスト

必要。受け入れられるヘッダー。(header_nameheader_value) の iterable または辞書として提供される場合があります。

transport_type

ストリング

オプション。デフォルトは HTTPです。このペイロードを送信したトランスポートのタイプ。 HTTPHTTPSKafkaJMSIronMQAMQPQueue、または Otherのいずれかでなければなりません。

戻り値

成功すると、 Trueを返します。

失敗した場合は Falseを返します。ペイロードの受け入れは、いくつかの理由で失敗する可能性があります。

  • 現在のトランザクションは有効ではありません。
  • Acceptがトランザクションの範囲外で呼び出された。
  • ペイロードは空です。
  • Distributed Tracing is not enabled.
  • accept_distributed_trace_* ペイロードが作成される前ではなく、作成された後に呼び出されました。
  • accept_distributed_trace_* 1 つのトランザクションで複数回呼び出されました。
  • ペイロードを解析できませんでした。
  • ペイロードは、信頼できないアカウントから送信されたものです。

バックグラウンドタスク内での分散型トレースペイロードの受け入れ

バックグラウンド タスクで accept_distributed_trace_payload を使用する例:

@newrelic.agent.background_task()
def handle(request):
newrelic.agent.accept_distributed_trace_headers(request.headers)
_do_some_work()

キューからの消費

accept_distributed_trace_payload を使用して各メッセージの バックグラウンド タスク を作成する例:

import newrelic.agent
newrelic.agent.initialize('newrelic.ini')
application = newrelic.agent.register_application(timeout=10.0)
def main(queue):
for message in queue.consume():
with newrelic.agent.BackgroundTask(application, 'Queue Consume'):
newrelic.agent.accept_distributed_trace_headers(message.headers,
transport_type='Queue')
_process_message(message)
Copyright © 2024 New Relic Inc.

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