Benutzerdefinierte AEM-Protokolle werden nicht in Cloud Manager angezeigt

Benutzerdefinierte Protokollanweisungen werden in Cloud Manager nicht angezeigt, wenn der Logger für das Schreiben in eine benutzerdefinierte Protokolldatei konfiguriert ist, die OSGi-Werkskonfiguration falsch benannt ist oder die Protokollebene zu restriktiv ist. AEM as a Cloud Service unterstützt keine benutzerdefinierten Protokolldateien und stellt nur Standard-Streams wie aemerror bereit, sodass an anderer Stelle gesendete Ausgaben ignoriert werden. Durch die Korrektur des Logger-Dateipfads, des Konfigurationsdateinamens und der Protokollebene werden die erwarteten Einträge wiederhergestellt. Um das Problem zu beheben, verweisen Sie die Protokollierung auf logs/error.log und wenden Sie gültige Konfigurationswerte an.

Beschreibung description

Umgebung

  • Adobe Experience Manager as a Cloud Service
  • AEM Managed Services
  • Adobe Experience Manager Assets Essentials

Problem/Symptome

  • Benutzerdefinierte Protokolldateien wie my-custom.log oder saml.log werden in Cloud Manager nicht angezeigt.
  • Protokollanweisungen werden trotz erfolgreicher Ausführung nicht aemerror angezeigt.
  • Log Tail-Befehle schlagen beim Zugriff auf benutzerdefinierte Protokolldateien fehl.
  • INFO- oder DEBUG-Protokolleinträge werden aufgrund einer eingeschränkten Protokollebene nicht angezeigt.

Ursache

AEM as a Cloud Service erzwingt ein zentralisiertes Protokollierungsmodell, das alle Java-Protokollausgaben in logs/error.log schreibt. Daher werden alle Konfigurationen ignoriert, die benutzerdefinierte Protokolldateipfade definieren. Falsche OSGi-Logger-Konfigurationen, ungültige Dateibenennungskonventionen oder restriktive Einstellungen für die Protokollebene verhindern ebenfalls, dass Protokollanweisungen im aemerror-Stream angezeigt werden.

Lösung resolution

Führen Sie diese Schritte aus, um das Problem zu beheben

  1. Überprüfen Sie die OSGi-Logger-Konfigurationen in Ihrem Code-Repository und identifizieren Sie alle Konfigurationen, bei denen org.apache.sling.commons.log.file anstelle von logs/error.log einen benutzerdefinierten Protokolldateipfad angibt.
  2. org.apache.sling.commons.log.file Aktualisieren Sie die Logger-Konfiguration, um die unterstützte Datei zu verwenden, indem Sie sie auf logs/error.log setzen und überprüfen, ob alle zugehörigen Eigenschaften gültige Werte verwenden.
  3. Überprüfen Sie, ob der Name der Konfigurationsdatei dem erforderlichen org.apache.sling.commons.log.LogManager.factory.config-.cfg.json entspricht, und entfernen Sie ungültige Zeichen wie Tilde ( ).
  4. Überprüfen Sie die Konfiguration der Protokollebene und setzen Sie sie auf einen gültigen Kleinbuchstabenwert wie debug, info, warn oder Fehler, um sicherzustellen, dass die erwartete Ausgabe nicht eingeschränkt wird.
  5. Überprüfen Sie alle Logger-Konfigurationen und entfernen Sie doppelte oder widersprüchliche Definitionen für dasselbe Paket.
  6. Stellen Sie die aktualisierte Konfiguration über die Pipeline bereit und überprüfen Sie, ob Protokolleinträge im aemerrorProtokolldatenstrom“ in Cloud Manager angezeigt werden.

Verwandtes Lesen

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