Utilisez les journaux d'exécution pour diagnostiquer les problèmes liés aux pods apigee-runtime
. Chaque pod d'exécution contient un processeur de messages, chargé du traitement du trafic de proxy d'API, de l'exécution des règles, du routage des requêtes, etc.
Utiliser des journaux d'exécution
Les journaux représentent un bon moyen de résoudre les problèmes liés à votre installation. Consultez la section Journalisation pour plus de détails.
Utiliser la commande "logs"
Vous pouvez afficher les journaux du système d'exécution à l'aide de la commande kubectl logs
. Exemple :
kubectl logs -f -n hybrid apigee-runtime-apigee-gcp-prod1-test-blue-hd77q
Afficher les journaux sur le système de fichiers
Vous trouverez les fichiers journaux du processeur de messages sur le système de fichiers du pod apigee-runtime
. Pour afficher les fichiers, ouvrez une interface système dans un pod apigee-runtime
:
kubectl exec -it -n namespace apigee-runtime-pod-name bash
Exemple :
kubectl exec -it -n hybrid apigee-runtime-apigee-gcp-prod1-test-blue-cnj5x bash
Une fois l'interface système du pod ouverte, vous pouvez trouver les journaux du processeur de messages hybrides sous /opt/apigee/var/log/apigee-runtime/config.log
.
Informations sur la version du contrat
Le tableau suivant décrit brièvement les entrées de journal relatives au chargement du contrat à partir du plan de gestion :
Log Entry | Signification |
hybrid-runtime Apigee-Timer-9 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version
750 from version null
|
Le MP a été remplacé par une version plus récente du contrat de configuration. |
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.loadLatestVersionIfAvailable() : Found a newer
version 750
|
Le MP a chargé la dernière version de configuration du contrat depuis version.properties . |
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Attempting to update to a newer version 750
|
Le MP est mis à jour vers une version plus récente du contrat de configuration. |
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version 751 from version 750
|
Le MP a chargé la dernière version de configuration du contrat depuis version.properties . |
Erreurs de déploiement
Les erreurs d'exécution suivantes concernent des déploiements proxy :
Log Entry | Signification |
hybrid-runtime org:hybrid env:prod Apigee-Main-6 ERROR i.a.h.e.i.HermesEngineImpl
- HermesEngineImpl.handleHermesException() : Keyspace cache_hybrid_hybrid does not exist
|
L'espace de clés cache_orgname_hybrid n'est pas provisionné dans Cassandra.
|
hybrid-runtime org:hybrid Apigee-Timer-9 ERROR c.a.s.e.k.HybridEncryptionKeyServiceImpl
- HybridEncryptionKeyServiceImpl.getEncryptionKey() : Encryption key does not exist for
organization hybrid and type KmsKey
|
L'espace de clés kms_orgname_hybrid n'est pas provisionné dans Cassandra.
|
Journaux d'erreurs de déploiement du processeur de messages
Recherchez les entrées d'erreur de déploiement suivantes dans les journaux du processeur de messages :
Entrée de journal | Description |
---|---|
hybrid-runtime org:hybrid env:prod Apigee-Main-6 ERROR i.a.h.e.i.HermesEngineImpl - HermesEngineImpl.handleHermesException() : Keyspace cache_hybrid_hybrid does not exist |
Espace de clés cache_orgname_hybrid is not provisioned in Cassandra. |
hybrid-runtime org:hybrid Apigee-Timer-9 ERROR c.a.s.e.k.HybridEncryptionKeyServiceImpl - HybridEncryptionKeyS erviceImpl.getEncryptionKey() : Encryption key does not exist for organization hybrid and type KmsKey |
L'espace de clés kms_orgname_hybrid n'est pas provisionné dans Cassandra.
|
Codes d'erreur du processeur de messages
Les codes d'erreur du processeur de messages commencent par runtime.sync.error-name
.
Exemple :
Log Entry | Signification |
runtime.sync.ContractLoadFailedMessage: Error loading spec file
|
Motif : l'erreur peut être due à un schéma non valide, à un fichier de spécification de contrat corrompu ou à un contrat non valide. Chacun de ces problèmes peut empêcher le processeur de messages de charger le fichier de spécification.
Solution : assurez-vous que le fichier de spécification du contrat est disponible, que le système de fichiers n'est pas corrompu ou que le schéma/contrat est valide. |