Download PDF
Download page Node.js、PHP、および Python アプリケーション用のトランザクション分析の設定.
Node.js、PHP、および Python アプリケーション用のトランザクション分析の設定
このページでは、Node.js、PHP、および Python アプリケーション用のトランザクション分析およびデータコレクタを設定する方法について説明します。
はじめる前に
トランザクション分析の設定を試行する前に、「エージェント側のコンポーネントのインストール」と、オンプレミスの場合は、「Custom Install」および「Events Service Deployment」で説明されているコンポーネントをインストールし、設定していることを確認してください。
Node.js 用の分析の設定
デフォルトの Node.js トランザクションデータの収集
分析エージェントにデフォルトのトランザクションデータを送信するように Node.js エージェントを設定するには、アプリケーションの require ステートメントを変更します。
Analytics エージェントを指すように適切な値を使用して次の変数を追加します。
analytics: {
host: <analyticsHostName>,
port: <analyticsPort>,
ssl: <true || false>
}
分析エージェントは、Node.js エージェントと同じホストまたは別のホスト上に配置できます。詳細については、Node.js エージェントのインストールを参照してください。
データ制限の設定
環境変数に関連付けられた次のプロパティを使用して、Analytics エージェントに送信されるデータに制限を設定するように Node.js エージェントを構成することもできます。
プロパティ名 | 説明 | 環境変数 |
---|---|---|
analyticsMaxSegmentSizeInBytes | 分析要求で収集されるビジネス トランザクション セグメントの最大サイズ。デフォルト値は、0.1 MB です。 | APPDYNAMICS_ANALYTICS_MAX_SEGMENT_SIZE |
analyticsMaxSegmentsPerRequest | 分析要求ごとのセグメントの最大数。デフォルト値は 16 です。 | APPDYNAMICS_ANALYTICS_MAX_SEGMENTS_PER_REQUEST |
analyticsMaxMessageSizeInBytes | 分析エージェントに送信される単一の要求本文のサイズ。デフォルトでは、この値は 1 MB です。 | APPDYNAMICS_ANALYTICS_MAX_MESSAGE_SIZE |
require ステートメントは、分析エージェントがローカルホスト上にあり、ポート 9090 でリスニングする場合は、次の例のようになります。
require ("appdynamics").profile({
controllerHostName: '<Controller host name>',
controllerPort: <Controller port number>,
controllerSslEnabled: false, // Set to true if controllerPort is SSL
accountName: '<AppDynamics account name>',
accountAccessKey: '<AppDynamics account key>', // Required
applicationName: '<Your application name>',
debug: false,
tierName: '<Choose a tier name>',
nodeName: '<Choose a node name>', // The Controller appends the node name with a unique number
analyticsMaxSegmentSizeInBytes: 20,
analyticsMaxSegmentsPerRequest: 20,
analyticsMaxMessageSizeInBytes: 100,
analytics: {
host: 'localhost',
port: 9090 },
logging: {
'logfiles': [
{'root_directory': '/tmp/appd', 'filename': 'echo_%N.log', 'level': 'TRACE', 'max_size': 5242880, 'max_files': 10 },
{ 'root_directory': '/tmp/appd', 'filename': 'protobuf_%N.log', 'level': 'TRACE', 'max_size': 5242880, 'max_files': 10, 'channel': 'protobuf' }]
}
});
Node.js データコレクタの収集
また、Node.js API を使用して、Node.js ビジネストランザクションから追加データを収集することもできます。Node.js のトランザクション分析データコレクタを設定するには、「Node.jsエージェントAPI参考資料」の「txn.addAnalyticsData()
」を参照してください。
PHP アプリケーションの分析の構成
- [Transaction Analytics - Configuration] で [Enable Analytics] チェックボックスをオンにして、PHP アプリケーションでの分析を有効または無効にします。
- [Business Transactions] の右側にある [Enable Analytics] チェックボックスをオンにして、アプリケーション内のビジネストランザクションでアプリケーション分析を有効または無効にします。
分析データを PHP CLI プログラムから収集することはできません。
PHP エージェントからトランザクション分析を収集するには、次の手順を実行します。
デフォルトのトランザクションデータを分析エージェントに送信するように PHP エージェントを構成します。PHP エージェントがインストールされているオペレーティングシステムに応じて
.ini
ファイルを変更します。
デフォルトでは、.ini
ファイルには次の構成が含まれていて、分析エージェントがlocalhost
にあり、ポート 9090 をリッスンします。agent.analyticsHostName = localhost agent.analyticsPort = 9090
CODE分析エージェントを指すように適切な値を使用して次の変数を追加します。
agent.analyticsHostName = <analyticsHostName> agent.analyticsPort = <analyticsPort>
CODE分析エージェントは、PHP エージェントと同じホストまたは別のホスト上に配置できます。PHP エージェントのインストールについては、「PHPエージェントのインストール」を参照してください。
分析の報告用のノードレベル設定
analytics-dynamic-service-enabled=true
を設定する必要があります。分析用の HTTP/メソッド呼び出しデータコレクタは、PHP エージェントからのデータが報告されるように、トランザクション スナップショットとトランザクション分析の両方を有効にする必要があります。
MIDC を使用してメソッドの戻り値を収集するには、値を変数に割り当てる必要があります。$ret = function()
CODE戻り値が変数に保存されていない場合は、スナップショットと分析データの両方で
null
と表示されます。
Python アプリケーションの分析の構成
- [Transaction Analytics - Configuration] で [Enable Analytics] をクリックして、Python アプリケーションでの分析を有効にします。
- [Business Transactions] の右側にある [Enable Analytics] をクリックして、アプリケーション内のビジネストランザクションで分析を有効にします。
- コントローラバージョンが 21.10 以下の場合は、分析をレポートするには
analytics-dynamic-service-enabled=true
ノードプロパティを設定します。
ノードプロパティの追加方法の詳細については、「登録済みノードプロパティの追加」を参照してください。
親の構成は、analytics-dynamic-service-enabled
プロパティではサポートされません。トランザクション分析をレポートするには、このプロパティを各ノードに設定する必要があります。
トランザクション分析の収集
Python エージェントからトランザクション分析を収集するには、デフォルトのトランザクションデータを分析エージェントに送信するように Python エージェントを設定します。
Python エージェント構成ファイルを変更します。
[services:analytics] host= <analyticsHostName> port= <analyticsPort>
CODEデフォルト値は、ホストは
localhost
、ポートは9090
です。または、
次の環境変数を設定します。
APPDYNAMICS_ANALYTICS_HOSTNAME
APPDYNAMICS_ANALYTICS_PORT
環境変数の設定方法の詳細については、「Python エージェント設定」を参照してください。
Python エージェントと分析エージェント間の SSL の有効化
Python エージェントと分析エージェント間の SSL を有効にするには、次の手順を実行します。
分析エージェントの証明書に署名した CA のルート証明書を取得します。
SSL を有効にし、Python エージェント構成ファイルで証明書ファイルのパスを指定します。
[services:analytics] ssl= on ca-file=<path of the CA certificate file>
CODEPython エージェントは、
.pem
形式の証明書ファイルを受け入れます。中間認証局がある場合は、ルート認証局の代わりに信頼チェーンのパスを指定します。
または、
次の環境変数を設定します。
APPDYNAMICS_ANALYTICS_SSL_ENABLED
APPDYNAMICS_ANALYTICS_CAFILE