Search code examples
storageazure-data-lakeazure-synapseeventtriggerazure-triggers

Storage Event Trigger failed to trigger the function


I am working on pipeline that copies data from ADLS Gen into Azure Synapse Dedicated SQL Pool. I used the Synapse pipelines and followed the Microsoft Docs on how to create a storage event trigger. But when a new file is loaded into the ADLS, I get the following error:

" 'The template language expression 'trigger().outputs.body.ContainerName' cannot be evaluated because property 'ContainerName' doesn't exist, available properties are 'RunToken'.

I have set the following pipeline parameters: enter image description here

enter image description here enter image description here

The pipeline successfully runs when I manually trigger it and pass the parameters. I would appreciate any solution or guidance to resolve this issue

Thank you very much

I tried to set trigger the synapse pipeline and copy the new blob into the dedicated pool, but when I monitored the triggers run, it failed to run.

I can trigger the pipeline manually


Solution

  • According to storage event trigger

    The storage event trigger captures the folder path and file name of the blob into the properties @triggerBody().folderPath and @triggerBody().fileName.

    It does not have property called container name.

    As per data you provided it seems that file is stored in your container itself. for this approach you have to give value for container name parameter as @trigger().outputs.body.folderPath it will return container name as folder

    enter image description here

    And now pass these pile line parameters to dataset properties dynamically.

    enter image description here

    It will run pipeline successfully and copy data from ADLS to synapse dedicated pool

    enter image description here