Felsöka integreringsproblem

Allmänna felsökningstips

Kontrollera att det inte finns några JavaScript-fel

Kontrollera om webbläsarens JavaScript-konsol visar några fel. Ohanterade fel kan förhindra att efterföljande kod körs korrekt. Om fel uppstår ska du kontrollera vilket skript som orsakar felet och i vilket område. Sökvägen till skriptet kan ge en indikation på vilken funktion skriptet tillhör.

Loggar in på komponentnivå

I vissa fall kan det vara praktiskt att lägga till ytterligare programsatser på komponentnivå. Eftersom komponenten återges kan du lägga till en temporär markering för att visa variabelvärden som kan hjälpa dig att identifiera potentiella problem. Till exempel:

<%
log.info("myVariable={}", myVariable);
%>

<!--
<%= myJspVariable %>
-->

<!--
${ myHtlVariable }
-->

Mer information om loggning finns på sidorna Loggning och Arbeta med granskningsposter och loggfiler.

Integreringsproblem med analyser

Rapportimporteraren orsakar hög CPU-/minnesanvändning

Rapportimporteraren orsakar hög CPU-/minnesanvändning eller orsakar OutOfMemoryError undantag.

Lösning

Du kan åtgärda det här problemet genom att försöka med följande:

  • Se till att det inte finns någon stor mängd registrerade PollingImporters (se avsnittet"Shutdown take a long time due to PollingImporter" nedan).
  • Kör rapportimporterare vid en viss tidpunkt på dagen med CRON-uttryck för ManagedPollingImporter-konfigurationerna i OSGi-konsolen.

Mer information om hur du skapar anpassade dataimporteringstjänster i AEM finns i följande artikel https://helpx.adobe.com/experience-manager/using/polling.html.

Avstängningen tar lång tid på grund av PollingImporter

Analyserna har utformats med en arvsmekanism i åtanke. Vanligtvis aktiverar du Analytics för en webbplats genom att lägga till en referens till en Analytics-konfiguration i sidegenskaperna Cloud Services. Konfigurationen ärvs sedan automatiskt till alla undersidor utan att du behöver referera till den igen, såvida inte en sida kräver en annan konfiguration. När du lägger till en referens till en plats skapas också automatiskt flera noder (12 för AEM 6.3 och tidigare eller 6 för AEM 6.4) och senare) av typen cq;PollConfig som instansierar PollingImporters som används för att importera Analytics-data till AEM. Resultatet blir:

  • Många sidor som refererar till Analytics leder till en stor mängd PollingImporters.
  • Om du dessutom kopierar och klistrar in sidor med en referens till en Analytics-konfiguration dupliceras dess PollingImporters.

Lösning

För det första kan en analys av error.log ge dig lite information om mängden aktiva eller registrerade PollingImporters. Till exempel:

# Count PollingImporter entries
$ sed -n "s/.*(aem-analytics-integration-.*).*target=\(.*\),interval.*/\1/p" error.log | wc -l
86415
# Count PollingImporter entries for last30days
$ sed -n "s/.*(aem-analytics-integration-last30Days).*target=\(.*\),interval.*/\1/p" error.log | wc -l
14531
# Count unique paths of PollingImporter registrations
sed -n "s/.*(aem-analytics-integration-.*).*target=\(.*\)\/jcr:content.*/\1/p" error.log | sort | uniq -c
28115

För det andra måste du se till att endast de översta sidorna (högst upp i hierarkin) har en analyskonfiguration som refereras.

Mer information om hur du skapar anpassade dataimporteringstjänster i AEM finns i följande artikel https://helpx.adobe.com/experience-manager/using/polling.html.

DTM(Legacy) Issues

DTM-skripttaggen återges inte i sidkällan

Skripttaggen DTM inkluderas inte korrekt på sidan även om konfigurationen har refererats till på fliken Cloud Services.

Lösning

