I log sono un ottimo modo per risolvere i problemi relativi all'installazione ibrida di Apigee. Per maggiori dettagli, consulta Registrazione.
Voci di log del sincronizzatore
La seguente tabella descrive i campi che vedrai nella File di log del sincronizzatore.
Campo | Indica |
---|---|
org: |
Nome dell'organizzazione |
env: |
Nome ambiente |
target: |
Percorso dell'entità rappresentata dalla voce di log |
action: |
Azione SYNC=Azione di sincronizzazione a monte
REPLICATE=Azione di replica/download |
context-id: |
La versione del contratto, se 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 del sincronizzatore
Se devi risolvere un problema con il sincronizzatore, esamina i file di log. La tabella seguente può aiutarti a risolvere gli errori visualizzati nei log di Synchronizer. 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 |
Il sondaggio upstream è stato avviato per l'organizzazione e l'ambiente e fornito 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 di 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 è stata completata. I campi MDC indicano i dettagli di 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 era 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 era 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 per cui viene eseguito il polling non è abilitato all'ibrido |
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 |
Risoluzione dei problemi
I log sono un buon modo per risolvere i problemi relativi all'installazione. Per maggiori dettagli, consulta Registrazione.
Impossibile avviare il programma di sincronizzazione
Di seguito sono riportati alcuni errori e la relativa correzione. Ogni messaggio 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:verifica che tutte le proprietà di configurazione vengono compilati con i valori appropriati.
sync.ConfigFileNotFound
Motivo: il sincronizzatore è stato impostato per leggere i suoi di configurazione di un file, ma non è stato possibile caricato
Soluzione:assicurati che il file sia disponibile e accessibile durante l'avvio del sincronizzatore
sync.IncorrectSettings
Motivo: nella configurazione di Synchronizer mancano una o più proprietà di configurazione obbligatorie o i relativi valori non rientrano nell'intervallo previsto. L'errore deve avere ulteriori dettagli sulla proprietà esatta che causa il problema. Questi errori sono integrati nell'analizzatore per assicurarsi che gli errori di configurazione vengano rilevati anche prima dell'avvio del servizio.
La seguente tabella elenca alcuni possibili errori IncorrectSettings:
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 al campo retries nella sezione controlPlane ha superato il valore consentito |
configuration.json.IncorrectSettings:
[com.apigee.sync.config.json] Error:/controlPlane/connectionTimeout
numeric instance is lower than the required minimum (minimum: 10,
found: 1) |
Valore fornito al campo connectionTimeout in controlPlane la sezione è inferiore a quella consentita |
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 fornitore 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 environments 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 di sondaggio che si trova sotto il limite consentito di 60 |
Rimedio:correggi l'impostazione in modo da includere i valori richiesti. blocca
sync.ReplicationRootDoesNotExist
Motivo: al sincronizzatore è stato fornito radice di replica inesistente
Correzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.ReadOnlyReplicationRoot
Motivo: a Synchronizer è stato fornito un directory principale di replica che non dispone delle autorizzazioni di scrittura
Correzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.ReplicationRootNotADir
Motivo: a Synchronizer è stato fornito un directory principale di replica che potrebbe essere un file
Correzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.InvalidControlPlaneURL
Motivo: al sincronizzatore è stato fornito l'URL di configurazione, che è vuoto
Correzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.InvalidControlPlaneSubscriptionURL
Motivo: il sincronizzatore è stato fornito con un URL di configurazione errato, incompleto o vuoto per la creazione dell'abbonamento.
Soluzione:correggi l'URL inserendo un URL di configurazione valido per Creazione di abbonamenti Pub/Sub per gestire gli indicatori dal piano di controllo.
sync.InvalidControlPlaneUnsubscriptionURL
Motivo: a Synchronizer è stato fornito un URL di configurazione errato, incompleto o vuoto per l'eliminazione dell'abbonamento.
Soluzione:correggi l'URL inserendo un URL di configurazione valido per l'eliminazione delle sottoscrizioni Pub/Sub per gestire gli indicatori dal piano di controllo.
sync.CannotCreateEnvironmentFolder
Motivo: il sincronizzatore ha tentato di creare un per la replica dell'ambiente ma non è stato possibile creare cartella richiesta
Soluzione:assicurati che la radice di replica non presentano un percorso in conflitto con lo stesso nome, sola lettura di un file
sync.DuplicateEnvironmentEntries
Motivo: nello stesso ambiente sono stati aggiunti più elementi volte nella configurazione.
Rimedio: ogni ambiente può essere specificato solo una volta sola.
sync.DiskExceedsAllowedCapacity
Motivo: il disco di archiviazione fornito ha già raggiunto la capacità di soglia fornita tramite le proprietà di configurazione.
Correzione: assicurati che lo spazio su disco sia sufficiente o controlla se le impostazioni di archiviazione possono essere modificate per consentire più spazio su disco.
sync.OwnershipClaimFailed
Motivo: lo strumento di sincronizzazione ha provato a rivendicare la proprietà della cartella dell'ambiente, ma non ci è riuscito
Rimedio: ogni sincronizzatore proverà prima a verifica che sia l'unico autore del file system. Errore indica il percorso e il motivo dell'errore. Risolvi la causa di fondo
Errori del sincronizzatore durante il runtime
Durante il runtime possono verificarsi i seguenti errori di Synchronizer.
sync.replicators.PollReturnedError
Il messaggio associato includerà lo stato a monte. Di seguito sono riportati gli stati di errore
status 0
Motivo: indica un problema di connettività. La il piano di gestione non era raggiungibile
Correzione: assicurati che i dettagli del piano di gestione siano corretti e che l'API contracts sia raggiungibile
status 404
Motivo: molto probabilmente il nome dell'organizzazione o dell'ambiente non è trovato sul server
Correzione: assicurati che i dettagli del piano di gestione siano corretti e che l'API contracts sia raggiungibile
stato 401
Motivo: molto probabilmente le credenziali fornite no disporre dei privilegi amministrativi dell'organizzazione.
Correzione: assicurati che le credenziali del piano di gestione siano corrette e che l'API contracts sia raggiungibile
stato 403
Motivo: indica che l'ambiente per cui viene eseguito il polling non è configurato come ambiente ibrido
Rimedio:assicurati che l'organizzazione abbia il flag richiesto "features.hybrid.enabled=true"
sync.OwnershipClaimedByOther
Motivo: durante l'operazione, Synchronizer ha rilevato che è in corso l'accesso alla radice del file da parte di un'altra istanza di Synchronizer. (Questo può accadere quando un file system viene condiviso tra Synchronizers.)
Correzione: risolvi il problema alla radice per assicurarti che nessuna delle due istanze di Synchronizer condivida lo stesso file system. La Il programma di sincronizzazione si sarebbe spostato in basso non recuperabile. Si assicura anche che l'altro Il sincronizzatore che accede alla stessa radice del file riceve una notifica tramite i file di proprietà.
sync.DiskExceedsAllowedCapacity
Motivo: durante l'operazione, Sincronizzatore notato che l'occupazione del disco ha superato il limite consentito limite.
Correzione: a questo punto, Synchronizer interrompe tutti i download e tenta un'operazione di pulizia dei file obsoleti. Tuttavia, questo può diventare una condizione ricorrente e l'unico modo per è assicurarsi che il sincronizzatore abbia memoria su disco sufficiente per l'esecuzione delle operazioni.
Diagnosi degli errori di download del contratto
Se in un messaggio di errore viene visualizzato il messaggio "sondaggio contratto a monte", prova a chiamare l'API contract 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 da cui il sincronizzatore scarica il piano di gestione.
curl https://apigee.googleapis.com/v1/organizations/org/environments/env/contracts/1.0 -u username