Controlla se nella console JavaScript del browser vengono visualizzati degli errori. Errori non gestiti potrebbero impedire la corretta esecuzione del codice successivo. In caso di errori, controlla quale script sta causando l’errore e in quale area. Il percorso dello script potrebbe fornire un'indicazione delle funzionalità a cui appartiene lo script.
In alcuni casi, potrebbe essere utile aggiungere istruzioni aggiuntive a livello di componente. Poiché il componente è sottoposto a rendering, puoi aggiungere un markup temporaneo per mostrare valori variabili che potrebbero aiutarti a identificare potenziali problemi. Esempio:
<%
log.info("myVariable={}", myVariable);
%>
<!--
<%= myJspVariable %>
-->
<!--
${ myHtlVariable }
-->
Per ulteriori dettagli sulla registrazione, consulta la sezione Registrazione e Utilizzo dei record di controllo e dei file di registro pagine.
L’importazione dei report causa un elevato utilizzo della CPU/memoria o causa OutOfMemoryError
eccezioni.
Per risolvere questo problema è possibile provare quanto segue:
ManagedPollingImporter
configurazioni Console OSGi.Per ulteriori dettagli sulla creazione di servizi di importazione dati personalizzati in AEM, leggi il seguente articolo https://helpx.adobe.com/experience-manager/using/polling.html.
Analytics è stato progettato pensando a un meccanismo di ereditarietà. Di solito, per abilitare Analytics per un sito, aggiungi un riferimento a una configurazione di Analytics all’interno delle proprietà della pagina Cloud Services scheda . La configurazione viene quindi ereditata automaticamente da tutte le sottopagine senza la necessità di farvi nuovamente riferimento, a meno che una pagina non richieda una configurazione diversa. Aggiungendo un riferimento a un sito vengono automaticamente creati diversi nodi (12 per AEM 6.3 e versioni precedenti o 6 per AEM 6.4 e versioni successive) del tipo cq;PollConfig
che crea un'istanza di PollingImporter utilizzata per importare i dati di Analytics in AEM. Di conseguenza:
In primo luogo, l'analisi della error.log potrebbe darti qualche idea sulla quantità di PollingImporter attivi o registrati. Esempio:
# 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
In secondo luogo, assicurati che solo le pagine principali (alte nella gerarchia) abbiano una configurazione di Analytics a cui fare riferimento.
Per ulteriori dettagli sulla creazione di servizi di importazione dati personalizzati in AEM, leggi il seguente articolo https://helpx.adobe.com/experience-manager/using/polling.html.
La DTM il tag script non è incluso correttamente nella pagina anche se è stato fatto riferimento alla configurazione nelle proprietà della pagina Cloud Services scheda .
Per risolvere il problema, prova quanto segue:
Assicurati che le proprietà crittografate possano essere decrittografate (nota che la crittografia potrebbe utilizzare una chiave generata automaticamente diversa in ogni istanza di AEM). Per ulteriori dettagli, leggere anche Supporto crittografia per le proprietà di configurazione.
Ripubblica le configurazioni trovate in /etc/cloudservices/dynamictagmanagement
Controlla ACL su /etc/cloudservices
. Le ACL devono essere:
Per ulteriori informazioni sulla gestione degli ACL, consulta la sezione Amministrazione degli utenti e sicurezza pagina.
Questo problema si verifica perché i componenti di pagina personalizzati non includono le librerie client o JSP corrette che gestiscono le integrazioni DTM di Target.
Puoi provare le seguenti soluzioni:
headlibs.jsp
se del caso /apps/<CUSTOM-COMPONENTS-PATH>/headlibs.jsp
) include quanto segue:<%@include file="/libs/cq/cloudserviceconfigs/components/servicelibs/servicelibs.jsp" %>
<sly data-sly-resource="${'contexthub' @ resourceType='granite/contexthub/components/contexthub'}"/>
head.html
se del caso /apps/<CUSTOM-COMPONENTS-PATH>/head.html
) non includi in modo selettivo gli headlibs di integrazione specifici, come nell’esempio seguente:<!-- DO NOT MANUALLY INCLUDE SPECIFIC CLOUD SERVICE HEADLIBS LIKE THIS -->
<meta data-sly-include="/libs/cq/dtm/components/dynamictagmanagement/headlibs.jsp" data-sly-unwrap/>
La servicelibs.jsp
aggiunge gli oggetti JavaScript di analytics richiesti e carica le librerie dei servizi cloud associate al sito web. Per il servizio Target, le librerie vengono caricate tramite il /libs/cq/analytics/components/testandtarget/headlibs.jsp
Il set di librerie caricate dipende dal tipo di libreria client di destinazione ( mbox.js
o at.js
) utilizzata nella configurazione di Target.
Quando si utilizza DTM per distribuire mbox.js
o at.js
assicurati che le librerie siano caricate prima del rendering del contenuto. L’utilizzo di Tag Management Systems che carica queste librerie in modo asincrono potrebbe causare problemi nell’esecuzione del codice JavaScript specifico di destinazione.
Per ulteriori informazioni, consulta la sezione Sviluppo per contenuti mirati pagina.
Questo problema può comparire quando Adobe Analytics viene implementato sul sito web utilizzando DTM e utilizza codice personalizzato. La causa sta utilizzando il s = new AppMeasurement()
per creare un'istanza del s
oggetto.
Utilizzo s_gi
anziché new AppMeasurement
metodo di creazione istanze. Esempio:
var s_account="INSERT-RSID-HERE"
var s=s_gi(s_account)
Questo problema può avere molteplici cause:
Caricamento delle librerie client di Target ( mbox.js
o at.js
) in modo asincrono utilizzando Tag Management Systems di terze parti potrebbe interrompere il targeting in modo casuale. Le librerie di Target devono essere caricate in modo sincrono nell’intestazione di pagina. Questo è sempre vero quando le librerie vengono distribuite da AEM.
Caricamento di due librerie client Target ( at.js
) simultaneamente, ad esempio, uno che utilizza DTM e uno che utilizza la configurazione di Target in AEM. Questo può causare scontri per adobe.target
se at.js
le versioni sono diverse.
Puoi provare le seguenti soluzioni:
Le versioni standard AEM 6.2 e 6.3 non sono compatibili con AT.js 1.3.0+. Con AT.js versione 1.3.0 che introduce la convalida dei parametri per le sue API, adobe.target.applyOffer()
richiede un parametro "mbox" che non è fornito dal atjs-itegration.js
codice.
Per risolvere questo problema modificare atjs-itegration.js
e aggiungi la "mbox": mboxName
nell’oggetto parametro per adobe.target.applyOffer()
come segue:
adobe.target.getOffer({
"mbox": mboxName,
"params": params,
"success": function (response) {
adobe.target.applyOffer({
"mbox": mboxName, //<--- ADDED PARAM
"selector": "#" + mboxName,
"offer": response
})
},
Questo problema è probabilmente un Configurazione di A4T Analytics Cloud problema di provisioning.
È necessario verificare che A4T sia abilitato correttamente per il tuo account Target effettuando la seguente richiesta di verifica a 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"
}
Se la risposta contiene la riga a4tEnabled:false
, contancato Adobe Customer Care per ottenere il provisioning corretto del tuo account.
Di seguito sono riportate due API di Target che potrebbero essere utili per la risoluzione dei problemi di Target:
https://admin.testandtarget.omniture.com/rest/v1/endpoint/<CLIENTCODE>.json
{"api":"https://admin<N>.testandtarget.omniture.com/admin/rest/v1"}
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"
]
}