Foutopsporing AEM SDK met behulp van logbestanden

Toegang tot de logboeken van de AEM SDK, of de lokale QuickStart Jar of de Hulpmiddelen van Dispatcher van AEM SDK kunnen zeer belangrijke inzichten in het zuiveren AEM toepassingen verstrekken.

Logbestanden AEM

De logboeken handelen als frontline voor het zuiveren AEM toepassingen, maar zijn afhankelijk van het adequate registreren in de opgestelde AEM toepassing. De Adobe raadt aan om de lokale ontwikkelings- en AEM as a Cloud Service Dev-logboekconfiguraties zo vergelijkbaar mogelijk te houden, aangezien deze de zichtbaarheid van logbestanden in de lokale QuickStart- en AEM as a Cloud Service Dev-omgevingen van de AEM SDK normaliseert, waardoor de configuratie-tweeling en de herimplementatie worden beperkt.

Het AEM Archieftype van het Projectvormt registreren op het niveau van DEBUG voor de pakketten van Java van uw AEM toepassing voor lokale ontwikkeling via de Sling Logger OSGi configuratie die bij wordt gevonden

ui.apps/src/main/content/jcr_root/apps/example/config/org.apache.sling.commons.log.LogManager.factory.config-example.cfg.json

die zich aanmeldt bij de error.log .

Als het standaard registreren voor lokale ontwikkeling ontoereikend is, kan het ad hoc registreren via de lokale het Webconsole van de Steun van het Logboek van SDK van AEM lokale QuickStart, bij (/system/console/slinglog) worden gevormd, nochtans wordt het niet geadviseerd ad hoc veranderingen aan Git voort te zetten tenzij deze zelfde logboekconfiguraties ook op de milieu's van AEM as a Cloud Service Dev nodig zijn. Wijzigingen via de Log Support-console blijven rechtstreeks doorgevoerd in de lokale opslagruimte van de AEM SDK.

Java-loginstructies kunnen worden weergegeven in het bestand error.log :

$ ~/aem-sdk/author/crx-quickstart/logs/error.log

Vaak is het handig om de error.log die de uitvoer naar de terminal stroomt, te 'staart'.

Dispatcher-logboeken

Dispatcher-logboeken worden uitgevoerd om te worden stopgezet wanneer bin/docker_run wordt aangeroepen, maar logbestanden kunnen rechtstreeks worden geopend in de Docker-inhoud.

De toegang tot van logboeken in de container van de Dokker dispatcher-tools-access-logs

Dispatcher-logbestanden kunnen rechtstreeks worden geopend in de Docker-container op /etc/httpd/logs .

$ docker ps

# locate the CONTAINER ID associated with "adobe/aem-ethos/dispatcher-publisher" IMAGE
CONTAINER ID        IMAGE                                       COMMAND                  CREATED             STATUS              PORTS                  NAMES
46127c9d7081        adobe/aem-ethos/dispatcher-publish:2.0.23   "/docker_entrypoint.…"   6 seconds ago       Up 5 seconds        0.0.0.0:8080->80/tcp   wonderful_merkle

$ docker exec -it <CONTAINER ID> /bin/sh

/ #
/ # cd /etc/httpd/logs
/ # ls
    dispatcher.log          healthcheck_access_log  httpd_access.log        httpd_error.log

# When finished viewing the logs files, exit the Docker container's shell
/# exit

<CONTAINER ID> in docker exec -it <CONTAINER ID> /bin/sh moet met doelDocker worden vervangen CONTAINER identiteitskaart die van het docker ps bevel wordt vermeld.

De Docker-logbestanden worden naar het lokale bestandssysteem gekopieerd dispatcher-tools-copy-logs

Dispatcher-logbestanden kunnen vanuit de Docker-container in /etc/httpd/logs naar het lokale bestandssysteem worden gekopieerd voor inspectie met uw favoriete programma voor logbestandsanalyse. Merk op dat dit een punt-in-tijd exemplaar is, en geen updates in real time aan de logboeken verstrekt.

$ docker ps

# locate the CONTAINER ID associated with "adobe/aem-ethos/dispatcher-publisher" IMAGE
CONTAINER ID        IMAGE                                       COMMAND                  CREATED             STATUS              PORTS                  NAMES
46127c9d7081        adobe/aem-ethos/dispatcher-publish:2.0.23   "/docker_entrypoint.…"   6 seconds ago       Up 5 seconds        0.0.0.0:8080->80/tcp   wonderful_merkle

$ docker cp -L <CONTAINER ID>:/etc/httpd/logs logs
$ cd logs
$ ls
    dispatcher.log          healthcheck_access_log  httpd_access.log        httpd_error.log

<CONTAINER_ID> in docker cp <CONTAINER_ID>:/var/log/apache2 ./ moet met doelDocker worden vervangen CONTAINER identiteitskaart die van het docker ps bevel wordt vermeld.

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69