Du kan åtgärda problemet genom att göra följande:

  • Se till att krypterade egenskaper kan dekrypteras (observera att krypteringen kan använda olika automatiskt genererade nycklar för varje AEM). Mer information finns också i Krypteringsstöd för konfigurationsegenskaper.

  • Publicera konfigurationerna i /etc/cloudservices/dynamictagmanagement igen

  • Kontrollera åtkomstkontrollistor på /etc/cloudservices. Åtkomstkontrollistorna ska vara:

    • tillåta, jcr:read; webservice-support-service-libfinder
    • tillåta, jcr:read; alla, rep:glob:*/defaults/*
    • tillåta, jcr:read; alla, rep:glob:*/defaults
    • tillåta, jcr:read; alla, rep:glob:*/public/*
    • tillåta, jcr:read; alla, rep:glob:*/public

Mer information om hur du hanterar åtkomstkontrollistor finns på sidan Användaradministration och -säkerhet.

Målintegreringsproblem

Målinnehåll visas inte i förhandsgranskningsläget när anpassade sidkomponenter används

Problemet inträffar eftersom anpassade sidkomponenter inte innehåller rätt JSP- eller klientbibliotek som hanterar DTM-målintegreringarna.

Lösning

Du kan testa följande lösningar:

  • Kontrollera att det anpassade headlibs.jsp (om det finns /apps/<CUSTOM-COMPONENTS-PATH>/headlibs.jsp) innehåller följande:
<%@include file="/libs/cq/cloudserviceconfigs/components/servicelibs/servicelibs.jsp" %>
<sly data-sly-resource="${'contexthub' @ resourceType='granite/contexthub/components/contexthub'}"/>
  • Kontrollera att det anpassade head.html (om det finns /apps/<CUSTOM-COMPONENTS-PATH>/head.html) inte selektivt inkluderar specifika integrationsrubriker som i exemplet nedan:
<!-- DO NOT MANUALLY INCLUDE SPECIFIC CLOUD SERVICE HEADLIBS LIKE THIS -->
<meta data-sly-include="/libs/cq/dtm/components/dynamictagmanagement/headlibs.jsp" data-sly-unwrap/>

servicelibs.jsp lägger till de JavaScript-objekt för analys som krävs och läser in molntjänstbiblioteken som är kopplade till webbplatsen. För måltjänsten läses biblioteken in via /libs/cq/analytics/components/testandtarget/headlibs.jsp

Vilken biblioteksuppsättning som läses in beror på vilken typ av målklientbibliotek ( mbox.js eller at.js) som används i målkonfigurationen.

När du använder DTM för att leverera mbox.js eller at.js måste du se till att biblioteken är inlästa innan innehållet återges. Om du använder tagghanteringssystem som läser in dessa bibliotek asynkront kan det uppstå problem när målspecifik JavaScript-kod körs.

Mer information finns på sidan Utveckla för riktat innehåll.

Felmeddelandet"Report Suite ID saknas i AppMeasurement-initieringen" visas i webbläsarkonsolen

Problemet kan uppstå när Adobe Analytics implementeras på webbplatsen med DTM och använder anpassad kod. Orsaken är att s = new AppMeasurement() används för att instansiera s-objektet.

Lösning

Använd s_gi i stället för instansieringsmetoden new AppMeasurement. Till exempel:

var s_account="INSERT-RSID-HERE"
var s=s_gi(s_account)

Ett standarderbjudande visas slumpmässigt i stället för rätt erbjudande

Det här problemet kan ha flera orsaker:

  • Inläsning av målklientbibliotek ( mbox.js eller at.js) asynkront med hjälp av tagghanteringssystem från tredje part kan göra att målanpassning bryts slumpmässigt. Målbiblioteken ska läsas in synkront i sidhuvudet. Detta gäller alltid när biblioteken levereras från AEM.

  • Läsa in två målklientbibliotek ( at.js) samtidigt, till exempel ett med DTM och ett med Target-konfigurationen i AEM. Detta kan orsaka konflikter för adobe.target-definitionen om versionerna at.js skiljer sig åt.

