Wie Sie unerwartete Aktualisierungen der OSGi-Konfiguration nachverfolgen

Sie haben festgestellt, dass einige OSGi-Konfigurationen in Ihrer AEM unerwartet aktualisiert wurden und Sie möchten nun analysieren, wie diese Konfigurationen aktualisiert wurden.

Ziel

Sie haben festgestellt, dass einige OSGi-Konfigurationen in Ihrer AEM unerwartet aktualisiert wurden und Sie möchten nun analysieren, wie diese Konfigurationen aktualisiert wurden.

Schritte

I. Überprüfen Sie die OSGi-Installer-Konsole

Die OSGi Web-Konsole verfügt über ein Plug-In, mit dem Sie sehen können, wann OSGi-Konfigurationen angewendet wurden und woher sie stammen.

  1. Wechseln Sie zu http://host:port/system/console/osgi-installer und melden Sie sich als Administrator an

  2. Auf dieser Benutzeroberfläche wird angezeigt, welche Pakete und Konfigurationen angewendet wurden und wann.  Hierzu gehören Dateien, die über den crx-quickstart/install-Ordner angewendet werden und die im JCR (Oak)-Repository-Ordner.

II. Überprüfen Sie die error.log für verwandte Protokollmeldungen

Jedes Mal, wenn eine Konfiguration geändert wird, werden die error.log-Dateien aktualisiert.  Hier sind die wichtigsten Protokolleinträge, die Sie suchen:

  • Der JCR-Installer berücksichtigt Installationsordner, die aus dem JCR entfernt wurden:
2.02.2017 18:04:13.014 *INFO* [JcrInstaller.1] org.apache.sling.installer.provider.jcr.impl.JcrInstaller Deleting WatchedFolder:/apps/cq/core/config, path does not exist anymore
02.02.2017 18:04:13.014 *INFO* [JcrInstaller.1] org.apache.sling.installer.provider.jcr.impl.JcrInstaller Deleting WatchedFolder:/apps/cq/security/config.publish, path does not exist anymore
02.02.2017 18:04:13.014 *INFO* [JcrInstaller.1] org.apache.sling.installer.provider.jcr.impl.JcrInstaller Deleting WatchedFolder:/apps/cq/linkchecker/config, path does not exist anymore
  • Das JCR berücksichtigt die gelöschten Konfigurationen:
02.02.2017 18:04:13.214 *INFO* [JcrInstaller.1] org.apache.sling.installer.provider.jcr.impl.JcrInstaller Removing resource from OSGi installer (folder deleted): [/apps/cq/core/config/org.apache.sling.j
cr.resource.internal.JcrResourceResolverFactoryImpl.config, /apps/cq/security/config.publish/org.apache.sling.engine.impl.auth.SlingAuthenticator.config, /apps/cq/linkchecker/config/com.day.cq.rewriter.
linkchecker.impl.LinkCheckerImpl.config]
  • „OsgiInstallerImpl“ installiert Konfigurationen
02.02.2017 18:04:13.496 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Installed configuration com.day.cq.rewriter.linkchecker.impl.LinkCheckerImpl from resource TaskResource(url=jcrin
stall:/libs/cq/linkchecker/config/com.day.cq.rewriter.linkchecker.impl.LinkCheckerImpl, entity=config:com.day.cq.rewriter.linkchecker.impl.LinkCheckerImpl, state=INSTALL, attributes=[org.apache.sling.in
staller.api.tasks.ResourceTransformer=:30:, service.pid=com.day.cq.rewriter.linkchecker.impl.LinkCheckerImpl], digest=6454187f1ab4b3a78392ca3b5343814c)
02.02.2017 18:04:13.506 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Installed configuration org.apache.sling.engine.impl.auth.SlingAuthenticator from resource TaskResource(url=jcrinstall:/libs/cq/security/config.publish/org.apache.sling.engine.impl.auth.SlingAuthenticator, entity=config:org.apache.sling.engine.impl.auth.SlingAuthenticator, state=INSTALL, attributes=[org.apache.sling.installer.api.tasks.ResourceTransformer=:30:, service.pid=org.apache.sling.engine.impl.auth.SlingAuthenticator], digest=9633a84cbe99700c38f43f763b1cea1b)
02.02.2017 18:04:13.514 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Installed configuration org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl from resource TaskResource(url=jcrinstall:/libs/cq/core/config/org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl, entity=config:org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl, state=INSTALL, attributes=[org.apache.sling.installer.api.tasks.ResourceTransformer=:30:, service.pid=org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl], digest=5b1641f2ff1d3dd3992ab2626de37392)


Einige mögliche Ursachen für eine sich aktualisierende Konfiguration sind:

  • Paketfilter, der dazu führt, dass ein Ordner gelöscht wird.  Beispiel: Ein Paketfilter enthielt den gesamten Ordner /apps/cq und nicht die entsprechenden Ordner darunter.  z. B.
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/cq"/>
<filter root="/content/geometrixx"/>
</workspaceFilter>
  • Eine andere Ursache könnte ein Benutzer sein, der versehentlich die Konfiguration gelöscht hat.
  • Ein Benutzer ändert die Konfiguration über die /system/console/configMgr-Benutzeroberfläche


Um die Grundursache zu debuggen:

  • Suchen Sie nach Paketinstallationen, die diese Protokollnachrichten umgeben.  Suchen Sie in den Protokollen nach org.apache.jackrabbit.vault.packaging.impl.ZipVaultPackage Extracting
  • Durchsuchen Sie die access.log nach einem Benutzer, der in /system/console/configMgr oder /crx/de während desselben Zeitraums gepostet hat, an dem die Konfigurationen aktualisiert wurden.
Adobe-Logo

Bei Ihrem Konto anmelden