Log del sincronizzatore

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

I log sono un ottimo metodo per risolvere i problemi relativi all'installazione di Apigee ibrida. Per maggiori dettagli, consulta Logging.

Voci del log di Sincronizzazione

La seguente tabella descrive i campi che vedrai nei file di log di Sync.

Campo Indica
org: Nome dell'organizzazione
env: Nome ambiente
target: Percorso dell'entità a cui si riferisce la voce di log
action: Azione SYNC=azione di sincronizzazione upstream

REPLICATE=Azione di replica/download

context-id: La versione del contratto, ove applicabile

Ad esempio:

2019-02-05 00:00:59,098 org:hybrid env:test target: action:SYNC context-id: mode: Apigee-Timer-5 INFO  CONFIG-CHANGE - SyncContext.syncUpStream() : Upstream sync started with https://apigee.googleapis.com

Informazioni sui log di Syncer

Se devi risolvere un problema con il sincronizzatore, esamina i file di log. La seguente tabella potrebbe aiutarti a risolvere gli errori visualizzati nei log di Sincronizzatore. Vedi anche Logging.

Voce di log Che cosa significa
org:test env:dev target: action:SYNC context-id: mode: Apigee-Timer-0 INFO CONFIG-CHANGE - SyncContext.syncUpStream() : Upstream sync started with http://localhost:8080 È stato avviato il sondaggio a monte per l'organizzazione e l'ambiente e l'URL del piano di gestione
2019-01-21 16:58:02,275 org:test env:qa target: action:SYNC context-id: mode: Apigee-Timer-1 INFO CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned 200 Il contratto è stato ricevuto
2019-01-21 16:58:02,536 org:test env:dev target: action:SYNC context-id: mode: Apigee-Timer-0 INFO CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Received a new contract version 20190121.090851.339 È stata ricevuta una versione del contratto
2019-01-21 17:58:56,530 org:test env:qa target:/organizations/test/environments/qa action:REPLICATE context-id:20190121.090859.699 mode: Apigee-Timer-1 INFO CONFIG-CHANGE - ConfigReplicator.startReplication() : Replication started Indica l'inizio della replica. I campi MDC indicano i dettagli su ciò che viene replicato
2019-01-21 17:58:56,654 org:test env:qa target:/organizations/test/environments/qa/resourcefiles/js/JavaScriptCallout.js action:REPLICATE context-id:20190121.090859.699 mode: Apigee-Timer-1 INFO CONFIG-CHANGE - ConfigReplicator.startReplication() : Replication complete Indica che la replica è terminata. I campi MDC indicano i dettagli su ciò che viene replicato
2019-01-21 17:58:56,654 org:test env:qa target:/organizations/test/environments/qa action:REPLICATE context-id:20190121.090859.699 mode: Apigee-Timer-1 ERROR CONFIG-CHANGE - ConfigReplicator.startReplication() : Replication failed Indica un errore di replica
2019-01-21 17:59:00,246 org:test env:qa target: action:SYNC context-id: mode: Apigee-Timer-1 INFO CONFIG-CHANGE - SyncContext.syncUpStream() : Upstream sync finished in 4 seconds Indica la fine di un ciclo di sincronizzazione e fornisce anche il tempo impiegato per la sincronizzazione
2019-01-21 18:00:00,249 org:test env:dev target: action:SYNC context-id: mode: Apigee-Timer-1 INFO CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned 304 Indica che non è disponibile un contratto più recente
2019-01-21 18:21:39,128 org:test env:qa target: action:SYNC context-id: mode: Apigee-Timer-1 ERROR CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned error 0 Indica che il piano di gestione non è raggiungibile
2019-01-21 18:21:39,128 org:test env:qa target: action:SYNC context-id: mode: Apigee-Timer-1 ERROR CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned error 404 Indica che il piano di gestione ha restituito una risposta 404 per il contratto
2019-01-21 18:22:39,217 org:test1 env:dev target: action:SYNC context-id: mode: Apigee-Timer-2 ERROR CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned error 403 Indica che l'ambiente in cui si esegue il sondaggio non è abilitato per gli ibridi
2019-01-21 18:22:39,217 org:test1 env:dev target: action:SYNC context-id: mode: Apigee-Timer-2 ERROR CONFIG-CHANGE - ManagementServerBasedReplicationContext.getContract() : Upstream contract poll returned error 401 Le credenziali fornite presentano alcuni problemi