Lösning

Du kan testa följande lösningar:

  • Kontrollera att kundkoden som läser in DTM-liknande bibliotek (som i sin tur läser in Target-biblioteken) körs synkront i sidhuvudet.
  • om webbplatsen är konfigurerad att använda DTM för att leverera målbibliotek kontrollerar du att alternativet Clientlib som levereras av DTM är markerat i målkonfigurationen för platsen.

Ett standarderbjudande visas alltid i stället för rätt erbjudande när AT.js 1.3+ används

Ut ur kartongen AEM 6.2 och 6.3 är inte kompatibla med AT.js version 1.3.0+. Med AT.js version 1.3.0 som inför parametervalidering för sina API:er kräver adobe.target.applyOffer() en mbox-parameter som inte anges av atjs-itegration.js-koden.

Lösning

Så här löser du problemet: redigera atjs-itegration.js och lägg till fältet "mbox": mboxName i parameterobjektet för adobe.target.applyOffer():

adobe.target.getOffer({
    "mbox": mboxName,
    "params": params,
    "success": function (response) {
        adobe.target.applyOffer({
            "mbox": mboxName, //<--- ADDED PARAM
            "selector": "#" + mboxName,
            "offer": response
        })
    },

Sidan Mål och inställningar visar inte avsnittet Rapporteringskällor

Det här problemet är troligen ett A4T Analytics Cloud Configuration provisioneringsproblem.

Lösning

Du måste verifiera att A4T är korrekt aktiverat för ditt Target-konto genom att skicka följande verifieringsbegäran till AEM:

http://localhost:4502/etc/cloudservices/testandtarget/<YOUR-CONFIG>/jcr:content.a4t.json

{
    "a4tEnabled": true,
    "sharedsecret": "SECRET",
    "proxyUrl": "/libs/cq/contentinsight/content/proxy.reportingservices.json",
    "active": "true",
    "pageName": "",
    "url": "https://api5.omniture.com/rs/0.5/",
    "username": "USER@DOMAIN"
}

Om svaret innehåller raden a4tEnabled:false ska du kontakta Adobe kundtjänst för att få ditt konto etablerat korrekt.

Användbara mål-API:er

Nedan visas två mål-API:er som kan vara användbara vid felsökning av Target-problem:

  • Hämta målslutpunkten för en angiven klientkod
https://admin.testandtarget.omniture.com/rest/v1/endpoint/<CLIENTCODE>.json

{"api":"https://admin<N>.testandtarget.omniture.com/admin/rest/v1"}
  • Hämta en klientprofil
https://admin<N>.testandtarget.omniture.com/admin/rest/v1/clients/<CLIENT>?email=<EMAIL>&password=<PASSWORD>

Response for N=4, CLIENT-dayintegrationintern
{
    "clientCode": "dayintegrationintern",
    "companyName": "Day Integration - Internal",
    "omnitureCompanyId": "Day Integration Internal",
    "softTraxId": -1,
    "address1": "XYZ",
    "city": "San Francisco",
    "state": "ca",
    "zip": "94107",
    "country": "UNITED STATES",
    "locale": "de_DE",
    "timeZone": "Europe/Berlin",
    "phone": "XX-XX-XXXX",
    "serviceLevel": "Up to 100,000",
    "privileges": [
        "a4t",
        "hosts",
        "TnT-SC-integration",
        "mvt",
        "steps",
        "testing-campaigns",
        "view-snapshot",
        "on-site-editor",
        "optimizing-campaign",
        "third-party-id-support",
        "landing-page-campaigns",
        "segment",
        "rest-create-user",
        "advanced-targeting",
        "mobile-device-targeting",
        "beta",
        "geolocation"
    ]
}

På denna sida