HINWEIS: Einige Aspekte dieses Produkts befinden sich in der Betaphase. Die hybriden Installationsoptionen sind allgemein verfügbar. Wenn Sie am Beta-Programm teilnehmen möchten, wenden Sie sich an Ihren Apigee-Vertreter.

Synchronizer-Logs

Logs sind eine gute Möglichkeit, um Probleme mit Ihrer Apigee-Hybridinstallation zu beheben. Weitere Informationen finden Sie unter Logging.

Synchronizer-Logeinträge

In der folgenden Tabelle werden die Felder beschrieben, die Sie in Synchronizer-Logdateien sehen.

Feld Angabe
org: Name der Organisation
env: Umgebungsname
target: Pfad der Entität, für die der Logeintrag steht
action: Aktion "SYNC=Upstream-Synchronisierung"

REPLICATE=Aktion zum Replizieren/Herunterladen

context-id: Die Vertragsversion, sofern zutreffend

Beispiel:

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

Synchronizer-Logs

Wenn Sie ein Problem mit dem Synchronizer beheben müssen, sehen Sie sich die Logdateien an. Die folgende Tabelle kann beim Beheben von Fehlern in den Synchronizer-Logs hilfreich sein. Siehe auch Logging.

Logeintrag Bedeutung
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 Upstream-Abfrage für die Organisation und Umgebung wurde gestartet und die URL der Verwaltungsebene wurde angegeben
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 Der Vertrag wurde erfolgreich empfangen
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 Eine Vertragsversion wurde empfangen
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 Gibt den Start der Replikation an. MDC-Felder geben die Details dazu an, was repliziert wird
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 Zeigt an, dass die Replikation beendet wurde. MDC-Felder geben die Details dazu an, was repliziert wird
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 Zeigt einen Replikationsfehler an
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 Zeigt das Ende eines Synchronisierungszyklus an und bietet auch die Zeit für die Synchronisierung
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 Gibt an, dass kein neuerer Vertrag verfügbar war.
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 Gibt an, dass die Verwaltungsebene nicht erreichbar ist
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 Gibt an, dass die Managementebene für den Vertrag eine 404-Antwort zurückgegeben hat.
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 Gibt an, dass die Umgebung für das Abfragen nicht aktiviert ist
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 Bei bereitgestellten Anmeldedaten treten Probleme auf

Fehlerbehebung

Logs sind eine gute Möglichkeit, Probleme mit Ihrer Installation zu beheben. Weitere Informationen finden Sie unter Logging.

Synchronizer startet nicht

Im Folgenden sind einige Fehler und ihre Behebung aufgeführt. Jede dieser Fehlermeldungen beginnt mit einem ErrorCode vom Typ sync.xxxxx. Im Folgenden finden Sie mögliche Fehlercodes.

sync.NullOrEmptyConfig

Nachricht:Null oder leere Konfiguration über com.apigee.sync.config bereitgestellt

Grund: Diese Fehlermeldung wird angezeigt, wenn die Konfigurationsattribute des Synchronizers nicht ordnungsgemäß bereitgestellt wurden.

Lösung: Stellen Sie sicher, dass alle Konfigurationseigenschaften mit den entsprechenden Werten gefüllt sind.

sync.ConfigFileNotFound

Grund: Der Synchronizer wurde eingestellt, dass seine Konfigurationsattribute aus einer Datei gelesen werden, die Datei aber nicht geladen werden konnte.

Lösung:Achten Sie darauf, dass die Datei für den Synchronizer-Startvorgang verfügbar und zugänglich ist.

sync.IncorrectSettings

Ursache: In der Synchronizer-Konfiguration fehlt ein oder mehrere erforderliche Konfigurationsattribute oder Werte außerhalb des erwarteten Bereichs. Der Fehler sollte weitere Details zur genauen Eigenschaft enthalten, die das Problem verursacht. Diese Fehler sind in den Parser integriert, um dafür zu sorgen, dass Einstellungs- und Einstellungsfehler bereits vor Beginn des Dienstes erkannt werden.

