Best Practices für das Monitoring

Monitoringbenachrichtigungen

Mit Apigee Edge können Sie Benachrichtigungen an Syslogs oder externe Überwachungssysteme/-tools weiterleiten, wenn aufgrund eines Ereignisfehlers ein Fehler auftritt. Diese Benachrichtigungen können System- oder Anwendungsbenachrichtigungen/-ereignisse sein. Benachrichtigungen auf Anwendungsebene sind meist benutzerdefinierte Benachrichtigungen, die auf Grundlage generierter Ereignisse erstellt werden. Der Netzwerkadministrator konfiguriert in der Regel die benutzerdefinierten Bedingungen. Weitere Informationen zu Benachrichtigungen erhalten Sie vom Apigee-Support.

Benachrichtigungsgrenzwerte festlegen

Legen Sie einen Schwellenwert fest, ab dem eine Benachrichtigung generiert werden soll. Die Einstellungen hängen von Ihrer Hardwarekonfiguration ab. Der Schwellenwert sollte in Bezug auf Ihre Kapazität festgelegt werden. Beispiel: Apigee Edge ist möglicherweise zu niedrig, wenn Sie nur 6 GB Kapazität haben. Sie können einen Grenzwert mit dem Kriterium „gleich“ (=) oder „größer als“ (>) zuweisen. Sie können auch ein Zeitintervall zwischen zwei aufeinanderfolgenden Benachrichtigungen angeben. Sie können die Option „Stunden/Minuten/Sekunden“ verwenden.

Kriterien zum Festlegen von Benachrichtigungen auf Systemebene

In der folgenden Tabelle werden die Kriterien beschrieben:

Benachrichtigung Vorgeschlagener Schwellenwert Beschreibung

Geringer Arbeitsspeicher

500 MB

Der Arbeitsspeicher ist zu gering, um eine Komponente zu starten

Wenig Speicherplatz (/var/log)

8 GB

Der Speicherplatz ist zu gering.

Hohe Belastung

3+

Die Anzahl der Prozesse, die auf die Ausführung warten, ist unerwartet gestiegen

Prozess beendet

Nicht zutreffend, ein boolescher Wert von „true“ oder „false“

Der Apigee-Java-Prozess im System wurde beendet

Apigee-spezifische und Drittanbieter-Ports prüfen

Überwachen Sie die folgenden Ports, um sicherzustellen, dass sie aktiv sind.

  • Port 4526, 4527 und 4528 auf Management Server, Router und Message Processor
  • Ports 1099, 1100 und 1101 auf dem Verwaltungsserver, Router und Nachrichtenprozessor
  • Ports 8081 und 15999 auf Routern
  • Ports 8082 und 8998 bei Message Processors
  • Port 8080 auf dem Verwaltungsserver

Prüfen Sie, ob die folgenden Drittanbieterports aktiv sind:

  • Qpid-Port 5672
  • Postgres-Port 5432
  • Cassandra-Port 7000, 7199, 9042, 9160
  • ZooKeeper-Port 2181
  • SymasLDAP-Port 10389

Um herauszufinden, an welchem Port die einzelnen Apigee-Komponenten auf API-Aufrufe warten, führen Sie die folgenden API-Aufrufe für den Management Server aus (der sich in der Regel an Port 8080 befindet):

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

Die Ausgabe dieser Befehle enthält Abschnitte, die dem folgenden ähneln. Im Abschnitt http.management.port wird die Portnummer für die angegebene Komponente angegeben.

{
  "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"
}

Logs ansehen

In Logdateien werden Nachrichten zum Ereignis/Betrieb des Systems erfasst. Meldungen werden im Log angezeigt, wenn Prozesse beginnen und abgeschlossen werden oder wenn ein Fehler auftritt. Durch das Aufrufen von Protokolldateien können Sie Informationen zu Systemkomponenten wie CPU, Arbeitsspeicher, Festplatte, Last und Prozessen vor und nach dem Erreichen eines Fehlerstatus abrufen. So können Sie auch die Quelle aktueller Systemprobleme identifizieren und diagnostizieren oder potenzielle Systemprobleme vorhersagen.

Ein typisches Systemlog einer Komponente enthält beispielsweise die folgenden Einträge:

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 ;

Sie können die Datei /opt/apigee/conf/logback.xml bearbeiten, um den Logging-Mechanismus zu steuern, ohne einen Server neu starten zu müssen. Die Datei „logback.xml“ enthält die folgende Eigenschaft, mit der die Häufigkeit festgelegt wird, mit der der Logging-Mechanismus die Datei „logback.xml“ auf Konfigurationsänderungen prüft:

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

Standardmäßig prüft der Logging-Mechanismus jede Minute auf Änderungen. Wenn Sie die Zeiteinheiten für das Attribut scanPeriod weglassen, wird standardmäßig Millisekunden verwendet.

In der folgenden Tabelle finden Sie den Speicherort der Logdateien von Apigee Edge Private Cloud-Komponenten.

Komponenten Standort

Verwaltungsserver

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

Router

opt/apigee/var/log/edge-router

Message Processor

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

Qpid-Server

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

Apigee Postgres-Server

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

Edge-Benutzeroberfläche

opt/apigee/var/log/edge-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-Datenbank

opt/apigee/var/log/apigee-postgresql

Fehlerbehebungsprotokolle für den Message Processor und die Edge-Benutzeroberfläche aktivieren

So aktivieren Sie Debug-Logs für den Nachrichtenprozessor:

  1. Bearbeiten Sie auf dem Message Processor-Knoten /opt/apigee/customer/application/message-processor.properties. Wenn diese Datei nicht vorhanden ist, erstellen Sie sie.
  2. Fügen Sie der Datei das folgende Attribut hinzu:
    conf_system_log.level=DEBUG
  3. Starten Sie den Message Processor neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

So aktivieren Sie Debuggingprotokolle für die Edge-Benutzeroberfläche:

  1. Bearbeiten Sie /opt/apigee/customer/application/ui.properties im Edge-UI-Knoten. Wenn diese Datei nicht vorhanden ist, erstellen Sie sie.
  2. Fügen Sie der Datei das folgende Attribut hinzu:
    conf_application_logger.application=DEBUG
  3. Starten Sie die Edge-Benutzeroberfläche neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Best Practices für apigee-monit

Wenn Sie apigee-monit verwenden, empfiehlt Apigee Folgendes:

Monitoring-Tools

Mit Monitoring-Tools wie Nagios, Collectd, Graphite, Splunk, Sumologic und Monit können Sie Ihre gesamte Unternehmensumgebung und Ihre Geschäftsprozesse überwachen.

Komponente Nagios Collectd Splunk

Prüfungen auf Systemebene

CPU-Auslastung

Kostenloser/genutzter Arbeitsspeicher

Speicherplatzbelegung

Netzwerkstatistik

Prozesse

API-Prüfungen

JMX

Java

Protokolldateien

Kritische Ereignisse

Ratenbegrenzung erreicht

Backend-Server (Hybris oder SharePoint) nicht erreichbar

FaaS (STS) ist nicht erreichbar

Ereignis vom Typ „Warnung“

SMTP-Server nicht erreichbar

Verstoß gegen SLAs