Logic app Standard Storage issue investigation using Slots

This post has been republished via RSS; it originally appeared at: Microsoft Tech Community - Latest Blogs - .

Logic Apps require an Azure Storage Account file share to host their files. Even though the Logic App site will work without a storage account, it will not be scalable across multiple instances.

Unfortunately, if the storage is inaccessible due to DNS or other network issues, both the main site and the Kudu site will not work, resulting in the following error:

System.Private.CoreLib: The network path was not found. : 'C:\\home\\data\\Functions\\secrets\\Sentinels'

Mohammed_Barqawi_0-1717422235528.png

 

Usually, to resolve network issues, we need the Kudu console working, but in this case, it is not because the site is broken.

We can make it work without a storage account by using the Slots option, which utilizes local storage.

Steps

    1. Rename the following two environment variables by adding X at the beginning of the key name:

      1. WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
      2. WEBSITE_CONTENTSHARE
Spoiler
Make the changes in the environment variables section -> Advanced edit.
AnimationTeamsEnv.gif
    1. Go to Slots and add a new one.
    2. Click on the new Slot and go to Advanced Tools (Kudu).
    3. In the CMD console, download the PS1 file responsible for diagnostics using the command:
curl -o "LADiag.ps1" https://raw.githubusercontent.com/mbarqawi/logicappfiles/main/LADiag.ps1
    1. After downloading the PS1 file, switch to PowerShell to execute the script. You can find the script here: LADiag.ps1
    2. Run the PS1 script by typing:
./LADiag.ps1

Check the file list; you will find an HTML file named ConnectionAndDnsResults.html.

Diagnostic Animation

 

Test cases 

In the PowerShell:

  • TCPPing on all storage four endpoints. This command will ensure that the HTTPS endpoint is pingable.
  • Use NameResolver on all endpoints to ensure that the DNS is resolvable.
  • Connect to the file endpoint and list all the shares using REST HTTPS on port 443.
  • Perform TCPPing to the file endpoint on SMB port 445.

 

For additional network-related commands, you can follow this article: Networking related commands for Azure App Services.

Cleaning 

After you generated the report and figure out the issue , you can delete the slot and rename back the environment variable 

Leave a Reply

Your email address will not be published. Required fields are marked *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.