Beheben von HTTP 500-Fehlern in einer einzelnen AEM-Veröffentlichungsinstanz aufgrund von OSGi-Bundle-Inkonsistenz

In diesem Artikel wird beschrieben, wie Sie HTTP 500-Fehler beheben können, die in einer einzigen Adobe Experience Manager (AEM)-Veröffentlichungsinstanz auftreten, wenn OSGi-Bundles nach einem abnormalen oder unsauberen Neustart nicht korrekt aufgelöst und aktiviert werden können.

Beschreibung description

Umgebung

Bereitstellung von Adobe Experience Manager (AEM) Managed Services-Veröffentlichungsinstanzen mit mehreren Instanzen (alle unterstützten Versionen)

Problem/Symptome

  • Eine Veröffentlichungsinstanz gibt eine hohe Anzahl von HTTP-500 über mehrere Programm-URLs hinweg zurück.
  • Andere Veröffentlichungsinstanzen stellen den Traffic weiterhin normal bereit.
  • Anwendungsprotokolle zeigen wiederholte HTL-/Sightly-Kompilierungsfehler an, da Java-Klassen nicht aufgelöst werden können.
  • Das OSGi-Framework protokolliert Fehler bei der Bundle-Auflösung und nicht aufgelöste Abhängigkeiten für erforderliche Anwendungspakete.

Ursache

Ein abnormaler oder unsauberer Neustart führt dazu, dass das OSGi-Framework auf der betroffenen Veröffentlichungsinstanz in einem inkonsistenten Zustand bleibt. Erforderliche Anwendungspakete können nicht aufgelöst und aktiviert werden. Daher sind für die HTL-Kompilierung benötigte Klassen nicht verfügbar und Anfragen an betroffene Programm-URLs geben HTTP-500-Fehler zurück.

Lösung resolution

Gehen Sie wie folgt vor, um das Problem zu beheben.

  1. Entfernen Sie die betroffene Veröffentlichungsinstanz von der Lastenausgleichs-Rotation, um weitere Auswirkungen auf die Kundschaft zu verhindern.

  2. Starten Sie die betroffene Veröffentlichungsinstanz neu oder ersetzen Sie sie durch einen sauberen, kontrollierten Prozess.

  3. Nachdem die Instanz neu gestartet oder ersetzt wurde, stellen Sie sicher, dass alle erforderlichen OSGi-Bundles aufgelöst und aktiv sind:

    • Rufen Sie die AEM-Systemkonsole auf (normalerweise unter /system/console/bundles) und überprüfen Sie, ob alle Bundles den Status Aktiv aufweisen.

    • Vergewissern Sie sich, dass die Anwendungsseiten ohne Kompilierungsfehler erfolgreich gerendert werden.

    • Überwachen Sie die Fehlerprotokolle auf weitere Fehler bei der Bundle-Auflösung oder HTL-Kompilierung.

  4. Als vorbeugende Maßnahme sollten Sie nach jedem geplanten oder ungeplanten Neustart eine Bereitschaftsprüfung implementieren, um sicherzustellen, dass alle Bundles aktiv sind, bevor Sie die Instanz wieder in den Service aufnehmen.

recommendation-more-help
experience-cloud-kcs-help-kbarticles