Pythonエージェント では、構成オプションを使用してデフォルトのエージェント動作エージェントを変更できます。
唯一必要な Python エージェント構成設定はライセンスキー です。 ライセンスキーは、エージェントがアプリケーション データを報告するアカウントを識別します。 アプリケーションをホストする方法に応じて、ライセンスキーは設定ファイルまたは環境変数を介して提供できます。
構成方法と優先順位 Pythonエージェントを構成する主な方法は、標準のインストールプロセス の一部として生成される構成ファイル を使用することです。UIでサーバー側の構成を 使用するか、環境変数 を使用して、限られた数の構成オプションを設定することもできます。WSGIリクエスト環境ディクショナリ を使用して設定を渡すことにより、リクエストごとにいくつかの設定を指定することもできます。
Pythonエージェントは、次の優先順位に従って構成されます。
Python エージェントを使用すると、リクエストごとのオプションがサーバー側の設定をオーバーライドします。 有効にすると、サーバー側の値が空白のままであっても、サーバー側の構成はエージェント構成ファイル内のall に対応する値をオーバーライドします。 エージェント構成ファイルは環境変数をオーバーライドします。 環境変数はエージェントのデフォルトをオーバーライドします。
各構成方法の詳細な説明は次のとおりです。
エージェント構成ファイル 通常、Pythonエージェントは、エージェントのホストシステム上のローカル構成ファイルから構成します。次のいずれかの方法を使用して、起動時に構成ファイルへのパスを指定します。
newrelic.agent.initialize()
を呼び出すときは、最初の引数として構成ファイルへのパスを指定します。
また
NEW_RELIC_CONFIG_FILE
環境変数を設定します。newrelic-admin
ラッパースクリプトを使用する場合、ラッパースクリプトはエージェントを自動的に呼び出すため、環境変数を使用する必要があります。
エージェントは 2 種類の設定ファイルをサポートします。エージェント v10.2.0 以前では.ini
構文を使用する必要がありますが、Python バージョン 3.11 以降で実行されるエージェント バージョン v10.3.0 以降では.toml
ファイルもサポートされます。
`.ini` 設定ファイルの形式 設定ファイルは、Microsoft Windows .ini
ファイルに似た構造を使用します。 詳細については、Python ConfigParser モジュールのファイル形式のドキュメント を参照してください。
基本的な構造は次のようになります。
license_key = <license key>
app_name = Python Application
`.toml` 設定ファイル形式 ヒント Python 3.11 以降、設定の新しい.toml
構文が標準ライブラリ に追加されました。 エージェント バージョン10.3.0
では、この新しい形式の使用のサポートが追加されました。
設定ファイルは Tom's Obvious Minimal Language .toml
ファイルを使用します。 詳細については、公式のファイル形式のドキュメント を参照してください。
.toml
構文を使用するには、設定ファイルの名前が構文タイプを示す.toml
で終わる必要があります。 標準のpyproject.toml
、他のライブラリの設定と一緒に使用することも、 newrelic.toml
のようなより具体的なファイルを使用することもできます。
基本的な構造は次のようになります。
license_key = <license key>
app_name = Python Application
ヒント サンプル構成ファイルは、Pythonエージェントにnewrelic/newrelic.ini
として含まれています。generate-config
コマンドを使用してnewrelic-admin
スクリプトから生成することも、ダウンロードリポジトリ からコピーをダウンロードすることもできます。
サーバー側の構成 サーバーサイド設定を使用すると、 New Relic UI で特定の設定を構成できます。 これにより、エージェントが複数のホストで実行されている場合でも、すべてのエージェントに変更が自動的に適用されます。 可能な場合、このドキュメントには、個々の構成オプションの下にサーバー側構成の UI ラベルがServer-side label として含まれています。
重要 サーバー側構成が有効な場合、エージェントは UI で設定される構成ファイル内の値could を無視します。 UI 値が空の場合でも、エージェントはこれを空の文字列として扱い、エージェント構成ファイルを使用しません。
環境変数 環境変数を使用すると、特定のコア設定のデフォルトをオーバーライドできます。 同等の設定がエージェント構成ファイルに明示的にリストされている場合、構成ファイルの設定が環境変数よりも優先されます。 利用可能な場合、環境変数は、以下の個々の構成オプションの下にEnviron variable として記載されています。
単純な構成の場合、サーバー側の構成 と組み合わせて環境変数を使用し、エージェント構成ファイルを完全に回避できます。これはHeroku のデフォルト設定であり、New Relicアドオンをインストールすると、必要な環境変数が自動的に入力されます。
New Relic CodeStreamを使用してIDEからパフォーマンスを監視する場合は、リポジトリをサービスに関連付け 、ビルドSHAまたはリリースタグをエラーに関連付ける 必要があります。
Environment variable
Configuration setting
NEW_RELIC_LICENSE_KEY
license_key
NEW_RELIC_APP_NAME
app_name
NEW_RELIC_MONITOR_MODE
monitor_mode
NEW_RELIC_DEVELOPER_MODE
developer_mode
NEW_RELIC_LOG
log_file
NEW_RELIC_LOG_LEVEL
log_level
NEW_RELIC_HIGH_SECURITY
high_security
NEW_RELIC_PROXY_SCHEME
proxy_scheme
NEW_RELIC_PROXY_HOST
proxy_host
NEW_RELIC_PROXY_PORT
proxy_port
NEW_RELIC_PROXY_USER
proxy_user
NEW_RELIC_PROXY_PASS
proxy_pass
NEW_RELIC_AUDIT_LOG
audit_log_file
NEW_RELIC_STARTUP_TIMEOUT
startup_timeout
NEW_RELIC_SHUTDOWN_TIMEOUT
shutdown_timeout
NEW_RELIC_LABELS
labels
NEW_RELIC_PROCESS_HOST_DISPLAY_NAME
process_host.display_name
NEW_RELIC_API_KEY
api_key
NEW_RELIC_CA_BUNDLE_PATH
ca_bundle_path
NEW_RELIC_DISTRIBUTED_TRACING_ENABLED
distributed_tracing.enabled
NEW_RELIC_ANALYTICS_EVENTS_MAX_SAMPLES_STORED
event_harvest_config.harvest_limits.analytic_event_data
NEW_RELIC_CUSTOM_INSIGHTS_EVENTS_MAX_SAMPLES_STORED
event_harvest_config.harvest_limits.custom_event_data
NEW_RELIC_ML_INSIGHTS_EVENTS_MAX_SAMPLES_STORED
event_harvest_config.harvest_limits.ml_event_data
NEW_RELIC_SPAN_EVENTS_MAX_SAMPLES_STORED
event_harvest_config.harvest_limits.span_event_data
NEW_RELIC_ERROR_COLLECTOR_MAX_EVENT_SAMPLES_STORED
event_harvest_config.harvest_limits.error_event_data
NEW_RELIC_FEATURE_FLAG
feature_flag
リクエストごとの構成 特定のWSGIサーバーでは、リクエストごとにアプリ名 とキャプチャ属性 の設定を上書きできます。これは、リクエストごとのWSGI環境ディクショナリに渡される追加のキー/値のペアを定義できるWSGIサーバーで可能です。
これらの値は、文字列on
、 off
、 true
、 false
、 1
、および0
で設定します。Pythonコードを使用して実装された構成メカニズムから設定された場合、TrueまたはFalseに評価されるPythonオブジェクトも受け入れられます。
例:Apache/mod_wsgiアプリ名 Apache / mod_wsgiサーバーでは、 SetEnv
ディレクティブを使用して構成設定をオーバーライドできます(オプションでLocation
またはDirectory
ブロック内)。たとえば、完全な仮想ホストのアプリ名、またはその仮想ホストのWSGIアプリケーションによって処理されるURLのサブセットのアプリ名 を上書きできます。
特定のエージェント構成設定をオーバーライドできることに加えて、WSGI環境キーを使用して他の要求ごとの構成設定を設定できます。
newrelic.set_background_task newrelic.ignore_transaction true
に設定すると、このWebトランザクションは報告されません。
newrelic.suppress_apdex_metric true
に設定すると、このWebトランザクションに対してApdexメトリックは生成されません。
newrelic.suppress_transaction_trace newrelic.disable_browser_autorum true
に設定すると、ページの読み込みタイミング(実際のユーザー監視またはRUMと呼ばれることもあります)のためのJavaScriptヘッダー/フッターの自動挿入が無効になります。Webフレームワークで自動挿入が利用可能 な場合にのみ適用されます。
重要 WSGIミドルウェアを使用してこれらの値を設定することは、Pythonエージェント自体のWSGIアプリケーションラッパーが外部スコープで適用された場合には機能しません。このような場合、同じ結果を得るには、エージェントAPIを呼び出す必要があります。
複数の環境構成 エージェントは、 ini
ファイルの場合は[newrelic]
、 .toml
ファイルの場合は[tool.newrelic]
というエージェント設定セクションからプライマリ設定を読み取ります。 追加のセクションで、特定のデプロイメント環境 (開発、ステージング、本番など) のオーバーライドを指定できます。 これらのセクションの先頭には、 .ini
ファイルの場合は[newrelic:environment]
、 .toml
ファイルの場合は[tool.newrelic.env.environment]
を付けます ( environment
環境の名前に置き換えられます)。
エージェントが環境ベースの構成を使用するように指定するには、次のいずれかの方法を使用します。
環境が指定されていない場合、エージェントはnewrelic
エージェント構成セクションで指定されているデフォルト設定を使用します。
構成ファイルの基本構造は次のとおりです。
[ tool.newrelic.env.development ]
[ tool.newrelic.env.staging ]
[ tool.newrelic.env.production ]
一般的な構成設定 これらの設定は、エージェント構成ファイルで使用できます。
license_key(必須) タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_LICENSE_KEY
New Relic アカウントのライセンスキー を指定します。 このキーは、アプリのメトリクスを New Relic アカウントに関連付けます。
app_name(強くお勧めします) タイプ
弦
デフォルト
Python Application
始まる
リクエストごとのオプション、構成ファイル、環境変数
リクエストごとのオプション
newrelic.app_name
環境変数
NEW_RELIC_APP_NAME
NewRelicUIでデータを集約するために使用されるアプリケーション名 。同時に複数のアプリに データを報告するには、セミコロン;
で区切られた名前のリストを指定します。セミコロンの前にスペースを入れないでください。スペースを入れると、Python構成パーサーが名前を埋め込みコメントとして解釈します。
monitor_mode タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_MONITOR_MODE
true
の場合、エージェントはアプリに関するパフォーマンスデータを収集し、このデータをデータコレクター に報告します。
developer_mode タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_DEVELOPER_MODE
true
の場合、エージェントはWebアプリを計測しますが、実際のデータは送信しません。このオフラインモードでは、アクティブなエージェントの料金は請求されません。
開発者モードを使用して、エージェントの新しいバージョンを テストするか、開発者環境でサードパーティパッケージに対してエージェントをテストします。エージェントが収集するメトリックはどこにも報告されないため、オフラインモードはAPMをローカルで実行する方法ではありません。
log_file タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_LOG
ログファイルの名前を設定します。これは、エージェントの問題をデバッグするのに役立ちます。これはデフォルトでは設定されていません。エージェントは、Webアプリプロセスの親ユーザーや、そのプロセスが書き込みを許可されているディレクトリを認識していないためです。詳細については、 Pythonエージェントのロギング を参照してください。
これをどのように設定しても、含まれているディレクトリとファイル自体のアクセス許可が正しいこと、およびWebアプリケーションを実行するユーザーがファイルに書き込めることを確認してください。
ヒント アプリケーションの起動時の作業ディレクトリが確実でない限り、絶対パスを使用してください。ログファイルを書き出せない場合は、 stderr
を使用して標準エラー出力に出力することもできます。これにより、通常、Webサーバーのログに出力が表示されます。
log_level タイプ
弦
デフォルト
info
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_LOG_LEVEL
ログファイルの場所 を設定している場合は、ログメッセージの詳細レベルを設定します。このlog_level
は、Pythonロギングモジュールのログレベルには影響しません。可能な値は、詳細の昇順で、 critical
、 error
、 warning
、 info
、およびdebug
です。
エージェントの問題を報告するには、最も便利な設定はdebug
です。ただし、 debug
は非常に迅速に多くの情報を生成するため、問題の再現にかかる時間よりも長くエージェントをこのレベルに維持しないでください。
high_security タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_HIGH_SECURITY
高セキュリティ モードでは、特定のセキュリティ設定が強制され、その設定が上書きされるのを防ぐため、機密データが当社に送信されることはありません。高セキュリティ モードを有効にすると、リクエスト パラメータが収集されず、生の SQL を送信できなくなります。
高セキュリティ モードを有効にするには、ローカルの.ini 構成ファイルでtrue
に設定しますand Account settings ページから有効にします。 詳細については、 「高セキュリティ」 を参照してください。
proxy_scheme、proxy_host、proxy_port、proxy_user、proxy_pass タイプ
文字列
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_PROXY_SCHEME
NEW_RELIC_PROXY_HOST
NEW_RELIC_PROXY_PORT
NEW_RELIC_PROXY_USER
NEW_RELIC_PROXY_PASS
デフォルトでは、Pythonエージェントはサーバーに直接接続しようとします。ホストとコレクター の間にHTTPプロキシの使用を必要とするファイアウォールがある場合は、 proxy_host
とproxy_port
をHTTPプロキシに必要な値に設定します。プロキシ認証がHTTPプロキシによって実装されている場合は、 proxy_user
とproxy_pass
も設定します。
proxy_scheme
設定は、HTTPプロキシとの通信に使用されるプロトコルスキームを示します。http
に設定すると、エージェントはエンドツーエンド暗号化のためにHTTPプロキシを介したSSLトンネルを使用します。
proxy_scheme
、 proxy_host
、およびproxy_port
の設定を行う代わりに、 proxy_host
の設定をプロキシの有効なURIに設定することもできます。スキーム、ホスト、およびポートを含めます。たとえば、 http://proxy-host:8000
。これは、 NEW_RELIC_PROXY_HOST
環境変数を使用してHTTPプロキシの詳細を設定した場合にも機能します。
audit_log_file タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_AUDIT_LOG
監査ログファイルの名前を設定します。設定されている場合、エージェントは、監視対象プロセスとコレクター の間でやり取りされるメッセージの詳細をログに記録します。これにより、Pythonエージェントのセキュリティを評価できます。
起動時にアプリの作業ディレクトリがどうなるかわからない場合は、絶対パスを使用してください。これをどのように設定しても、含まれているディレクトリとファイル自体の権限が正しいことを確認してください。また、Webアプリの親ユーザーがファイルに書き込めることを確認してください。
注意 特に実稼働環境では、監査ログを継続的に使用しないでください。エージェントはログファイルを切り捨てたりローテーションしたりしないため、ログファイルは非常に急速に大きくなる可能性があります。
ラベル(タグ) タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_LABELS
タグ を追加します。 name:value を コロン :
で区切って指定し、追加のタグをセミコロン ;
で区切ります。
2つのタグ labels = Server:One;Data Center:Primary
process_host.display_name タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_PROCESS_HOST_DISPLAY_NAME
APMUIに表示される ホスト名を設定します。設定されている場合、これはエージェントが自動的にキャプチャするデフォルトのホスト名を上書きします。
ca_bundle_path タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_CA_BUNDLE_PATH
ローカルCAバンドルへのパスの手動オーバーライド。このCAバンドルは、データ収集サービスによって提示されたSSL証明書を検証するために使用されます。
ヒント この構成オプションは、Pythonエージェントバージョン4.2.0以降でのみ使用できます。
apdex_t タイプ
浮く
デフォルト
0.5
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APDEX_T
トランザクショントレースがこのしきい値を超えたときに記録します。形式は秒数です(小数点を使用できます)。
apdex_t の用語集エントリを参照してください
重要 これは、AWS Lambda で有効になっているserverless_mode
が設定されている場合、構成ファイルまたは環境変数でのみ設定されます。それ以外の場合、ローカルのapdex_t
値は、 apdex_f
値の設定に使用される UI アプリケーション設定の値によってオーバーライドされます。
属性 属性は、境界トレース、トレース エラー、 ブラウザ監視 、およびトランザクション イベントの情報を提供するキーの値のペアです。 以下の一般的なプロパティ設定を使用して 4 つの宛先すべての属性を構成するだけでなく、宛先ごとに属性を構成することもできます。
詳細については、 Pythonエージェント属性 、属性の有効化と無効化 、および属性の例 を参照してください。
attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、すべての属性をオンまたはオフにすることができます。
attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
属性が有効になっている場合、このリストにある属性キーが送信されます。リスト内のキーは、以下に示すようにスペースで区切る必要があります。
属性のルールは、エージェント属性ページにあります 。
attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストにあるすべての属性キーが送信されるわけではありません。リスト内のキーは、以下に示すようにスペースで区切る必要があります。
属性のルールは、エージェント属性ページにあります 。
AIモニタリング このセクションには、AI モニタリングを設定するための Python エージェント設定が含まれています。
ai_monitoring.enabled タイプ
ブール値
デフォルト
false
環境変数
NEW_RELIC_AI_MONITORING_ENABLED
true
に設定すると、AI モニタリングが有効になります。
ai_monitoring.streaming.enabled タイプ
ブール値
デフォルト
true
環境変数
NEW_RELIC_AI_MONITORING_STREAMING_ENABLED
false
に設定すると、ストリーミングされた大規模言語モデル (LLM) データの概要とメッセージ イベントを記録するインストゥルメンテーションが無効になります。
ai_monitoring.record_content.enabled タイプ
ブール値
デフォルト
true
環境変数
NEW_RELIC_AI_MONITORING_RECORD_CONTENT_ENABLED
false
に設定すると、エージェントは LLM イベントでキャプチャされた入力および出力コンテンツ (プロンプトや応答のテキスト文字列など) を省略します。 これは、LLM との間で送受信される機密データを記録したくない場合のオプションのセキュリティ設定です。
トランザクショントレーサーの構成 重要 トランザクション名の末尾に角かっこ[suffix]
を使用しないでください。エージェントは、名前から角かっこを自動的に削除します。代わりに、必要に応じて括弧(suffix)
またはその他の記号を使用してください。
トランザクショントレースの詳細については、トランザクション トレースを参照してください。
transaction_tracer.enabled transaction_tracer.transaction_threshold タイプ
正のフロートまたは文字列( apdex_f
)
デフォルト
apdex_f
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Threshold
トランザクショントレースを収集するタイミングのしきい値(秒単位)。コントローラアクションの応答時間がこのしきい値を超えると、エージェントはトランザクショントレースを記録します。有効な値は、任意の正の浮動小数点数、またはapdex_f
( apdex_t の4倍)です。
transaction_tracer.record_sql トランザクショントレーサーが有効 になっている場合、エージェントはSQLステートメントを記録できます。レコーダには、 off
(SQLを送信しない)、 raw
(SQLステートメントを元の形式で送信する)、およびobfuscated
(数値リテラルと文字列リテラルを削除する)の3つのモードがあります。
ほとんどのWebフレームワーク(Djangoを含む)はSQLクエリをパラメーター化するため、クエリの入力に使用される値は実際には含まれていません。これらのフレームワークのいずれかでraw
モードを使用する場合、Pythonエージェントは値を挿入する前にのみSQLを認識します。パラメータ化されたSQLは、 obfuscated
モードによく似ています。
transaction_tracer.stack_trace_threshold タイプ
浮く
デフォルト
0.5
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Stack trace threshold
SQL呼び出しからスタックトレースを収集するタイミングのしきい値(秒単位)。SQLステートメントがこのしきい値を超えると、エージェントは現在のスタックトレースをキャプチャします。これは、長いSQL呼び出しがアプリケーションで発生した場所を特定するのに役立ちます。
transaction_tracer.explain_enabled タイプ
ブール値
デフォルト
true
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Enable SQL query plans?
Pythonエージェントが遅いSQLクエリのクエリプランをキャプチャするかどうかを決定します。MySQLとPostgreSQLでのみサポートされています。
transaction_tracer.explain_threshold transaction_tracer.attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、トランザクショントレースのすべての属性をオンまたはオフにすることができます。ルートレベルのattributes.enabled
がfalse
の場合、この構成設定( transaction_tracer.attributes.enabled
)の設定に関係なく、トランザクショントレースに属性は送信されません。
transaction_tracer.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
トランザクショントレースで属性が有効になっている場合、このリストにあるすべての属性キーがトランザクショントレースで送信されます。詳細については、エージェント属性ルール を参照してください。
transaction_tracer.attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストにあるすべての属性キーは、トランザクショントレースで送信されるわけではありません。詳細については、エージェント属性ルール を参照してください。
transaction_tracer.function_trace 指定された機能またはメソッドについて、エージェントは追加の機能タイミングインストルメンテーションをキャプチャします。これらの名前は、 module:function
またはmodule:class.function
の形式で指定してください。
関数名とクラス名のワイルドカード(グロブ)は、 fnmatch モジュールでサポートされているパターンを使用して可能です。モジュールパスはワイルドカードではサポートされていません。パターンをmodule:function*
またはmodule:class.*
の形式で指定します。
たとえば、以下のファイルのすべての検証関数に関数トレースを追加する場合は、次のようになります。
my-app / common / utils.py
def validate_credentials ( ) :
次の行をエージェント構成ファイルに追加して、ワイルドカードを使用してmy-app/common/utils.py
内のすべての検証関数への関数トレースを含めます。
my-app / newrelic.ini
transaction_tracer.function_trace = common.utils:validate*
トランザクションセグメントの構成 エージェント構成ファイルを介して使用できるトランザクションセグメント設定は次のとおりです。
transaction_segments.attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、トランザクショントレースのセグメントのすべての属性をオンまたはオフにすることができます。ルートレベルのattributes.enabled
がfalse
の場合、この構成設定( transaction_segments.attributes.enabled
)の設定に関係なく、トランザクショントレースのセグメントに属性は送信されません。
transaction_segments.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
トランザクショントレースのセグメントで属性が有効になっている場合、このリストにあるすべての属性キーは、トランザクショントレースのセグメントで送信されます。詳細については、エージェント属性ルール を参照してください。
transaction_segments.attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストにあるすべての属性キーは、トランザクショントレースのセグメントで送信されるわけではありません。詳細については、エージェント属性ルール を参照してください。
エラーコレクターの構成 エージェント構成ファイルを介して使用できるエラーコレクター設定は次のとおりです。
ヒント APMでのエラー構成の概要については、「APMでのエラーの 管理 」を参照してください。
error_collector.enabled タイプ
ブール値
デフォルト
true
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Enable error collection?
有効にすると、エラーコレクタはキャッチされなかった例外に関する情報をキャプチャします。
error_collector.ignore_classes 特定のエラーの収集を停止するには、これを無視するPython例外タイプ名のスペースで区切られたリストに設定します。例外名には形式module:class
を使用します。
ヒント エージェントのバージョン6.4.0より前では、この設定の名前はerror_collector.ignore_errors
でした。構成ファイルでまだignore_errors
を使用している場合は、 ignore_classes
を使用するようにエージェントを更新してください。
error_collector.ignore_status_codes タイプ
弦
デフォルト
100-102 200-208 226 300-308 404
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Ignore these status codes
エージェントがエラーとして記録するのではなく無視する必要があるHTTPステータスコードを一覧表示します。追加の状況コードをスペースで区切られた整数としてリストし、開始値と終了値の間にハイフン-
区切り文字を使用して範囲を指定します。デフォルトコードの1つを許可リストに追加するには、コードの前に感嘆符!
を付けます。
一部のフレームワークは例外を使用してHTTP応答を返さないため、この設定は一部のWebフレームワークとのみ互換性があります。
ヒント この構成オプションは、Pythonエージェントバージョン6.4.0以降のサーバー側構成でのみ設定できます。
error_collector.expected_classes タイプ
弦
デフォルト
(無し)
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Expect these error class names
指定された例外クラスがエラー率またはApdexスコアに影響を与えずに、エラーをAPMに報告するのを防ぎます。これを、予期されるPython例外タイプ名のスペースで区切られたリストに設定します。例外名には形式module:class
を使用します。
ヒント この構成オプションは、Pythonエージェントバージョン6.4.0以降でのみ使用できます。
error_collector.expected_status_codes タイプ
弦
デフォルト
(無し)
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Expect these status codes
指定されたHTTPステータスコードがエラー率またはApdexスコアに影響を与えずに、エラーをAPMに報告するのを防ぎます。ステータスコードをスペースで区切られた整数としてリストし、開始値と終了値の間にハイフン-
区切り文字を使用して範囲を指定します。リスト内のコードの1つを無効にするには、コードの前に感嘆符!
を付けます。
一部のフレームワークは例外を使用してHTTP応答を返さないため、この設定は一部のWebフレームワークとのみ互換性があります。
ヒント この構成オプションは、Pythonエージェントバージョン6.4.0以降でのみ使用できます。
error_collector.attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、トレースされたエラーのすべての属性をオンまたはオフにすることができます。attributes.enabled
がルートレベルでfalse
の場合、この構成設定( error_collector.attributes.enabled
)がどのように設定されているかに関係なく、トレースされたエラーに属性は送信されません。
error_collector.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
トレースされたエラーに対して属性が有効になっている場合、このリストにあるすべての属性キーがトレースされたエラーで送信されます。詳細については、エージェント属性ルール を参照してください。
error_collector.attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストで見つかった属性キーは、トレースされたエラーでは送信されません。詳細については、エージェント属性ルール を参照してください。
error_collector.capture_events タイプ
ブール値
デフォルト
true
始まる
構成ファイル
有効にすると、エラーコレクターは高度な分析のためにイベントデータをキャプチャします。詳細については、 APMエラー を参照してください。
ブラウザの監視設定 エージェント構成ファイルを介して利用できるブラウザ監視設定は次のとおりです。
browser_monitoring.enabled browser_monitoring.auto_instrument browser_monitoring.content_type タイプ
弦
デフォルト
text/html
始まる
構成ファイル
ブラウザ監視エージェントが自動計測するHTML Content-Type
を指定します。スペースで区切られたリストにエントリを追加します。
Instrument xhtml+xmlページの応答 HTMLページの応答を生成し、 application/xhtml+xml
のContent-Type
を使用している場合は、次を使用して、許可されたコンテンツタイプをオーバーライドし、このコンテンツタイプとデフォルトのtext/html
の両方を一覧表示できます。
browser_monitoring.content_type = text/html application/xhtml+xml
重要 ブラウザ監視JavaScriptスニペットは、ページがapplication/xhtml+xml
として検証されないようにしますが、ページはエンドユーザーブラウザで読み込まれてレンダリングされる必要があります。
browser_monitoring.attributes.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル
この設定を使用して、ブラウザ監視のすべての属性をオンまたはオフにすることができます。これは、ページビューイベントに送信されるデータです。ルートレベルでattributes.enabled
がfalseの場合、構成設定( browser_monitoring.attributes.enabled
)がどのように設定されているかに関係なく、ブラウザの監視で属性は送信されません。
browser_monitoring.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
属性がbrowser_monitoring
に対して有効になっている場合、このリストにあるすべての属性キーがページビューで送信されます。詳細については、エージェント属性ルール を参照してください。
browser_monitoring.attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストにあるすべての属性キーは、ページビューでは送信されません。詳細については、エージェント属性ルール を参照してください。
トランザクションイベントの設定 エージェント構成ファイルを介して使用できるトランザクションイベント設定は次のとおりです。
ヒント これらの構成設定は、以前はanalytic_events
と呼ばれていました。構成ファイルでまだanalytic_events
を使用している場合は、 transaction_events
を使用するようにエージェントを更新してください。
transaction_events.enabled transaction_events.attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、トランザクションイベントのすべての属性をオンまたはオフにすることができます。ルートレベルでattributes.enabled
がfalse
の場合、この構成設定( transaction_events.attributes.enabled
)の設定に関係なく、トランザクションイベントに属性は送信されません。
transaction_events.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
属性がトランザクションイベントに対して有効になっている場合、このリストにあるすべての属性キーがトランザクションイベントで送信されます。詳細については、エージェント属性ルール を参照してください。
transaction_events.attributes.exclude このリストにあるすべての属性キーは、トランザクションイベントでは送信されません。トランザクションイベントから属性を除外しても、スパンイベントから除外されないことに注意してください。詳細については、エージェント属性ルール を参照してください。
カスタムイベント設定 エージェント構成ファイルを介して使用できるカスタムイベント設定は次のとおりです。
custom_insights_events.enabled データストアトレーサー設定 これらのデータストアトレーサー設定は、エージェント構成ファイルを介して利用できます。
datastore_tracer.instance_reporting.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
有効にすると、エージェントは一部のデータベースドライバーのデータストアインスタンスメトリック(ホストやポートなど)を収集します。これらは、低速のクエリトレースとトランザクショントレースでも報告されます。
datastore_tracer.database_name_reporting.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
有効にすると、エージェントは一部のデータベースドライバーのデータベース名を収集します。データベース名は、低速のクエリトレースとトランザクショントレースで報告されます。
分散トレース設定 分散トレースを使用すると、リクエストが分散システムを通過するときにたどるパスを確認できます。Pythonエージェントバージョン7.0.0.166以降 では、分散トレースはデフォルトで有効になっています。
詳細については、Pythonサービスの分散トレースを参照してください 。
設定は次のとおりです。
distributed_tracing.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_DISTRIBUTED_TRACING_ENABLED
分散トレース を有効にします
スパンイベント構成 スパンイベント は、分散トレース 用に収集されます。スパンイベントを報告するには、分散トレースを有効にする必要があります。構成オプションは次のとおりです。
span_events.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、Pythonエージェントがスパンを送信するかどうかをオンまたはオフにすることができます。
span_events.attributes.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
この設定を使用して、スパンイベントのすべての属性 をオンまたはオフにすることができます。ルートレベルのattributes.enabled
がfalse
の場合、この構成設定( span_events.attributes.enabled
)の設定に関係なく、スパンイベントに属性は送信されません。詳細については、エージェント属性ルール を参照してください。
span_events.attributes.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
スパンイベントに対して属性が有効になっている場合、このリストにあるすべての属性キーがスパンイベントで送信されます。詳細については、エージェント属性ルール を参照してください。
span_events.attributes.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル
このリストにあるすべての属性キーは、スパンイベントで送信されるわけではありません。詳細については、エージェント属性ルール を参照してください。
イベントハーベスト構成 イベントハーベスト設定は、NewRelicに送信されるイベントタイプデータの量を制限します。これらの設定を使用するときは、次の重要な点を考慮してください。
イベントハーベスト設定は、アプリケーション全体ではなく、エージェントの単一インスタンスの制限に影響します。アプリケーション全体に制限を設定する方法については、以下の使用例を参照してください。 リアルタイム ストリーミングは 5 秒ごと (1 分あたり 12 回) にデータを送信しますが、イベント収集設定はminute あたりのイベントのレートに影響します。 リアルタイム ストリーミングを有効または無効にする場合、これらの設定を変更する必要はありません。リアルタイム ストリーミング (デフォルトで有効) を使用すると、New Relic はエンティティのイベント収集制限を 5 秒間隔で表示します。これは、たとえば、構成ファイルで 1200 の制限値を設定すると、New Relic では 100 として表示されることを意味します。 使用例 アプリケーションが10個のホストにデプロイされ、それぞれがホストごとに4つのプロセスを実行しているとします。アプリケーション全体でスパンイベントの数を1分あたり10,000イベントに制限するには、その数を10ホストで割ります。次に、ホストごとに4つのプロセスで再度分割します。
10000 /(10 * 4)= 250
その計算に基づいて、最終的な設定は次のようになります。
event_harvest_config.harvest_limits.span_event_data= 250
ヒント New Relic がデータを収集する方法 (1 分間に 12 回) により、イベント データ数が 12 未満の場合、New Relic では 0 として表示されます。
イベントハーベストの構成設定は次のとおりです。
event_harvest_config.harvest_limits.analytic_event_data タイプ
整数
デフォルト
1200
始まる
構成ファイル
環境変数
NEW_RELIC_ANALYTICS_EVENTS_MAX_SAMPLES_STORED
PythonエージェントのインスタンスからNewRelicに送信される1分あたりの分析イベントの制限。
event_harvest_config.harvest_limits.custom_event_data タイプ
整数
デフォルト
3600
始まる
構成ファイル
環境変数
NEW_RELIC_CUSTOM_INSIGHTS_EVENTS_MAX_SAMPLES_STORED
Python エージェントのインスタンスがNew Relicに送信できる 1 分あたりのカスタムイベントの数を制限します。 AI モニタリング 用にエージェントを構成するときは、エージェントが最大量の LLM イベントをキャプチャできるように最大値100000
に設定します。event_harvest_config.harvest_limits.span_event_data タイプ
整数
デフォルト
2000
始まる
構成ファイル
環境変数
NEW_RELIC_SPAN_EVENTS_MAX_SAMPLES_STORED
PythonエージェントのインスタンスからNewRelicに送信される1分あたりのスパンイベントの制限。 AI モニタリング のエージェントを構成する場合、エージェントが最大量のディストリビューティッド(分散)トレーシングを確実に捕捉できるように、最大値10000
に設定します。event_harvest_config.harvest_limits.error_event_data タイプ
整数
デフォルト
100
始まる
構成ファイル
環境変数
NEW_RELIC_ERROR_COLLECTOR_MAX_EVENT_SAMPLES_STORED
PythonエージェントのインスタンスからNewRelicに送信される1分あたりのエラーイベントの制限。
イベントループの可視性設定 イベントループの可視性は、イベントループをブロックするトランザクションに関する情報を表示します。エージェントは、イベントループの制御を取得するためにかなりの時間待機したトランザクションに関する情報を生成します。設定は次のとおりです。
event_loop_visibility.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
イベントループ情報を無効にするには、これをfalse
に設定します。
event_loop_visibility.blocking_threshold トランザクションがイベントループ情報を生成する前にイベントループをブロックする必要がある時間のしきい値(秒単位)。
物理メモリのランタイムメトリクス これらのランタイム メトリック設定は、エージェント設定ファイルから利用できます。
memory_runtime_pid_metrics.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_MEMORY_RUNTIME_PID_METRICS_ENABLED
有効にすると、エージェントはプロセス ID ごとにランタイム メトリックを生成して送信します。
ガベージコレクションのランタイムメトリック設定 これらのガベージコレクションのランタイムメトリック設定は、エージェント構成ファイルを介して利用できます。
gc_runtime_metrics.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル
有効にすると、エージェントはガベージコレクションメトリックを生成して送信します。
gc_runtime_metrics.top_object_count_limit エージェントは、ガベージコレクターによって収集されている最も一般的なオブジェクトタイプのオブジェクトカウントメトリックを報告します。この設定では、オブジェクトタイプごとに、サンプリングされる個々のメトリックの最大数を設定できます。
コードレベルのメトリクス設定 エージェントでのコード レベルのメトリックの構成には、次の設定を使用できます。
code_level_metrics.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル
これをfalse
に設定して、コード レベルのメトリックのエージェント属性収集を無効にします。
コミット sha。sha 全体を使用することも、最初の 7 文字だけを使用することもできます (例: 734713b)。
リリースタグ(v0.1.209など)またはリリース-209)。
受信トレイ構成のエラー 次のタグのいずれかを設定すると、エラーが発生しているソフトウェアのバージョンを特定するのに役立ちます。
NEW_RELIC_METADATA_SERVICE_VERSION
デプロイされているコードのバージョン (多くの場合、1.2.3 などのセマンティック バージョン) を含むイベント データに tags.service.version が作成されますが、常にそうとは限りません。NEW_RELIC_METADATA_RELEASE_TAG
リリースタグを含むイベントデータに tags.releaseTag を作成します (v0.1.209 など)またはリリース-209)。NEW_RELIC_METADATA_COMMIT
コミット SHA を含むイベント データに対して tags.commit を作成します。sha 全体を使用することも、最初の 7 文字だけを使用することもできます (例: 734713b)。エラー受信箱の今後のリリースでは、ソフトウェアのどのバージョンでエラーが発生しているかを自動的に追跡します。バージョン データもCodeStream に表示されます。
アプリケーションログ設定 エージェントでのアプリケーションロギングの設定には、次の設定を使用できます。
Python エージェントのログを構成するためのヒントについては、コンテキストで Python ログを構成する を参照してください。
application_logging.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_ENABLED
true
の場合、これらのサブ機能構成も有効になっている場合は、ログの装飾とログイベントおよびログメトリックの収集を有効にします。false
の場合、ロギングインストルメンテーション機能は有効になりません。
application_logging.forwarding.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_ENABLED
true
の場合、エージェントはアプリケーションによって発行されたログレコードをキャプチャし、それらをNewRelicに転送します。この設定を有効にするには、 application_logging.enabled
もtrue
である必要があります。
注意 既存のログ転送ソリューションを使用してアプリケーションのログをすでにNewRelicに送信している場合は、ログデータの重複が請求されないように、エージェントでログ転送を有効にする前に必ず無効にしてください。
application_logging.forwarding.custom_attributes タイプ
弦
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_CUSTOM_ATTRIBUTES
New Relicに転送されたすべてのログイベントにカスタムアトリビュートとして追加するキーの値のペアを持つハッシュ。 値は次のようにフォーマットする必要があります: "key1:value1;key2:value2"
application_logging.forwarding.labels.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_LABELS_ENABLED
エージェントが New Relic に送信するログ レコードにラベルを追加するかどうかを切り替えます。
application_logging.forwarding.labels.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_LABELS_EXCLUDE
ログにラベルを含めることを有効にしたときに除外するラベル名のリスト(大文字と小文字を区別しない)。 この属性はワイルドカードまたは正規表現をサポートしていません。
重要 ラベルを属性として追加する場合、エージェントはキーにtags.
というプレフィックスを付けます。このプレフィックスは、除外フィルタリング ルールと照合するときには含まれません 。application_logging.forwarding.context_data.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_CONTEXT_DATA_ENABLED
true
の場合、エージェントは利用可能なコンテキスト データ (エクストラ、辞書メッセージ属性、ロギング フレームワークによって提供される属性) をキャプチャし、その内容を New Relic に転送されるログの属性として追加します。この動作は、 application_logging.forwarding.context_data
セクションの設定を通じて制御できます。
application_logging.forwarding.context_data.include タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_CONTEXT_DATA_INCLUDE
属性がcontext_data
に対して有効になっている場合、このリストで見つかったすべての属性キーがトランザクション追跡で送信されます。詳細については、 「エージェント属性ルール」 を参照してください。
重要 コンテキスト属性を追加するとき、エージェントは、ロギング フレームワーク コンテキストからの属性の場合はcontext.
、辞書メッセージ コンテキストからの属性の場合はmessage.
をキーの先頭に付けます。
これらのプレフィックスは、包含/除外フィルタリング ルールと照合する場合には含まれません 。
application_logging.forwarding.context_data.exclude タイプ
文字列のリスト
デフォルト
(無し)
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_CONTEXT_DATA_EXCLUDE
このリストにあるすべての属性キーは context_data で送信されるわけではありません。詳細については、 「エージェント属性ルール」 を参照してください。
重要 コンテキスト属性を追加するとき、エージェントは、ロギング フレームワーク コンテキストからの属性の場合はcontext.
、辞書メッセージ コンテキストからの属性の場合はmessage.
をキーの先頭に付けます。
これらのプレフィックスは、包含/除外フィルタリング ルールと照合する場合には含まれません 。
event_harvest_config.harvest_limits.log_event_data タイプ
整数
デフォルト
10000
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_FORWARDING_MAX_SAMPLES_STORED
NewRelicに1分あたりに送信するログレコードの数。この設定は、ログ転送機能を使用するときの全体的なメモリ消費を制御します。
これをより低い値に設定して、送信されるログラインの量を減らします(ログサンプリングの原因になる場合があります)。これをより高い値に設定すると、より多くのログラインが送信されます。
各ログは、関連するトランザクションと同じ優先度を受け取ります。トランザクション外で発生したログには、ランダムな優先度が割り当てられます。max_samples_stored
によって制限されているため、一部のログは含まれない場合があります。たとえば、ロギングmax_samples_stored
が 10,000 に設定され、トランザクション 1 に 10,000 のログ エントリがある場合、トランザクション 1 のログ エントリのみが記録されます。トランザクション 1 のログが 10,000 未満の場合、トランザクション 1 のすべてのログを受け取ります。まだスペースがある場合は、トランザクション 2 のすべてのログを受け取ります。
サンプリングされたトランザクションのすべてのログが記録され、それらがmax_samples_stored
の制限に達していない場合、サンプリングに含まれていなかったトランザクションのログ メッセージが送信されます。残っている場合は、トランザクション以外のログ メッセージが記録されます。
application_logging.metrics.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_METRICS_ENABLED
true
の場合、エージェントは、アプリケーションによって送信されているログ行に関連するメトリックをキャプチャします。この設定を有効にするには、 application_logging.enabled
もtrue
である必要があります。
application_logging.local_decorating.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_APPLICATION_LOGGING_LOCAL_DECORATING_ENABLED
true
の場合、エージェントはログをメタデータで装飾して、エンティティ、ホスト、トレース、およびスパンにリンクします。この設定を有効にするには、 application_logging.enabled
もtrue
である必要があります。
計装設定 これらのインストルメンテーション パッケージ固有の設定は、エージェント構成ファイルから利用できます。
instrumentation.graphql.capture_introspection_queries タイプ
ブール値
デフォルト
false
始まる
構成ファイル
環境変数
NEW_RELIC_INSTRUMENTATION_GRAPHQL_CAPTURE_INTROSPECTION_QUERIES
有効にすると、エージェントは GraphQL でイントロスペクション クエリのトランザクションをキャプチャします。
機械学習の設定 エージェントでの機械学習データの構成には次の設定が使用できます。
machine_learning.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_MACHINE_LEARNING_ENABLED
機械学習指標のエージェント属性収集を有効にするには、 true
に設定します。
machine_learning.inference_events_value.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_MACHINE_LEARNING_INFERENCE_EVENT_VALUE_ENABLED
生の推論値のキャプチャを有効にするには、 true
に設定します。
ml_insights_events.enabled その他の構成設定 エージェント構成ファイルを介して利用できるその他の設定を以下に示します。
utilization.detect_aws true
の場合、エージェントはAWS環境で実行されていることを自動的に検出します。
クラウド.AWS AWSアカウントID 設定されている場合、アカウント ID が検査によって自動的に決定できない場合、エージェントはこのAWS account_id
を使用してAWSエンティティをリンクします。 AWS 有効なAWS アカウント ID の例とその検索方法については 、 アカウント ID 管理のドキュメント を参照してください。
utilization.detect_azure true
の場合、エージェントはAzure環境で実行されていることを自動的に検出します。
utilization.detect_gcp true
の場合、エージェントはGoogleCloudPlatform環境で実行されていることを自動的に検出します。
utilization.detect_pcf true
の場合、エージェントはPivotalCloudFoundry環境で実行されていることを自動的に検出します。
utilization.detect_docker true
の場合、エージェントはDockerで実行されていることを自動的に検出します。
slow_sql.enabled 有効にすると、エージェントは長時間実行されるSQLデータベースクエリから詳細をキャプチャします。
thread_profiler.enabled タイプ
ブール値
デフォルト
true
始まる
サーバー側の構成、構成ファイル
サーバー側のラベル
Enable thread profiler?
スレッドプロファイリングセッション をスケジュールできます。スレッドプロファイラーは、アプリケーション内のアクティブなスレッドごとに呼び出しスタックのスナップショットを定期的にキャプチャして、統計的に代表的な呼び出しツリーを構築します。
cross_application_tracer.enabled strip_exception_messages.enabled タイプ
ブール値
デフォルト
false
始まる
構成ファイル
有効にすると、例外メッセージはコレクター に送信される前にエラー トレースから削除され、機密情報が誤って取得されるのを防ぎます。このオプションは、高セキュリティ モードでは自動的に有効になります。
strip_exception_messages.allowlist 許可リストにリストされている例外は、 strip_exception_messages.enabled
がtrue
であっても、メッセージが削除されることはありません。許可リストは、スペースで区切られた例外タイプの文字列であり、それぞれmodule:exception_name
の形式です。組み込みの例外をexception_name
としてリストします;それらの前にmodule:
を付ける必要はありません。
Example: Built-in exception and user-defined exception
KeyError my_module : MyException
startup_timeout タイプ
浮く
デフォルト
0.0
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_STARTUP_TIMEOUT
デフォルトでは、エージェントは最初のトランザクション ( web または non-web のいずれか) を受け取ると開始します。その後、エージェントは並行して開始し、この最初のリクエストが遅れないようにします。ただし、エージェントは登録が完了するまでデータを収集できないため、この最初の要求の詳細は記録されません。これは、New Relic の起動中に最初の 2 つのトランザクションを遅延させないために、ほとんどの Web アプリケーションで推奨される構成です。
これを無効にするために、起動タイムアウトを秒単位で設定できます。その後、エージェントは最初のトランザクションを一時停止し、登録が完了するのを待ちます。これは、プロセスが 1 回実行されてすぐに終了する、単一のプログラム実行またはタスクを計測する場合に役立つ場合があります。
重要 startup_timeout
はアプリの起動を遅らせるため、ウェブアプリケーションではなく、バックグラウンドタスクキューイングシステムの起動タイムアウトのみを設定することをお勧めします。
shutdown_timeout タイプ
浮く
デフォルト
2.5
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_SHUTDOWN_TIMEOUT
プロセスのシャットダウン時に、エージェントはコレクター への最後のアップロードを1回試行します。問題が発生した場合にエージェントが無期限に実行されるのを防ぐために、 shutdown_timeout
のしきい値に達すると、プロセスは正常にシャットダウンします。このシャットダウンによりデータが失われる可能性がありますが、エージェントはアップロードプロセス中に主要なメトリックデータを優先します。
バックグラウンドタスクキューイングシステム、特にプロセスごとに少数のタスクを実行するシステムの場合、エージェントがプロセスのシャットダウン時にすべてのデータをアップロードできるように、シャットダウンタイムアウトを増やすことができます。
ヒント Apacheおよび他の多くのWebサーバーには3.0秒のプロセス終了タイムアウトがあるため、エージェントはデフォルトで2.5秒のタイムアウトになります。エージェントは2.5秒で終了し、プロセスに登録されているatexit
クリーンアップコードを実行できるようにします。
compressed_content_encoding ペイロードでデータ圧縮しきい値に達した場合、エージェントはデフォルトでgzip圧縮を使用してデータを圧縮します。構成オプションcompression_content_encoding
をdeflate
に設定して、deflate圧縮を使用できます。
package_reporting.enabled タイプ
ブール値
デフォルト
true
始まる
構成ファイル、環境変数
環境変数
NEW_RELIC_PACKAGE_REPORTING_ENABLED
この設定を有効にすると、エージェントの起動時にパッケージとバージョン情報がキャプチャされ、APM 環境タブに表示されます。
ヒント 多数のパッケージを持つアプリケーションでは、この設定を有効にすると、すべてのパッケージとバージョン情報をキャプチャするため、CPU スパイクが発生する可能性があります。 そのような場合には、この設定を無効にすることをお勧めします。
注意 この設定を無効にすると、古いパッケージの脆弱性を検出する機能が無効になります。
NEW_RELIC_STARTUP_DEBUG タイプ
ブール値
デフォルト
false
始まる
環境変数
環境変数
NEW_RELIC_STARTUP_DEBUG
この設定を有効にすると、エージェントは起動スクリプトから詳細なトラブルシューティング メッセージをコンソール (STDOUT) に直接送信します。 これは、 newrelic-admin
起動スクリプト、代替のbootstrap/sitecustomize.py
起動スクリプト、または Kubernetes APM 自動接続の起動シーケンスでのクラッシュをデバッグするのに役立ちます。
注意 この環境変数設定には対応する構成ファイル設定はありません。関連するコードは構成ファイルが読み取られる前に実行されるためです。 エージェントの起動後に包括的なデバッグ ログを記録するには、ログ レベルを debug
に設定します。
NEW_RELIC_K8S_オペレータが有効 タイプ
ブール値
デフォルト
false
始まる
環境変数
環境変数
NEW_RELIC_K8S_OPERATOR_ENABLED
これは、エージェントがKubernetesクラスタに挿入されたときにレポートするために使用される情報設定です。
注意 この設定では、エージェントのこの機能が有効または無効になるわけではありません 。
NEW_RELIC_AZURE_OPERATOR_ENABLED タイプ
ブール値
デフォルト
false
始まる
環境変数
環境変数
NEW_RELIC_AZURE_OPERATOR_ENABLED
これは、エージェントが Microsoft Azure コンテナー アプリに挿入されたときにレポートするために使用される情報設定です。
注意 この設定では、エージェントのこの機能が有効または無効になるわけではありません 。
Heroku heroku.use_dyno_names タイプ
ブール値
デフォルト
true
環境変数
NEW_RELIC_HEROKU_USE_DYNO_NAMES
true
の場合、エージェントはホスト名としてHerokudyno名を使用します。
heroku.dyno_name_prefixes_to_shorten タイプ
配列
デフォルト
["scheduler", "run"]
環境変数
NEW_RELIC_HEROKU_DYNO_NAME_PREFIXES_TO_SHORTEN
通常、エージェントは、末尾にドットとプロセス ID を付けて dyno 名を報告します (例: worker.3 )。末尾のデータなしで報告するプレフィックスを指定することで、この末尾のデータを削除できます (たとえば、 worker )。
内蔵計装 Pythonエージェントは、さまざまなPythonパッケージ/モジュールをインストルメントします。このインストルメンテーションは、ターゲットPythonパッケージ/モジュールがアプリケーションによってインポートされた場合にのみ発生します。
デフォルトのインストルメンテーションを無効にするには、インストルメンテーションをトリガーしたモジュールの名前に対応する特別なimport-hook
セクションを指定します。次に、 enabled
設定をfalse
に設定して、そのモジュールのインストルメンテーションを無効にします。
例:MySQLdbデータベースクエリインストルメンテーションの無効化 .ini
設定ファイルに以下を追加します。
または、 .toml
設定ファイルの場合は次を追加します。
[ tool.newrelic.import-hook.MySQLdb ]