• ログイン今すぐ開始

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

application_settings (PythonエージェントAPI)

構文

newrelic.agent.application_settings(name=None)

アプリケーション設定オブジェクトを返します。

説明

これは、アプリケーション設定オブジェクトへの参照を返します。 global_settings オブジェクトには、設定ファイルや環境変数の設定が含まれています。この application_settings オブジェクトには、さらに New Relic UI を通じてサーバーサイドで設定された設定変更が含まれています。

返される設定は、ネストされた階層的なオブジェクトで、設定名は、 エージェント設定ファイル の名前と一致します。アプリケーション設定を公開する主な理由は、サーバーサイドで設定されたものではなく、エージェント固有のローカル設定をインストゥルメンテーションで参照したい場合です。

name 値が設定されていない場合は、エージェントの設定ファイルまたは NEW_RELIC_APP_NAME 環境変数で指定されたアプリケーション名が使用されます。

この呼び出しが行われたときにアプリケーションがデータコレクタに登録されていない場合は、 None という値が返されます。呼び出しが正常に行われて値が返されると、登録時に取得したアプリケーションの サーバー側の構成 と重ね合わせたローカル構成の値が反映されます。

重要

アプリケーションの設定オブジェクトに変更を加えないでください。サーバー側の設定変更により、エージェントがデータコレクタにアプリケーションを再登録すると、設定オブジェクトが無効になり、置き換えられるため、設定オブジェクトをキャッシュしないでください。

パラメータ

パラメーター

説明

name

文字列

オプションです。アプリケーションの名前です。設定されていない場合は、そのアプリケーションのPythonエージェント構成で設定された名前と一致します。

戻り値

アプリケーション設定オブジェクトを返します。このオブジェクト自体はパブリックなAPIを提供しませんが、他のコールではこのオブジェクトを渡す必要があります。

IFステートメントの使用

どのようなカスタムインスツルメンテーションを実装するかは、構成設定を確認するとよいでしょう。ここでは、アプリの設定オブジェクトで if ステートメントを使用する例を示します。

settings = newrelic.agent.application_settings()
if settings and settings.error_collector.enabled:
...

結果をdictに渡す

デバッグやロギングの際に、グローバル設定を伝統的なPythonの辞書オブジェクトとして必要とする場合には、その結果を dict に渡すことができます。例えば、以下のようになります。

settings_dict = dict(newrelic.agent.application_settings())
for name, value in settings_dict.items():
print name, value

は、その設定のフルドットパスになります。

Copyright © 2022 New Relic株式会社。

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