In der folgenden Tabelle sind einige mögliche ErroringSettings-Fehler aufgeführt:

Error Wo liegt das Problem?
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/retries numeric instance is greater than the required maximum (maximum: 3, found: 20) Wert, der im Feld "controlPlane" an Wiederholungen übergeben wird
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/connectionTimeout numeric instance is lower than the required minimum (minimum: 10, found: 1) Der Wert im Feld "connectionTimeout" im Abschnitt "controlPlane" ist niedriger als zulässig.
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane object has missing required properties ([\"contractProvider\"]) Im Abschnitt "controlPlane" fehlt das Pflichtfeld "contractProvider"
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/controlPlane/contractProvider string \"http://\\uapi.apigee.com\" is not a valid URI Der Vertragsanbieter-URI ist kein gültiger URI
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 Das Umgebungs-Array muss mindestens eine Umgebung haben
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments/0 object has missing required properties ([\"environmentName\"]) In der Umgebung bei Index 0 fehlt das Pflichtfeld "GetListName"
configuration.json.IncorrectSettings: [com.apigee.sync.config.json] Error:/environments/0 object has missing required properties ([\"organizationName\"]) In der Umgebung an Index 0 fehlt das erforderliche Feld "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) In der Umgebung bei Index 0 hat ein Abfrageintervall, das unter das zulässige Limit von 60 gilt

Lösung:Korrigieren Sie den erforderlichen Block in der Einstellung.

sync.ReplicationRootDoesNotExist

Ursache: Der Synchronizer wurde mit einem Replikations-Root bereitgestellt, das nicht existiert.

Remedy:Der bereitgestellte Stammordner muss vorhanden sein und schreibbar sein.

sync.ReadOnlyReplicationRoot

Ursache: Der Synchronizer wurde mit einem Replikations-Root bereitgestellt, der keine Schreibberechtigungen hat.

Remedy:Der bereitgestellte Stammordner muss vorhanden sein und schreibbar sein.

sync.ReplicationRootNotADir

Ursache: Der Synchronizer hat einen Replikations-Root bereitgestellt, der möglicherweise eine Datei ist.

Remedy:Der bereitgestellte Stammordner muss vorhanden sein und schreibbar sein.

sync.InvalidControlPlaneURL

Ursache:Der Synchronizer hat eine Konfigurations-URL bereitgestellt, die leer ist.

Remedy:Der bereitgestellte Stammordner muss vorhanden sein und schreibbar sein.

sync.InvalidControlPlaneSubscriptionURL

Ursache: Das Synchronizer hat eine falsche, unvollständige oder leere Konfigurations-URL für die Aboerstellung angegeben.

Lösung: Korrigieren Sie die URL in eine gültige Konfigurations-URL für die Pub/Sub-Abonnementerstellung, um Signale von der Steuerungsebene zu verarbeiten.

sync.InvalidControlPlaneUnsubscriptionURL

Grund: Der Synchronizer hat eine falsche, unvollständige oder leere Konfigurations-URL für das Löschen des Abos erhalten.

Lösung:Korrigieren Sie die URL in eine gültige Konfigurations-URL, damit Pub/Sub-Abos gelöscht werden können, um Signale der Steuerungsebene zu verarbeiten.

sync.CannotCreateEnUmweltordner

Grund: Der Synchronizer hat versucht, einen Ordner zur Replikation der Umgebung "qa" zu erstellen, konnte jedoch den erforderlichen Ordner nicht erstellen.

Lösung:Achten Sie darauf, dass der Replikationsstamm keinen in Konflikt stehenden Pfad mit dem gleichen Namen hat, der entweder schreibgeschützt eine Datei ist.

sync.DuplicateEnvironmentEntries

Grund:Dieselbe Umgebung wurde in der Konfiguration mehrmals hinzugefügt.

Lösung: Jede Umgebung kann nur einmal angegeben werden.

sync.DiskExceededAllowedCapacity

Ursache: Das bereitgestellte Speicherlaufwerk hat bereits die in den Konfigurationsattributen vorgegebene Schwellenwertkapazität.

Lösung: Sorgen Sie für genügend Speicherplatz oder prüfen Sie, ob die Speichereinstellungen angepasst werden können, um mehr Speicherplatz zu ermöglichen.

sync.OwnershipClaimFailed

Grund: Synchronizer hat versucht, die Eigentumsrechte im Umgebungsordner zu beanspruchen, aber fehlgeschlagen

Remedy:Jeder Synchronizer versucht zuerst, dafür zu sorgen, dass es sich um einen einzelnen Autor im Dateisystem handelt. Der Fehler gibt den Pfad und den Grund für den Fehler an. Beheben Sie die Ursache

Synchronizer-Fehler während der Laufzeit

Die folgenden Synchronizer-Fehler können während der Laufzeit auftreten.

sync.replicators.PollReturnedError

Die verknüpfte Nachricht enthält den Status "Upstream". Im Folgenden sind die Fehlerstatus aufgeführt:

Status 0

Ursache: Zeigt ein Verbindungsproblem an. Die Verwaltungsebene war nicht erreichbar

Lösung :Prüfen Sie, ob die Details der Managementebene korrekt sind und die Contracts API erreichbar ist.

Status 404

Grund: Wahrscheinlich wurde der Name der Organisation bzw. der Umgebung nicht auf dem Server gefunden

Lösung :Prüfen Sie, ob die Details der Managementebene korrekt sind und die Contracts API erreichbar ist.

Status 401

Ursache:Die angegebenen Anmeldedaten haben wahrscheinlich nicht die Administratorberechtigungen der Organisation.

Lösung: Prüfen Sie, ob die Anmeldedaten für die Verwaltungsebene korrekt sind und die contracts API erreichbar ist.

Status 403

Grund: Gibt an, dass die abgefragte Umgebung nicht als Hybridumgebung eingerichtet ist.

Lösung:Achten Sie darauf, dass die Organisation das erforderliche Flag "features.hybrid.enabled=true" hat.

sync.OwnershipClaimedByOther

Grund: Während des Vorgangs-Synchronizer wurde festgestellt, dass auf eine andere Instanz von Synchronizer auf das Dateistammverzeichnis zugegriffen wird. (Dies kann passieren, wenn ein Dateisystem von Synchronizers gemeinsam genutzt wird.)

Lösung: Damit beheben Sie das Root-Problem, damit zwei Synchronizer-Instanzen dasselbe Dateisystem verwenden. Der Synchroniser hat sich selbst gekennzeichnet und wäre hier nicht wiederherstellbar. Der andere Synchronizer, der auf denselben Dateistammpunkt zugreift, wird ebenfalls darüber benachrichtigt.

sync.DiskExceededAllowedCapacity

Grund: Während des Vorgangs Synchronisierer wurde festgestellt, dass die Speicherauslastung das zulässige Limit überschritten hat.

Lösung: Der Synchronisation würde alle Downloads abbrechen und einen veralteten Dateibereinigungsvorgang ausführen. Dies kann jedoch zu einer wiederkehrenden Bedingung werden. Die einzige Möglichkeit zur vollständigen Wiederherstellung besteht darin, dafür zu sorgen, dass der Synchronizer über genügend Festplattenspeicher verfügt.

Fehler beim Herunterladen von Verträgen diagnostizieren

Wenn Sie in einer Fehlermeldung "Upstream-Vertragsstimmung" sehen, rufen Sie die Vertrags-API auf und prüfen Sie die Details, wobei der Nutzername Ihr Apigee-Nutzername (Ihre E-Mail-Adresse) ist. Der Vertrag stellt die gesamte Sammlung von Daten dar, die der Synchronizer von der Verwaltungsebene heruntergeladen.

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