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

アラートのモニタリング

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

アラートしきい値の設定

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

システムレベルのアラートの設定基準

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

アラート 推奨されるしきい値 説明

メモリ不足

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
  • ルーターのポート 8081 と 15999
  • Message Processor のポート 8082 と 8998
  • Management Server のポート 8080

次のサードパーティのポートがアクティブであることを確認します。

  • Qpid ポート 5672
  • Postgres ポート 5432
  • Cassandra ポート 7000、7199、9042、9160
  • ZooKeeper ポート 2181
  • OpenLDAP ポート 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 Private Cloud コンポーネントのログファイルの場所を示します。

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

管理サーバー

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-ui

ZooKeeper

opt/apigee/var/log/apigee-zookeeper

OpenLDAP

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 と Edge UI のデバッグログを有効にする

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

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

Edge UI のデバッグログを有効にするには:

  1. Edge UI ノードで /opt/apigee/customer/application/ui.properties を編集します。このファイルが存在しない場合は作成します。
  2. ファイルに
    conf_application_logger.application=DEBUG
    プロパティを追加します。
  3. Edge UI を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

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

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

モニタリング ツール

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

コンポーネント Nagios 収集済み Splunk

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

CPU 使用率

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

ディスク使用量

ネットワークの統計情報

プロセス

API チェック

JMX

Java

ログファイル

重大なイベント

レート制限への到達

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

FaaS(STS)に接続できません

警告イベント

SMTP サーバーにアクセスできません

SLA 違反