Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Troubleshoot your Edge setup

Describes how to troubleshoot your Optimizely Performance Edge setup.

Most fatal errors return a 200 response which includes a console log message, Optly-µ is disabled due to an error and the error details. This is the first place to look if something is not going as expected. You can also add the query parameter optimizely_log=info to the page with the script on it to get detailed logs. If you contact support, include this info logging.

See the following list for how to troubleshoot frequent errors:

  1. Problem: Page URL is missing

    Error message: Optly-μ is disabled due to an error.\nError parsing request: Target page URL is null

    Troubleshoot:

    • Make sure you are forwarding the required Referer header from the request to optimizely-edge.com.

      📘

      Note

      This is the only class of error from optimizely-edge.com that also prevents using ?optimizely_log to debug.

  2. Problem: My request to the Edge endpoint is logging a 403 Forbidden error

    `Error Message: Optly-μ is disabled due to an error.Error fetching datafile: 
      Non-OK response when fetching Web Manifest from 
      https://cdn.optimizely.com/public/<account_id>/p/<project_id>.js/web_manifest_project_v0.json:
      403 Forbidden`
    

    Troubleshoot:

    • Ensure that your implementation forwards to the correct URL. The Edge Decider API URL structure is as follows:

      https://optimizely-edge.com/edge-client/v1/<accountId>/<projectId>

      📘

      Note

      There is no ‘.js’ at the end of that URL.

    • Ensure that you’re passing the correct project ID that corresponds to your Edge project and not to a Web project.

    • For debugging purposes, if your implementation supports it, it can be helpful to add a custom header to your proxy’s response indicating the optimizely-edge.com URL that was requested (e.g. “x-optimizely-edgeurl”).

  3. Problem: I am targeting my experiment to an audience with a cookie condition, but according to the logs I am not being qualified for the experiment even though I meet the requirements

    Troubleshoot:

    • Confirm that you are passing cookies to the Edge Decider. Depending on your CDN, you may need to explicitly pass cookies.

      • A quick way to confirm this is by explicitly passing in an OptimizelyEndUserId cookie in your request to the Edge endpoint and appending ?optimizely_log=info to the page requesting the snippet. Inspect the response body returned from your proxy and confirm that the same optimizelyEndUserId is being set in the microsnippet. If a new ID is assigned, you may not be passing cookies. This is particularly likely to happen if you mistakenly insert a direct script reference to optimizely-edge.com, instead of proxying it through your domain.

      • If your implementation includes a cookie allowlist or denylist, ensure the cookie used for targeting is allowed to be forwarded to optimizely-edge.com.

      • Ensure that the domain of your test site is the same as or a subdomain of that of the Optimizely Performance Edge script implemented on your page. The browser does not allow the forwarding of first-party cookies to a third-party domain, thereby resulting in our inability to receive and read cookies. For example, www.example.com is unable to forward its first party cookies to www.sample.com/optimizely/123456789.js.