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

Troubleshoot DXP

Describes general service monitoring and how to enable debugging, logging, and detailed error messages for troubleshooting solutions based on the Optimizely Digital Experience Platform (DXP).

🚧

Caution

You should debug code only in the Integration environment. You should debug in the Preproduction/Production environments only when absolutely necessary. Contact Optimizely to submit a support ticket for remote debugging.

Check service status

Visit the Microsoft Azure Status dashboard for general service operation information. See the Optimizely service dashboard for Optimizely-specific operational status.

Access Azure Portal

Contact Optimizely to get access to your DXP-specific resources in the Azure portal so that you can monitor and troubleshoot your solutions. When logged in, the Azure portal will display information as in the example below.

Enable debugging

You need to enable debugging in the Azure Portal and Visual Studio. You first allow remote debugging in the Azure portal and then attach it to the correct process in Visual Studio.

📘

Note

See Microsoft’s Remote Debugger Port Assignments to ensure your remote debugger’s IP address is connected.

  1. In the Azure portal, select App Services.
  2. Select an Integration environment from the App Services list.
  3. Select Settings > Configuration.
  4. Open the General settings tab and go to the Debuggingsection.
    a. Set Remote debugging to On.
    b. Set Remote Visual Studio version to the version being used.
  5. In Visual Studio, select View > Cloud Explorer.
  6. Click the person icon to display your subscriptions.
  7. Select your subscription and click Apply.
  8. Select subscription > App Services >, right-click on the Integration environment (a subscription with an inte suffix), and select Attach Debugger.

🚧

Important

If a connection error occurs with the URL of the site being loaded, go back to the Azure portal, select Settings > Custom domains to obtain the IP address that is used by the URL. Add this IP address and the URL from the error message to the hosts file on the machine (located at C:\Windows\System32\drivers\etc\hosts). For example:

    111.111.111.111 INTESite.org

If you get an error message - ”Unable to connect to the Microsoft Visual Studio Remote Debugger” - fix this with the following procedure:

  1. Get the development machine's public IP.
  2. In the Azure portal, go to AppService > Networking > Access restrictions.
  3. Place the public IP on the allow list.

Then repeat step 8.

Activate logging

Optimizely supports writing to the diagnostics log using BLOB storage. See Log into .Net Diagnostics Trace for more details on how this works.

To activate the logging:

  1. Select App Services for the Integration environment, and go to Diagnostics log. 
  2. Set the Application Logging (Blob) to On, select desired Level of verbiage, and select a storage account and container under Storage Settings.
  3. Click Save when done.

📘

Note

The Web App will restart when activating the logging.

Log information and Kudu services

Access the website log files in the integration environment using any methods described in this section.

Download log files

Use the download or FTP options available in Azure Portal under Diagnostics logs for the environment.

Kudu services tool

Azure websites have an associated "scm" service site, where you can run site extension tools. For DXP, the Kudu services tool is available with your access to the Azure Portal.

To access the service tool, you add an "scm" segment to the environment site URL, for example https://epvscms3p60ginte.**scm**.azurewebsites.net.

The service tool lets you access files for the site and display information in Optimizely logs available under site/wwwroot/appdata and logfiles/eventlog.

Enable detailed error messages

You might find it useful to turn on detailed ASP.NET error messages in web.config for your solution in the Integration environment as an additional debugging tool.