Problem for running Azure Function (time trigger and servicebus trigger) in Azure Data Factory

Mohsen Akhavan 831 Reputation points
2021-07-05T05:44:16.067+00:00

I have two azure functions (Python) :

  1. Time Trigger: this function run every 5 minutes and run a query and send data to a service bus
  2. Service Bus Topic trigger: this function run when receiving function's "1" data in the service bus

Now, I want to add these functions to the Data factory pipeline. When I added Azure function activity on the pipeline, it needs the REST API method for the function call. My functions aren't HTTP triggers.

What are the solutions for running this scenario?

Azure Service Bus
Azure Service Bus
An Azure service that provides cloud messaging as a service and hybrid integration.
700 questions
Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
5,909 questions
Azure Data Factory
Azure Data Factory
An Azure service for ingesting, preparing, and transforming data at scale.
11,623 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. KalyanChanumolu-MSFT 8,351 Reputation points
    2021-07-05T07:46:42.297+00:00

    @Mohsen Akhavan Thank you for reaching out.

    Currently Azure functions does not support adding bindings for timer/servicebus trigger and http trigger in one function app.
    You can still manually invoke a non HTTP-triggered function using the function app key

    However, an easy option could be to move the common logic from your timer/service bus triggered function into a separate method, create a new HTTP triggered function and call it from there.
    You can then add it to an ADF pipeline

    ----------

    If an answer is helpful, please "Accept answer" or "Up-Vote" which might help other community members reading this thread.
    And if you have further questions or issues, please let us know.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.