If your page does not display the expected content, there are a few steps you can take to debug content delivery.
mboxDebug is especially useful when you are setting up Target on your page to make sure that the Target request is firing and the cookie is being set. However, it does not go into the kind of detail that is useful when debugging content delivery. If your activity does not appear on your page or undesired content appears, use mboxTrace to examine and debug the page in detail.
Because mboxTrace and mboxDebug can expose campaign data and profile data to external parties, an authorization token is required. The authorization token can be retrieved in the Target UI. The token is valid for six hours.
You must have one of the following user permissions to generate an authentication token:
At least Editor permission (or Approver)
For more information for Target Standard customers, see Specify roles and Permissions in Users. For more information for Target Premium customers, see Configure enterprise permissions.
Admin role on the workspace/product profile level
Workspaces are available to Target Premium customers only. For more information, see Configure enterprise permissions.
Admin Rights (Sysadmin permission) on the Adobe Target product level
To retrieve the authorization token:
Click Administration > Implementation.
From the Debugger Tools section, click Generate New Authentication Token.
Add the generated token as a parameter to your URL to enable one of the advanced debugging tools.
mboxTrace enables you to receive trace information attached to Target responses. Trace information reflects the outcome of a Target call (for example, a conversion or an impression) and any additional data that may help in determining why this particular outcome happened, such as a set of available branches among which the selection was made in a campaign. Use this information to debug content delivery.
The following parameters are available:
mboxTrace Options | Outcome |
---|---|
?mboxTrace=console |
Prints into console log as objects. For at.js, instead of popping a new browser window or outputting to the console as was in mbox.js (now deprecated), you need to inspect the Network request and look under Preview (Chrome) or Response (Firefox). |
?mboxTrace=json |
Prints into console log as a literal JSON string |
?mboxTrace=window |
Prints into a popup window as a JSON string |
?mboxTrace=disable |
Turns off tracing session mode |
Example mboxTrace call
https://www.mysite.com/page.html?mboxTrace=window&authorization=f543abf-0111-4061-9619-d41d665c59a6
The output displays detailed information about your content. mboxTrace shows details about your campaign or activity and profile. It also provides a snapshot of the profile before execution, and a snapshot of what changed after execution. It also shows which campaigns or activities were evaluated for each location.
Some of the information includes matched and unmatched segment and target IDs:
Using mboxTrace on recommendations pages: Adding mboxTrace as a query parameter on pages with recommendations replaces the Recommendations design on the page with an mboxTrace details window, which displays in-depth information about your recommendations, including:
You do not need to include =console
, =json
, or =window
in the query parameter. When you are done with the mboxTrace details, add =disable
and press Enter to return to the normal display mode.
The normal functioning and appearance of your site is not affected by mboxTrace. Visitors see your regular Recommendations design.
To use mboxDebug, append an mboxDebug parameter to the end of your URL. The following table contains information about Target response-related URL parameters.
Some mboxDebug parameters are available with or without authentication.
URL Parameters | Purpose |
---|---|
mboxDebug=1 |
Debugger Adding this parameter to any URL with Target requests defined opens a pop-up window with valuable debugging details. Cookie information, PCid and Session ID values are written out, and all of the URLs are visible. Click on a Target request URL to show the response for that Target request. More details are available in mbox_debug.pdf. |
mboxDisable=1 |
Disable mboxes on the page |
mboxOverride.browserIp=<Insert IP address> |
Test geotargeting Test geotargeting with this URL parameter. Type an IP address as the value for this attribute, and Test&Target’s geotargeting evaluates that IP address to match against any geotargeting or segmentation set in a campaign. |
Ensure that the URL fragment is after query string parameters. Anything after the first #
is a fragment identifier and causes debugging parameters not to function correctly.
The Adobe Experience Cloud Debugger makes it fast and easy to understand your Target implementation. You can quickly view your library configuration, examine requests to make sure your custom parameters are being passed correctly, turn on console logging, and disable all Target requests. Authenticate into the Experience Cloud and you can use the powerful MboxTrace tool to inspect your activity and audience qualifications as well as your visitor profile.
For more information, see the training videos below:
For more detailed information, see Debug at.js using the Adobe Experience Cloud Debugger.
The SiteCatalyst: purchase
call can’t be used for Purchase algorithm traffic data. Use the orderConfirmPage
call instead.
Form-based activities created with Target Standard/Premium might collide with activities created in the Target Classic UI that have the same priority and use the same Target request.
Target no longer supports IE 8.
If your site has a sub domain, such as us.domain.com, but you need the Target cookie set on domain.com (instead of us.domain.com), you must override the cookieDomain
setting. For more information, see targetGlobalSettings().
If a DOM element is part of Adobe Experience Manager (AEM) personalization targeting and a Target activity, Target content might flicker or not be shown.
To remedy this situation, you can disable AEM personalization on pages on which Target is running.
If the redirect or remote offer uses an invalid URL, it might fail to be delivered.
For redirect offers, the Target response can contain /* invalid redirect offer URL */
Or
For remote offers, the Target response can contain /* invalid remote offer URL */
You can check the Target response in the browser or using mboxTrace. See https://tools.ietf.org/html/std66 for more information on valid URLs.
at.js does not fire Target requests if you are using an invalid doctype. at.js requires the HTML 5 doctype.
The Activity URL determines the page that qualifies visitors for the activity and renders the activity experiences to users. When prompted during activity creation, typing the complete URL does not always ensure that the content is delivered on that site page, especially with URLs that contain query string parameters.
By default, the Visual Experience Composer (VEC) opens the page that is specified in your Visual Experience Composer settings. You can also specify a different page during activity creation.
To display a different page after the VEC opens, click the Configure gear icon > select Page Delivery > then specify the desired URL in the Activity URL field.
But what if the URL contains query string parameters? Will it work and show the personalized content? In this scenario, irrespective of your targeted audience, you can include template rules in addition to the base URL to define your query parameters.
The following options can be used to include additional template rules:
This option ensures that this URL qualifies for the activity, but be aware that there are corner cases attached to it that can influence your reporting data with additional records to URLs that contains the base URL.
In this scenario, the URL is https://shopping.mycart.com?type=Summers%20Offers
and additional template rules “contains” the same URL, separated by an OR operator:
The corner case discussed in the previous option is applied in this option, but here the conditional setup is limited to the query string only.
In this scenario, the URL is https://shopping.mycart.com?type=Summers%20Offers
and additional template rules “contains” only the query string, separated by an OR operator:
In this scenario, the URL is https://shopping.mycart.com?type=Summers%20Offers
and additional template rules specify a Query with type > is (case sensitive) > type=Summers%20Offers, separated by an OR operator:
When you send values containing double quotes in a Target profile attribute, you must double escape it as show below.
adobe.target.trackEvent({
"mbox": "data-collection",
"params": {
"profile.tagLine": "Escape \\\"Double Quotes\\\" like this."
}
});
The following videos contain more information about the concepts discussed in this article.