Log di runtime

Utilizza i log di runtime per contribuire a diagnosticare i problemi relativi ai pod apigee-runtime. Ogni pod di runtime contiene un processore di messaggi, che è responsabile dell'elaborazione del traffico del proxy API, dell'esecuzione delle norme, del routing delle richieste e altro ancora.

Utilizzo dei log di runtime

I log sono un buon modo per risolvere i problemi relativi all'installazione. Per maggiori dettagli, consulta Registrazione.

Utilizzare il comando logs

Puoi visualizzare i log di sistema di runtime utilizzando il comando kubectl logs. Ad esempio:

kubectl logs -f -n hybrid apigee-runtime-apigee-gcp-prod1-test-blue-hd77q

Visualizzazione dei log sul file system

Puoi trovare i file di log dell'elaboratore dei messaggi nel filesystem del apigee-runtime pod. Per visualizzare i file, apri una shell in un pod apigee-runtime:

kubectl exec -it -n namespace apigee-runtime-pod-name bash

Ad esempio:

kubectl exec -it -n hybrid apigee-runtime-apigee-gcp-prod1-test-blue-cnj5x bash

Una volta aperta la shell del pod, puoi trovare i log dell'elaborazione dei messaggi ibrida in /opt/apigee/var/log/apigee-runtime/config.log.

Informazioni sulla versione del contratto

La tabella seguente descrive brevemente le voci di log relative al caricamento del contratto dal piano di gestione:

Voce del log Significato
hybrid-runtime Apigee-Timer-9 INFO RUNTIME-SYNC-SERVICE - RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version 750 from version null Il proprietario del canale è passato a una versione più recente del contratto di configurazione.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE - RuntimeSyncServiceImpl.loadLatestVersionIfAvailable() : Found a newer version 750 L'MP ha caricato la versione più recente della configurazione del contratto da version.properties.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE - RuntimeSyncServiceImpl.updateToVersion() : Attempting to update to a newer version 750 Il proprietario del canale sta eseguendo l'aggiornamento a una versione più recente del contratto di configurazione.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE - RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version 751 from version 750 L'MP ha caricato la versione più recente della configurazione del contratto da version.properties.

Errori di deployment

I seguenti errori di runtime riguardano i deployment dei proxy:

Voce del log Significato
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 Non è stato eseguito il provisioning dello spazio chiavi cache_orgname_hybrid in 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 Non è stato eseguito il provisioning dello spazio chiavi kms_orgname_hybrid in Cassandra.

Log degli errori di deployment del processore di messaggi

Cerca le seguenti voci di errore di deployment nei log dell'elaborazione dei messaggi:

Voce di log Descrizione
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 Spazio chiavi 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 Non è stato eseguito il provisioning dello spazio chiavi kms_orgname_hybrid in Cassandra.

Codici di errore del processore di messaggi

I codici di errore per il processore di messaggi iniziano con runtime.sync.error-name. Ad esempio:

Voce di log Significato
runtime.sync.ContractLoadFailedMessage: Error loading spec file Motivo: l'errore potrebbe essere causato da uno schema non valido, da un file di specifiche del contratto danneggiato o da un contratto non valido. Ognuno di questi problemi potrebbe impedire al processore di messaggi di caricare il file spec.

Correzione: assicurati che il file delle specifiche del contratto sia disponibile, che il file system non sia danneggiato o che lo schema/il contratto sia valido.