Node.js、PHP、および Python アプリケーション用のトランザクション分析の設定
このページでは、Node.js、PHP、および Python アプリケーション用のトランザクション分析およびデータコレクタを設定する方法について説明します。
Before You Begin
Make sure you have installed and configured the components in Custom Install and Events Service Deployment before attempting to configure Transaction Analytics.
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 エージェントを構成します。PHP エージェントがインストールされているオペレーティングシステム(OS)に応じて
.iniファイルを変更します。デフォルトでは、.iniファイルには次の設定が含まれています。この設定では分析エージェントはlocalhostにあり、ポート 9090 をリッスンします。CODEagent.analyticsHostName = localhost agent.analyticsPort = 9090分析エージェントを指すように適切な値を使用して次の変数を追加します。CODEagent.analyticsHostName = <analyticsHostName> agent.analyticsPort = <analyticsPort>分析エージェントは、PHP エージェントと同じホストまたは別のホスト上に配置できます。PHP エージェントのインストールの詳細については、「PHP エージェントのインストール」を参照してください。
分析の報告用のノードレベル設定
analytics-dynamic-service-enabled=trueを設定する必要があります。 -
(オプション)特定の数のデータイベント/トランザクションの後、または特定の時間間隔の後に分析データを報告する必要がある場合は、
.iniファイルに次のパラメータを追加して PHP エージェントを設定します。CODEagent.analyticsReportingFrequency = <time in seconds> agent.analyticsEventThreshold = <number of analytics transaction recorded>デフォルトのエージェントのレポート頻度は 30 秒で、デフォルトのイベントしきい値(イベント数/トランザクション数)は 10K です。
-
分析用の HTTP/メソッド呼び出しデータコレクタは、PHP エージェントからのデータが報告されるように、トランザクション スナップショットとトランザクション分析の両方を有効にする必要があります。
MIDC を使用してメソッドの戻り値を収集するには、値を変数に割り当てる必要があります。
戻り値が変数に保存されていない場合は、スナップショットと分析データの両方で null と表示されます。CODE$ret = function()
Python アプリケーションの分析の構成
トランザクション分析の収集
-
Python エージェント構成ファイルを変更します。
CODE[services:analytics] host= <analyticsHostName> port= <analyticsPort注: ホストのデフォルト値はlocalhostで、ポートは9090です。または
-
次の環境変数を設定します。
-
APPDYNAMICS_ANALYTICS_HOSTNAME -
APPDYNAMICS_ANALYTICS_PORT
-
Python エージェントと分析エージェント間の SSL の有効化
Python エージェントと分析エージェント間の SSL を有効にするには、次の手順を実行します。