Errore durante la risoluzione dei problemi

I log sono un ottimo metodo per risolvere i problemi relativi all'installazione. Per maggiori dettagli, consulta Logging.

Impossibile avviare il sincronizzatore

Di seguito sono riportati alcuni errori e le relative correzioni. Ciascuno di questi messaggi di errore inizia con un ErrorCode di tipo sync.xxxxx. Di seguito sono riportati i possibili codici di errore

sync.NullOrEmptyConfig

Messaggio: configurazione nulla o vuota fornita tramite com.apigee.sync.config

Motivo: viene visualizzato questo messaggio di errore quando le proprietà di configurazione del sincronizzatore non sono state fornite correttamente.

Soluzione: assicurati che tutte le proprietà di configurazione siano completate con i valori appropriati.

sync.ConfigFileNotFound

Motivo: il programma di sincronizzazione è stato impostato per leggere le proprietà di configurazione da un file, ma non è stato possibile caricare il file

Soluzione: assicurati che il file sia disponibile e accessibile durante l'avvio di Sincronizzatore

Impostazioni errate.

Motivo: una o più proprietà di configurazione obbligatorie mancanti nella configurazione del sincronizzatore o valori non compresi nell'intervallo previsto. L'errore dovrebbe contenere ulteriori dettagli sulla proprietà esatta del problema. Questi errori sono integrati nell'analizzatore sintattico per garantire che gli errori di impostazione vengano rilevati anche prima dell'avvio del servizio.

Nella tabella che segue vengono elencati alcuni errori possibili relativi a impostazioni errate:

Errore Qual è il problema
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/retries numeric instance is greater than the required maximum (maximum: 3, found: 20) Il valore fornito per il campo sui nuovi tentativi nella sezione controlPlane ha superato il numero consentito
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/connectionTimeout numeric instance is lower than the required minimum (minimum: 10, found: 1) Il valore fornito per il campo connectionTimeout in una sezione di controlloPlane è inferiore a quanto consentito
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane object has missing required properties ([\"contractProvider\"]) Nella sezione controlPlane manca il campo obbligatorio contractProvider
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/contractProvider string \"http://\\uapi.apigee.com\" is not a valid URI L'URI del provider del contratto non è valido
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments array is too short: must have at least 1 elements but instance has 0 elements L'array degli ambienti deve avere almeno un ambiente
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments/0 object has missing required properties ([\"environmentName\"]) Nell'ambiente all'indice 0 manca il campo obbligatorio environmentName
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments/0 object has missing required properties ([\"organizationName\"]) Nell'ambiente all'indice 0 manca il campo obbligatorio organizationName
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments/0/pollInterval numeric instance is lower than the required minimum (minimum: 60, found: 6) L'ambiente all'indice 0 ha un intervallo del sondaggio inferiore al limite consentito di 60

Soluzione: correggi l'impostazione in modo da includere il blocco richiesto

sync.ReplicationRootNotNotExist

Motivo: il sincronizzatore è stato fornito con una radice di replica che non esiste

Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile

sync.ReadOnlyReplicationRoot

Motivo: il sincronizzatore è stato fornito con una radice di replica che non dispone delle autorizzazioni di scrittura

Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile

sync.ReplicationRootNotADir

Motivo: il sincronizzatore è stato fornito con una radice di replica che potrebbe essere un file

Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile

sync.InvalidControlPlaneURL

Motivo: il sincronizzatore è stato fornito con un URL di configurazione vuoto

Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile

sync.InvalidControlPlaneSubscriptionURL

Motivo: il programma di sincronizzazione ha fornito un URL di configurazione errato, incompleto o vuoto per la creazione della sottoscrizione.

Soluzione: correggi l'URL a un URL di configurazione valido per la creazione di una sottoscrizione Pub/Sub per gestire gli indicatori dal piano di controllo.

sync.InvalidControlPlaneUnsubscriptionURL

Motivo: il programma di sincronizzazione ha fornito un URL di configurazione errato, incompleto o vuoto per l'eliminazione della sottoscrizione.

Soluzione: correggi l'URL a un URL di configurazione valido per l'eliminazione della sottoscrizione da pub/sub per gestire gli indicatori dal piano di controllo.

sync.UnableCreateEnvironmentFolder

Motivo: il programma di sincronizzazione ha cercato di creare una cartella per la replica dell'ambiente qa, ma non è stato possibile creare la cartella richiesta

Soluzione: assicurati che la radice della replica non abbia un percorso in conflitto con lo stesso nome, che è di sola lettura di un file

sync.duplicateEnvironmentEntries

Motivo: lo stesso ambiente è stato aggiunto più volte nella configurazione.

Soluzione: ogni ambiente può essere specificato solo una volta.

sync.DiskSupera la capacità consentita

Motivo: il disco di archiviazione in dotazione ha già raggiunto la capacità specificata tramite le proprietà di configurazione.

Soluzione: assicurati che lo spazio su disco sia sufficiente o verifica se è possibile modificare le impostazioni di archiviazione per liberare spazio su disco.

Claim.PropertyClaim non riuscito

Motivo: il programma di sincronizzazione ha cercato di rivendicare la proprietà nella cartella dell'ambiente, ma il tentativo non è riuscito.

Soluzione: ogni sincronizzatore proverà prima a garantire che sia un'unica autore del file system. che indica il percorso e il motivo dell'errore. Risolvi la causa principale

Errori di sincronizzazione durante il runtime

Durante il runtime possono verificarsi i seguenti errori di sincronizzazione.

sync.replicators.PollReturnedError

Il messaggio associato includerà lo stato upstream. Di seguito sono riportati gli stati degli errori

stato 0

Motivo: indica un problema di connettività. Il piano di gestione non era raggiungibile

Soluzione: assicurati che i dettagli del piano di gestione siano corretti e che l'API contratto sia raggiungibile

stato 404

Motivo: molto probabilmente il nome org/env non è presente sul server

Soluzione: assicurati che i dettagli del piano di gestione siano corretti e che l'API contratto sia raggiungibile

stato 401

Motivo: molto probabilmente le credenziali fornite non dispongono dei privilegi di amministratore dell'organizzazione.

Rimedio: assicurati che le credenziali del piano di gestione siano corrette e che l'API contratti sia raggiungibile

stato 403

Motivo: indica che l'ambiente in cui viene eseguito il sondaggio non è configurato come ambiente ibrido

Soluzione: assicurati che l'organizzazione disponga del flag richiesto "features.hybrid.enabled=true"

sincronizzazione.ProprietàRivendicata da Altro

Motivo: durante l'operazione, il programma di sincronizzazione ha rilevato che la directory principale del file accede a un'altra istanza. Questo può accadere quando un file system viene condiviso tra i programma di sincronizzazione.

Soluzione: risolvi il problema principale per assicurarti che due istanze di Sync non condividano lo stesso file system. Il decidere di sincronizzazione si sarebbe contrassegnato e sarebbe in una posizione non recuperabile qui. Assicurati anche che l'altro Sincronizzatore che accede alla stessa radice del file riceva una notifica tramite il suo file di proprietà

sync.DiskSupera la capacità consentita

Motivo: durante l'operazione il sincronizzatore ha capito che il numero di persone che erano presenti sul disco ha superato il limite consentito.

Correzione: a questo punto, il programma di sincronizzazione interromperà qualsiasi download e proverebbe a eseguire un'operazione di pulizia del file obsoleta. Tuttavia, questa condizione può diventare una condizione ricorrente e l'unico modo per ripristinare completamente il controllo è assicurarsi che il sincronizzatore disponga di memoria disco sufficiente per funzionare.

Diagnosticare gli errori di download dei contratti

Se vedi "sondaggio contratto upstream" in un messaggio di errore, prova a chiamare l'API contratto e controlla i dettagli, dove il nome utente è il tuo nome utente Apigee (il tuo indirizzo email). Il contratto rappresenta l'intera raccolta di dati scaricata dal sincronizzatore dal piano di gestione.

curl https://apigee.googleapis.com/v1/organizations/org/environments/env/contracts/1.0 -u username