- v1.12 (più recente)
- Versione 1.11
- Versione 1.10
- Elenco delle versioni supportate
- Versione 1.9
- Versione 1.8
- Versione 1.7
- Versione 1.6
- Versione 1.5
- Versione 1.4
- Versione 1.3
- Versione 1.2
- Versione 1.1
Versioni supportate:
Versioni non supportate:
I log sono un buon modo per risolvere i problemi dell'installazione di Apigee ibrida. Per i dettagli, consulta Logging.
Voci di log del sincronizzatore
La tabella seguente descrive i campi che vedrai nei file di log del programma di sincronizzazione.
Campo | Indica |
---|---|
org: |
Nome dell'organizzazione |
env: |
Nome ambiente |
target: |
Percorso dell'entità che rappresenta 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 del programma di sincronizzazione
Per risolvere un problema con il sincronizzatore, osserva i file di log. La tabella seguente può aiutarti a risolvere gli errori eventualmente visualizzati nei log del programma di sincronizzazione. 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 upstream per l'organizzazione e l'ambiente e abbiamo ricevuto 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 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 è terminata. 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 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 il quale viene eseguito il polling non è abilitato per gli ambienti 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 |
Risoluzione degli errori
I log sono un ottimo modo per risolvere i problemi dell'installazione. Per i dettagli, consulta Logging.
Impossibile avviare il programma di sincronizzazione
Di seguito sono riportati alcuni errori e la relativa spiegazione. Ciascuno di questi messaggi di errore inizia con un valore ErrorCode di tipo sync.xxxxx. Di seguito sono riportati i possibili codici di errore
sync.NullOrEmptyConfig
Messaggio: configurazione null o vuota fornita tramite com.apigee.sync.config
Motivo: questo messaggio di errore viene visualizzato quando le proprietà di configurazione del sincronizzatore non sono state fornite correttamente.
Soluzione: assicurati che tutte le proprietà di configurazione vengano completate con valori appropriati.
sync.ConfigFileNotFound
Motivo: il programma di sincronizzazione era 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 del programma di sincronizzazione
sync.IncorrectSettings
Motivo: nella configurazione del sincronizzatore mancano una o più proprietà di configurazione obbligatorie oppure si tratta di valori che non rientrano nell'intervallo previsto. L'errore dovrebbe avere ulteriori dettagli sulla proprietà esatta che causa il problema. Questi errori sono integrati nel parser per garantire che gli errori di impostazione vengano rilevati anche prima dell'avvio del servizio.
Nella tabella seguente sono elencati alcuni possibili errori ErrorSettings possibili:
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 Nuovi tentativi nella sezione controlPlane ha superato il limite 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 al campo connectionTimeout nella sezione controlPlane è inferiore a quello 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 di 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 obbligatorioenvironmentName |
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 con un indice pari a 0 ha un intervallo di polling inferiore al limite consentito di 60 |
Soluzione: correggi l'impostazione in modo da includere il blocco richiesto
sync.ReplicationRootDoesNotExist
Motivo: il sincronizzatore è stato fornito con una radice di replica inesistente
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 probabilmente è un file
Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.InvalidControlPlaneURL
Motivo: il programma di sincronizzazione è stato fornito con un URL di configurazione vuoto
Soluzione: assicurati che la cartella principale fornita esista e sia scrivibile
sync.InvalidControlPlaneSubscriptionURL
Motivo: nel programma di sincronizzazione è stato fornito un URL di configurazione errato, incompleto o vuoto per la creazione dell'abbonamento.
Soluzione:correggi l'URL in un URL di configurazione valido per la creazione di abbonamenti Pub/Sub al fine di gestire gli indicatori del piano di controllo.
sync.InvalidControlPlaneUnsubscriptionURL
Motivo: nel programma di sincronizzazione è stato fornito un URL di configurazione errato, incompleto o vuoto per l'eliminazione dell'abbonamento.
Soluzione:correggi l'URL in un URL di configurazione valido per l'eliminazione della sottoscrizione Pub/Sub al fine di gestire gli indicatori del piano di controllo.
sync.CannotCreateEnvironmentFolder
Motivo: il sincronizzatore ha cercato di creare una cartella per la replica dell'ambiente qa, ma non è riuscito a creare la cartella richiesta
Soluzione:assicurati che la radice di replica non abbia un percorso in conflitto con lo stesso nome, che è di sola lettura per un file
sync.DuplicateEnvironmentEntries
Motivo: lo stesso ambiente è stato aggiunto più volte nella configurazione.
Rimedio: ogni ambiente può essere specificato solo una volta.
sync.DiskExceedsAllowedCapacity
Motivo: il disco di archiviazione fornito raggiunge già la soglia di capacità fornita tramite le proprietà di configurazione.
Soluzione:assicurati che lo spazio su disco sia sufficiente oppure controlla se le impostazioni di archiviazione possono essere modificate per liberare spazio su disco.
sync.OwnershipClaimFailed
Motivo: il sincronizzatore ha provato a rivendicare la proprietà della cartella dell'ambiente, ma l'operazione non è riuscita
Rimedio: ciascun sincronizzatore tenterà innanzitutto di verificare di essere l'unico Autore del file system. L'errore indica il percorso e il motivo dell'errore. Affronta la causa principale
Errori di sincronizzazione durante il runtime
Durante il runtime possono verificarsi i seguenti errori del programma di sincronizzazione.
sync.replicators.PollReturnedError
Il messaggio associato includerà lo stato upstream. Di seguito sono riportati gli stati di errore
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 dei contratti sia raggiungibile
stato 404
Motivo: molto probabilmente il nome dell'organizzazione/env non è presente sul server
Soluzione: assicurati che i dettagli del piano di gestione siano corretti e che l'API dei contratti sia raggiungibile
stato 401
Motivo: molto probabilmente le credenziali fornite non hanno i privilegi di amministratore dell'organizzazione.
Soluzione: assicurati che le credenziali del piano di gestione siano corrette e che l'API dei contratti sia raggiungibile
stato 403
Motivo: indica che l'ambiente per cui viene eseguito il polling non è configurato come ambiente ibrido
Soluzione: assicurati che l'organizzazione abbia il flag richiesto "features.hybrid.enabled=true"
sync.OwnershipClaimedByOther
Motivo: durante l'operazione il sincronizzatore ha rilevato che la radice del file è accessibile a un'altra istanza del programma di sincronizzazione. (Questo può accadere quando un file system è condiviso tra sincronizzatori.)
Soluzione: risolvi il problema principale per assicurarti che nessuna istanza del programma di sincronizzazione condivida lo stesso file system. Il programma di sincronizzazione si sarebbe spostato in una posizione non recuperabile. Questo assicura anche che l'altro sincronizzatore che accede alla directory principale dei file riceva una notifica in merito tramite i propri file di proprietà.
sync.DiskExceedsAllowedCapacity
Motivo: durante l'operazione il sincronizzatore si è reso conto che la presenza del disco ha superato il limite consentito.
Soluzione: a questo punto il sincronizzatore interrompeva tutti i download e provava un'operazione di pulizia del file inattivo. Tuttavia, questa potrebbe diventare una condizione ricorrente e l'unico modo per eseguire un ripristino completo è assicurarsi che il sincronizzatore disponga di memoria su disco sufficiente per funzionare.
Diagnosi degli errori di download del contratto
Se in un messaggio di errore viene visualizzato "sondaggio del contratto upstream", prova a chiamare l'API del contratto e controllare i dettagli, dove il nome utente corrisponde al nome utente Apigee (il tuo indirizzo email). Il contratto rappresenta l'intera raccolta di dati che il sincronizzatore scarica dal piano di gestione.
curl https://apigee.googleapis.com/v1/organizations/org/environments/env/contracts/1.0 -u username