In this article, I will demonstrate azure function app where I will show creating service bus trigger inside function app.
In this article, I will demonstrate azure function app where I will show creating service bus trigger inside function app. Before we start, please create a service bus topic and add at least one subscription to it. Follow below link to create topic and subscription.
After you created prerequisites for next step, follow below steps to continue. To create azure function app and fetched message from service bus first steps would be to create a function app.
Open Azure portal (portal.azure.com), Go to resource, type “function app”, you can also click on Compute section and there you will find Function App option
Enter details and press “Review + Create” button. This will take some time to build. You will be asked to choose a platform. I have chosen .Net Core so my function app will run on .Net Core.
It will take some time to deploy your resource. Once deployment is completed, you can navigate to see the overview of the function. Now go to “Function” tab in left pane, you will find an option to add function. You will see various types of functions you can create. Select “Service bus topic trigger”.
Enter basic details like connection, topic name and subscription name. Press “Create Function” button when done.
You can edit your function as well and can change topic and subscription names as per your choice.
Now go to your function. Here you will see few options in left pane like “Code + Test” where you can test your function and “Integration” which shows structure or connectivity of your function. In below screenshot you can see that there is a trigger associated with your function and there is an option to add input and output.
You can also enable disable your function. For that, just click on your function app and click on function tab on left pane. Here you will find your function. Select the function and click on “Enable” to enable or “Disable” to disable your function.
In this article, we are demonstrating trigger execution when we add any message to topic. To do so, open trigger and select “Code + Test” option. Enable logs. Here you will see C# code and “function.json” configuration file which contains configuration related to the trigger.
Now open service bus topic “userservicebustopic”, go to “Service Bus Explorer” and add a message of any type from available options. You can send simple text message or message in XML or JSON format. Choose any. I am sending simple text message for demo purpose.
Go to service bus trigger and wait for a second. You should logs stating that trigger has been executed.
As soon as you see this log, message has been dequeue from service bus topic. Default lock is PeekLock that send “Complete message” acknowledgement if message is successfully received or send “Abandon” status or “Retry” if encounters an error. You can set retry policy to tell your service bus trigger function that how many time trigger should try to retrieve message from queue if message get failed. After said number of try (default is 5 times), a message is parked in DeadLetter queue which is further set to take care.
Hope this helps you.