Search code examples
azuretriggersazure-blob-storageazure-logic-apps

Azure Logic App Upload Blob Trigger with Trigger Condition not fired


I have an Azure Logic App (Standard) which is in a VNET integrated environment. I want to get triggered by an upload of a blob to a storage account with the following structure:

"containerName/SubFolder1/file.zrxp"

I need to use the Azure Blob Connector (in App) enter image description here

I know that the connector gets only triggered if I choose as Blob Path the name of the container. Therefore I need to be sure, that the Logic App is only triggered, by a specific type of files with the ending "*.zrxp". So I wanted to use Trigger Conditions like this:

"triggers": {
            "When_a_blob_is_added_or_updated": {
                "conditions": [
                    {
                        "expression": "@endsWith(triggerBody()?['name'],'.zrxp')"
                    }
                ],
                "inputs": {
                    "parameters": {
                        "path": "containerName"
                    },
                    "serviceProviderConfiguration": {
                        "connectionName": "AzureBlob-4",
                        "operationId": "whenABlobIsAddedOrModified",
                        "serviceProviderId": "/serviceProviders/AzureBlob"
                    }
                },
                "type": "ServiceProvider"
            }
        }

But if I upload a file with this file ending to this container (containerName/SubFolder1), the workflow is not tiggered.

Any ideas what could be wrong?


Solution

  • I have reproduced the issue at my environment and got the expected result

    enter image description here

    Code view:

    {
    "definition": {
    "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
    "actions": {},
    "contentVersion": "1.0.0.0",
    "outputs": {},
    "triggers": {
    "When_a_blob_is_added_or_updated": {
    "inputs": {
    "parameters": {
    "path": "demo-container/SubFolder1/{name}.zrxp"
    },
    "serviceProviderConfiguration": {
    "connectionName": "AzureBlob-2",
    "operationId": "whenABlobIsAddedOrModified",
    "serviceProviderId": "/serviceProviders/AzureBlob"
    }
    },
    "type": "ServiceProvider"
    }
    }
    },
    "kind": "Stateful"
    }
    

    Storage Account:

    enter image description here

    Output:

    enter image description here

    Reference:- MS Docs