本文へスキップ

エージェント名の識別

エージェント名識別

WhaTapはモニタリングは、情報収集の対象であるアプリケーションサーバーを識別するための情報で、基本的にアプリケーションサーバーから収集した情報を使用します。基本的な使用状況の情報は、アプリケーションサーバーの種類、IPアドレスなどを組み合わせであり、アプリケーションサーバーを固有識別子として使用します。必要に応じて、ユーザーが設定した名前を使用するか、パターンを変更して固有の値に変更して使用します。エージェントの名前は固有の値である必要があります。

アプリケーションサーバーから抽出した情報を使用する理由は、アプリケーションサーバーの停止またはネットワークの切断、エージェント問題による収集サーバーとエージェントの通信状態が復旧した場合に、再接続されたエージェントから送信される情報が既存エージェントから送信された情報との継続性を維持するためです。

注意
  • エージェント名は、プロジェクトごとに一意である必要があります。
  • エージェントID/名前を変更しても、古いデータには関連付けられません。

WhaTapエージェントがアプリケーションサーバーを識別するために使用するデフォルトパターンは、次のとおりです。

Default pattern
NODE-{ip2}-{ip3}
Cluster environment
NODE{cluster}-{ip2}-{ip3}

エージェント名の変数

変数説明
{type}アプリケーションタイプ名(NODE)です。
{ip0}IPv4アドレスのうち、1番目の単位を使用します。(例:10.11.12.13のうち10)
{ip1}IPv4アドレスのうち、2番目の単位を使用します。(例:10.11.12.13のうち11)
{ip2}IPv4アドレスのうち、3番目の単位を使用します。(例:10.11.12.13のうち12)
{ip3}IPv4アドレスのうち、4番目の単位を使用します。(例:10.11.12.13のうち13)
{pid}アプリケーションのProcess Idです。
{hostname}ホスト名です。
{cluster}1つのサーバーに複数のNode.jsが動作する場合のクラスタIDです。

エージェント名のパターン変更

環境変数を使用して、WhaTapエージェント名を変更できます。アプリケーションのメインモジュールファイルの先頭に次のコードを追加してください。

process.env.WHATAP_NAME = "NODE-{ip2}-{ip3}";
var whatap=require('whatap').NodeAgent;
...

サーバーから付与されるエージェント名

エージェント環境に基づいて名前を決定するのではなく、サーバーが名前を自動的に割り当てる方式です。 Node.jsは、サーバーのコンテナやPaaS環境で動作する場合に 使用します。

whatap.conf
auto_oname_enabled=true
auto_oname_prefix=nodejs
Set the .env(app.js)
process.env.WHATAP_LICENSE='x46n3226be1ah-z2rsecfcvlq2ph-z11bc81gfhqpgg';
process.env.WHATAP_SERVER_HOST='52.78.209.94/52.78.224.235';

process.env.auto_oname_enabled=true;
process.env.auto_oname_prefix='mynode';

var whatap=require('whatap').NodeAgent;
...
ノート
  • envを設定するには、require('whatap')より先に宣言する必要があります。
  • Heroku環境では、サーバを再起動するたびにIPアドレスを変更するため、新しい名前に変更されます。

auto_oname_prefixオプションは、エージェント名のprefixです。WhaTapサーバは、auto_oname_prefixオプションに設定した名前とシリアル番号を組み合わせてエージェント名を付与します。

付与したエージェント名の例、mynode1

エージェント名の設定オプション

Node.jsエージェント名の設定の詳細については、 次の文書を参照してください。

  • whatap.okind String

    エージェントが所属するグループ単位を設定します。複数のエージェントをまとめて設定し、そのグループ名でトポロジを確認できます。

  • whatap.onode String

    エージェントが属するNode単位を設定します。

  • auto_oname_enabled Boolean

    既定値false

    サーバーに登録するエージェント名をサーバーから自動付与される機能を有効にします。

  • auto_oname_prefix String

    既定値agent

    エージェント名をサーバーから自動的に割り当てる場合は、エージェント名のprefixや業務名を使用します。prefixにシリアル番号「1~)」を付与します。

  • auto_oname_reset Int

    既定値0

    サーバーから新しいエージェント名を取得するために修正します。エージェント名が設定されると、Node.jsが再起動するまで保持されます。リセットする場合は、auto_oname_reset値を修正してください。現在の設定値と異なる値に変更すると有効になります。