Best Practices für das Monitoring

Monitoringbenachrichtigungen

Mit Apigee Edge können Sie Benachrichtigungen an Syslogs oder externe Monitoring-Systeme/-Tools weiterleiten, wenn aufgrund eines Ereignisfehlers ein Fehler auftritt. Diese Benachrichtigungen können auf System- oder Anwendungsebene erfolgen. 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.

Benachrichtigungsschwellenwerte festlegen

Legen Sie einen Schwellenwert fest, nach dem eine Benachrichtigung generiert werden muss. Die Einstellung hängt von Ihrer Hardwarekonfiguration ab. Der Schwellenwert sollte in Bezug auf Ihre Kapazität festgelegt werden. Apigee Edge ist beispielsweise möglicherweise zu niedrig, wenn Sie nur 6 GB Kapazität haben. Sie können einen Schwellenwert 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 Empfohlener Schwellenwert Beschreibung

Geringer Arbeitsspeicher

500MB

Der Arbeitsspeicher ist zu niedrig, um eine Komponente zu starten.

Wenig Speicherplatz (/var/log)

8GB

Der Speicherplatz ist zu niedrig.

Hohe Belastung

3+

Die Anzahl der Prozesse, die auf die Ausführung warten, hat unerwartet zugenommen.

Prozess beendet

–, 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 dem Verwaltungsserver, Router und Message Processor
  • Port 1099, 1100 und 1101 auf dem Verwaltungsserver, Router und Message Processor
  • Port 8081 und 15999 auf Routern
  • Port 8082 und 8998 auf Message Processors
  • Port 8080 auf dem Verwaltungsserver

Prüfen Sie die folgenden Drittanbieter-Ports, um sicherzustellen, dass sie aktiv sind:

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

Um zu ermitteln, auf welchem Port die einzelnen Apigee-Komponenten auf API-Aufrufe warten, führen Sie die folgenden API-Aufrufe an den Verwaltungsserver aus (der sich in der Regel auf 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 der unten gezeigten ä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 Protokolldateien werden Nachrichten zu Ereignissen/Vorgängen des Systems aufgezeichnet. Nachrichten werden im Log angezeigt, wenn Prozesse beginnen und abgeschlossen werden oder wenn ein Fehler auftritt. Wenn Sie Protokolldateien ansehen, können Sie Informationen zu Systemkomponenten wie CPU, Arbeitsspeicher, Festplatte, Last und Prozessen vor und nach dem Erreichen eines Fehlerzustands abrufen. So können Sie auch die Ursache aktueller Systemprobleme ermitteln und diagnostizieren oder potenzielle System probleme vorhersagen.

Ein typisches Systemprotokoll 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 scanPeriod Attribut weglassen, wird standardmäßig Millisekunden verwendet.

In der folgenden Tabelle finden Sie den Speicherort der Protokolldateien 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

Neue 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-Datenbank

opt/apigee/var/log/apigee-postgresql

Debug-Logs für den Message Processor aktivieren

So aktivieren Sie Debug-Logs für den Message Processor:

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

Best Practices für „apigee-monit“

Bei Verwendung von apigee-monit 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

Systemprüfungen

CPU-Auslastung

Verfügbarer/genutzter Arbeitsspeicher

Speicherplatznutzung

Netzwerkstatistik

Prozesse

API-Prüfungen

JMX

Java

Protokolldateien

Kritische Ereignisse

Ratenlimit erreicht

Backend-Server (Hybris oder SharePoint) nicht erreichbar

FaaS (STS) nicht erreichbar

Ereignisse vom Typ „Warnung“

SMTP-Server nicht erreichbar

Verstoß gegen SLAs