モニタリングのベスト プラクティス

アラートのモニタリング

Apigee Edge では、イベントの失敗によりエラーまたは障害が発生した場合に、アラートを syslog または外部のモニタリング システム/ツールに転送できます。これらのアラートは、システムレベルまたはアプリケーション レベルのアラート/イベントです。アプリケーション レベルのアラートは、生成されたイベントに基づいて作成されるカスタム アラートがほとんどです。通常、ネットワーク管理者がカスタム条件を構成します。アラートの詳細については、Apigee サポートにお問い合わせください。

アラートのしきい値の設定

アラートを生成する必要があるしきい値を設定します。設定内容はハードウェア構成によって異なります。しきい値は容量に関連して設定する必要があります。たとえば、容量が 6 GB しかない場合、Apigee Edge は低すぎる可能性があります。しきい値は、等しい(=)またはより大きい(>)条件で割り当てることができます。連続する 2 つのアラート生成間の時間間隔を指定することもできます。時間/分/秒のオプションを使用できます。

システムレベルのアラートを設定するための条件

次の表に、基準を示します。

アラート 推奨のしきい値 説明

メモリ不足

500 MB

メモリが不足しているためコンポーネントを開始できません

ディスク容量不足(/var/log)

8 GB

ディスク容量が少なくなっています。

高い負荷

3+

実行を待機しているプロセスが予期せず増加した

プロセスが停止しました

該当なし、ブール値(true または false)

システム内の Apigee Java プロセスが停止した

Apigee 固有のポートとサードパーティのポートの確認

次のポートをモニタリングして、アクティブであることを確認します。

  • Management Server、Router、Message Processor のポート 4526、4527、4528
  • Management Server、Router、Message Processor のポート 1099、1100、1101
  • Router のポート 8081 と 15999
  • Message Processor のポート 8082 と 8998
  • Management Server のポート 8080

次のサードパーティ ポートが有効になっていることを確認します。

  • Qpid ポート 5672
  • Postgres ポート 5432
  • Cassandra ポート 7000、7199、9042、9160
  • ZooKeeper ポート 2181
  • SymasLDAP ポート 10389

各 Apigee コンポーネントが API 呼び出しをリッスンしているポートを特定するには、Management Server(通常はポート 8080)に対して次の API 呼び出しを発行します。

curl -v -u username:password http://host:port/v1/servers?pod=gateway&region=dc-1
curl -v -u username:password http://host:port/v1/servers?pod=central&region=dc-1
curl -v -u username:password http://host:port/v1/servers?pod=analytics&region=dc-1

これらのコマンドの出力には、以下のようなセクションが含まれます。http.management.port セクションには、指定されたコンポーネントのポート番号が示されています。

{
  "externalHostName" : "localhost",
  "externalIP" : "111.222.333.444",
  "internalHostName" : "localhost",
  "internalIP" : "111.222.333.444",
  "isUp" : true,
  "pod" : "gateway",
  "reachable" : true,
  "region" : "default",
  "tags" : {
    "property" : [ {
      "name" : "Profile",
      "value" : "Router"
    }, {
      "name" : "rpc.port",
      "value" : "4527"
    }, {
      "name" : "http.management.port",
      "value" : "8081"
    }, {
      "name" : "jmx.rmi.port",
      "value" : "1100"
    } ]
  },
  "type" : [ "router" ],
  "uUID" : "2d4ec885-e20a-4173-ae87-10be38b35750"
}

ログの表示

ログファイルは、システムのイベント/オペレーションに関するメッセージを追跡します。プロセスの開始時と完了時、またはエラー状態が発生したときに、ログにメッセージが表示されます。ログファイルを表示すると、障害状態になる前後のシステム コンポーネント(CPU、メモリ、ディスク、負荷、プロセスなど)に関する情報を取得できます。また、現在のシステム問題の原因を特定して診断したり、潜在的なシステム問題を予測したりすることもできます。

たとえば、コンポーネントの一般的なシステムログには、次のようなエントリが含まれます。

TimeStamp = 25/01/13 19:25 ; NextDelay = 30
Memory
HeapMemoryUsage = {used = 29086176}{max = 64880640} ;
NonHeapMemoryUsage = {init = 24313856}{committed = 57278464} ;
Threading
PeakThreadCount = 53 ; ThreadCount = 53 ;
OperatingSystem
SystemLoadAverage = 0.25 ;

/opt/apigee/conf/logback.xml ファイルを編集して、サーバーを再起動することなくロギング メカニズムを制御できます。logback.xml ファイルには、ロギング メカニズムが logback.xml ファイルで構成の変更をチェックする頻度を設定する次のプロパティが含まれています。

<configuration scan="true" scanPeriod="30 seconds" >

デフォルトでは、ロギング メカニズムは 1 分ごとに変更を確認します。scanPeriod 属性の時間単位を省略すると、デフォルトでミリ秒になります。

次の表に、Apigee Edge プライベート クラウド コンポーネントのログファイルの場所を示します。

コンポーネント ロケーション

管理サーバー

opt/apigee/var/log/edge-management-server

ルーター

opt/apigee/var/log/edge-router

Message Processor

opt/apigee/var/log/edge-message-processor

Qpid サーバー

opt/apigee/var/log/edge-qpid-server

Apigee Postgres サーバー

opt/apigee/var/log/edge-postgres-server

新しい Edge UI

/opt/apigee/var/log/edge-management-ui

ZooKeeper

opt/apigee/var/log/apigee-zookeeper

SymasLDAP

opt/apigee/var/log/apigee-openldap

Cassandra

opt/apigee/var/log/apigee-cassandra

Qpidd

opt/apigee/var/log/apigee-qpidd

PostgreSQL データベース

opt/apigee/var/log/apigee-postgresql

Message Processor のデバッグログを有効にする

Message Processor のデバッグログを有効にするには:

  1. Message Processor ノードで、/opt/apigee/customer/application/message-processor.properties を編集します。そのファイルが存在しない場合は作成します。
  2. ファイルに次のプロパティを追加します。
    conf_system_log.level=DEBUG
  3. Message Processor を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

apigee-monit のベスト プラクティス

apigee-monit を使用する場合は、次のことをおすすめします。

モニタリング ツール

Nagios、Collectd、Graphite、Splunk、Sumologic、Monit などのモニタリング ツールを使用すると、企業環境全体とビジネス プロセスをモニタリングできます。

コンポーネント Nagios Collectd Splunk

システムレベルのチェック

CPU 使用率

空きメモリ/使用済みメモリ

ディスク容量の使用量

ネットワークの統計情報

プロセス

API チェック

JMX

Java

ログファイル

重大なイベント

レート制限に達した

バックエンド サーバー(Hybris または SharePoint)にアクセスできない

FaaS(STS)にアクセスできない

警告イベント

SMTP サーバーにアクセスできない

SLA 違反