Como rastrear atualizações de configuração do OSGi inesperadas

Você observou que algumas configurações OSGi foram atualizadas inesperadamente em seu ambiente AEM e gostaria de analisar como essas configurações foram atualizadas.

Objetivo

Você observou que algumas configurações OSGi foram atualizadas inesperadamente em seu ambiente AEM e gostaria de analisar como essas configurações foram atualizadas.

Etapas

I. Revise o console web do instalador do OSGi

O console web do OSGi possui um plug-in que permite visualizar quando as configurações do OSGi foram aplicadas e de onde elas vieram.

  1. Vá para http://host:port/system/console/osgi-installer e faça logon como administrador.

  2. Nesta interface do usuário, ele mostra quais pacotes e configurações foram aplicados e quando.  Isso inclui arquivos aplicados por meio da pasta crx-quickstart/install e de pastas de instalação do repositório JCR (Oak).

II. Revise os arquivos error.log para mensagens de log relacionadas

Toda vez que uma configuração é alterada, os arquivos error.log são atualizados.  Aqui estão as mensagens de log importantes a serem observadas:

  • O JCR Installer observa as pastas de instalação removidas do repositório do JCR:
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
  • O JCR Installer observa as configurações que estão sendo excluídas:
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 instala configurações
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)


Algumas causas possíveis para uma configuração ser atualizada são:

  • Um filtro de pacote que faz com que uma pasta seja excluída.  Por exemplo, se um filtro de pacote inclui toda a pasta /apps/cq em vez de pastas específicas sob ela.  Por exemplo:
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/cq"/>
<filter root="/content/geometrixx"/>
</workspaceFilter>
  • Outra causa pode ser um usuário acidentalmente excluir a configuração
  • Um usuário modificar a configuração através da interface /system/console/configMgr


Para depurar a causa raiz:

  • Procure por instalações de pacotes ao redor dessas mensagens de log que você pode procurar pela instalação do pacote.  Procure no log por org.apache.jackrabbit.vault.packaging.impl.ZipVaultPackage Extracting
  • Pesquise no access.log por um usuário postando em /system/console/configMgr ou /crx/de durante o mesmo período de tempo em que as configurações foram atualizadas
Logotipo da Adobe

Fazer logon em sua conta