Bonnes pratiques de surveillance

Edge pour Private Cloud version 4.16.05

Alertes de surveillance

Apigee Edge vous permet de transférer des alertes à des journaux syslog ou à des outils/systèmes de surveillance externes lorsqu'une erreur ou une défaillance se produit suite à l'échec d'un événement. Il peut s'agir d'alertes/d'événements au niveau du système ou de l'application. Les alertes au niveau de l'application sont principalement des alertes personnalisées créées en fonction d'événements générés. L'administrateur réseau configure généralement les conditions personnalisées. Pour plus d'informations sur les alertes, contactez l'assistance Apigee.

Définir des seuils d'alerte

Définissez un seuil au-delà duquel une alerte doit être générée. Ce que vous définissez dépend de votre configuration matérielle ? Le seuil doit être défini en fonction de votre capacité. Par exemple, Apigee Edge peut être trop faible si vous ne disposez que de 6 Go de capacité. Vous pouvez attribuer un seuil comprenant un critère égal à (=) ou supérieur à (>). Vous pouvez également spécifier un intervalle de temps entre deux générations d'alertes consécutives. Vous pouvez utiliser l'option heures/minutes/secondes.

Critères de définition des alertes au niveau du système

Le tableau suivant décrit les critères:

Alerte

Seuil suggéré

Description

Mémoire faible

500 Mo

Mémoire insuffisante pour démarrer un composant

Espace disque faible (/var/log)

8 Go

L'espace disque est insuffisant.

Charge élevée

3+

Les processus en attente d'exécution ont augmenté de manière inattendue

Processus arrêté

N/A, une valeur booléenne de vrai ou faux

Le processus Java Apigee s'est arrêté dans le système

Vérification des ports spécifiques à Apigee et des ports tiers

Surveillez les ports suivants pour vous assurer qu'ils sont actifs

  • Ports 4526, 4527 et 4528 sur le serveur de gestion, le routeur et le processeur de messages
  • Ports 1099, 1100 et 1101 sur le serveur de gestion, le routeur et le processeur de messages
  • Port 8081 sur les routeurs
  • Ports 8082 et 8998 sur les processeurs de messages
  • Port 8080 sur le serveur de gestion

Vérifiez que les ports tiers suivants sont actifs:

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

Pour déterminer sur quel port chaque composant Apigee écoute les appels d'API, envoyez les appels d'API suivants au serveur de gestion (qui se trouve généralement sur le port 8080):

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

Le résultat de ces commandes contiendra des sections semblables à celle illustrée ci-dessous. La section "http.management.port" indique le numéro de port du composant spécifié.

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

Afficher les journaux

Les fichiers journaux gardent une trace des messages concernant l'événement/le fonctionnement du système. Les messages apparaissent dans le journal au début et à la fin des processus ou en cas d'erreur. En affichant les fichiers journaux, vous pouvez obtenir des informations sur les composants du système (processeur, mémoire, disque, charge, processus, etc.), avant et après l'obtention d'un état d'échec. Cela vous permet également d'identifier et de diagnostiquer la source des problèmes système actuels ou de prédire ceux qui pourraient survenir.

Par exemple, un journal système classique d'un composant contient les entrées suivantes, comme illustré ci-dessous:

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 ;

Vous pouvez modifier le fichier /<inst_root>/apigee/conf/logback.xml pour contrôler le mécanisme de journalisation sans avoir à redémarrer un serveur. Le fichier logback.xml contient la propriété suivante, qui définit la fréquence à laquelle le mécanisme de journalisation recherche des modifications de configuration dans le fichier logback.xml:

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

Par défaut, le mécanisme de journalisation vérifie les modifications toutes les minutes. Si vous omettez les unités de temps dans l'attribut scanPeriod, la valeur par défaut est millisecondes.

Le tableau suivant indique l'emplacement des fichiers journaux des composants du cloud privé Apigee Edge.

Composants

Emplacement

Serveur de gestion

<inst_root>/apigee/var/log/edge-management-server

Routeur

<inst_root>/apigee/var/log/edge-router

Processeur de messages

<inst_root>/apigee/var/log/edge-message-processor

Serveur Qpid

<inst_root>/apigee/var/log/edge-qpid-server

Serveur Apigee Postgres

<inst_root>/apigee/var/log/edge-postgres-server

Interface utilisateur périphérique

<inst_root>/apigee/var/log/edge-ui

ZooKeeper

<inst_root>/apigee/var/log/apigee-zookeeper

OpenLDAP

<inst_root>/apigee/var/log/apigee-openldap

Cassandra

<inst_root>/apigee/var/log/apigee-cassandra

QPIDd

<inst_root>/apigee/var/log/apigee-qpidd

Base de données PostgreSQL

<inst_root>/apigee/var/log/apigee-postgresql

Activer les journaux de débogage pour le processeur de messages et l'interface utilisateur Edge

Pour activer les journaux de débogage pour le processeur de messages:

  1. Sur le nœud Processeur de messages, modifiez /<install_dir>/apigee/customer/application/messsage-processor.properties. Si ce fichier n'existe pas, créez-le.
  2. Ajoutez la propriété suivante au fichier:
    conf_system_log.level=DEBUG
  3. Redémarrez le processeur de messages:
    > /<install_dir>/apigee/apigee-service/bin/apigee-service Edge-message-processor restart

Pour activer les journaux de débogage pour l'interface utilisateur Edge:

  1. Sur le nœud d'interface utilisateur Edge, modifiez /<install_dir>/apigee/customer/application/ui.properties. Si ce fichier n'existe pas, créez-le.
  2. Ajoutez la propriété suivante au fichier:
    conf_application_logger.application=DEBUG
  3. Redémarrez l'interface utilisateur Edge:
    > /<install_dir>/apigee/apigee-service/bin/apigee-service Edge-ui restart

Outils de surveillance

Les outils de surveillance Open Source tels que Nagios, Collectd, Graphite, Splunk, Sumologic et Monit peuvent vous aider à surveiller l'ensemble de votre environnement et de vos processus métier.

Composant

Nagios

Collectionné

Splunk

Vérifications au niveau du système

Utilisation du processeur

?

?

Mémoire disponible/utilisée

?

?

Utilisation de l'espace disque

?

?

Statistiques du réseau

?

?

Processus

?

Vérifications de l'API

?

JMX

?

Java

?

Fichiers journaux

?

Événements critiques

Limite de débit atteinte

?

Impossible d'accéder au serveur backend (Hybris ou Sharepoint)

?

Impossible d'accéder au FaaS (STS)

?

Warning events

Impossible d'accéder au serveur SMTP

?

Contrats de niveau de service non respectés

?