This post intends to cover the answers to the questions which a Integration developer can face at an Interview in relation to Logic app and BizTalk.
1. Is Logic App replacement to BizTalk server?
- No, it is not.
It is a cloud based workflow as a service which compliments BizTalk. But with the rapid adoption of cloud, the interfaces built on BizTalk are getting migrated to Logic App.
2. Can logic app connect to applications on non Azure cloud?
2. Can logic app connect to applications on non Azure cloud?
- Yes it can.
There are 220+ connectors provided by Microsoft itself which helps to connect to various applications which can be on-prem, on some other cloud platform etc.
3. Like BizTalk, does logic app persists data?
3. Like BizTalk, does logic app persists data?
- Logic app does not persists data automatically like BizTalk does, but you can persist data explicitly if you need to.
You can persist data in SQL Server, MySQL, Blob storage, Cosmos DB and PostgreSQL etc.
4. Suppose there's a logic app created and it should only be accessed by another logic app, is it possible to do?
4. Suppose there's a logic app created and it should only be accessed by another logic app, is it possible to do?
- Yes, we can limit logic app access, to allow only from another logic app.
5. What is used for development of Logic app?
- Logic app development can be done online by using Azure portal and offline by using visual studio by adding the required supporting sdk.
6. What is difference between Logic App and Power Automate(Microsoft flow)?
6. What is difference between Logic App and Power Automate(Microsoft flow)?
- Power Automate is targeted for Business users(for using that they need to get License) whereas Logic app is targeted for developers.
Power Automate is build on top of Logic Apps however it is meant to be truly a “no-code approach” to build automation and integration.
And it does not support any Enterprise connectors, no governance and no Integration with Azure DevOps for CI/CD deployment.
7. How is logic app instantiated?
- Logic Apps gets instantiated(started) by a Trigger.
8. What are the mechanisms supported by Logic App Trigger?
Trigger types available are :
Http
HttpWebhook
Request (endpoint)
Recurrence (schedule)
ApiConnection
ApiConnectionWebhook
8. What are the mechanisms supported by Logic App Trigger?
- Logic app trigger support following mechanisms
- Schedule (Time based)
- Push (Client application pushes the data to Logic App e.g, Http Trigger)
- Pull (Logic app probes the client application for data, if found it fetches the data e.g., Servicebus queue trigger)
- Manual (Irrespective of trigger used, Logic app can be manually trigger with the help of Run )
9. What is an Action in Logic App?
- Each step in a logic app is an Action. It can be anything from control workflow actions (condition, foreach, switch, terminate etc), data manipulation actions (compose, filter array, .create csv table, join etc), integration account actions( xml validation, transformation, flat file decoding/encoding etc) etc.
10. What is difference between Action and trigger?
- Trigger is also an Action but a special action. It is the first action in the workflow which has the capability to instantiate the workflow. It may or may not contain data associated with it.
11. Why Run After property not available with Trigger?
11. Why Run After property not available with Trigger?
- Run After property supports 4 status - Success, Failed, Skipped, Timeout.
The successor(next action) relies on the status of the predecessor(previous action), so accordingly it decide what to do.
However in case of Trigger there is only one status i.e. success . Only if trigger is success then next step in workflow comes into picture.
Just think, if you fail at first step - there can't be next step. But yes, you can retry and that property is available with Trigger.
12. Can we Clone a logic app from one resource group to another resource group?
- No. This option is not there.
You can clone logic app only in same resource group and in same subscription.
13. How is Logic App Charged?
- Based on the deployment model chosen
- ISE - Flat cost (Fixed)
- Consumption - Per action execution is charged
- Standard - Based on a hosting plan with a selected pricing tier.
14. Can we have long running logic app?
- It depends on the deployment plan you have chosen.
For ISE maximum is 366 days, whereas 90 days for consumption and standard stateful and 5 mins for standard stateless.
15. Where is apiConnections used in Logic app stored?
- Although ApiConnections are created and used in Logic app, they are an Azure resource. Thus like other resources, this too is stored in Resource Group.
16. Can we instantiate a particular logic app with more than one trigger?
- Yes, it is possible to have multiple triggers for single logic app.
But this can be done only via code view, with designer view it is not supported yet.
17.Can we have multi source map used in Logic app?
- No. As of now it does not have that capability.
18. Is it possible to parameterize logic app?
- Yes.
19. A Time scheduled(recurrence) Logic app is in disabled state, so it will not get triggered as per schedule. But suppose I want to test it without Enabling it, can I run the trigger manually?
- Although the logic app is in disable state, you can manually run the trigger but it will notify you saying- " The workflow is disabled. Please enable your workflow and try again."
20. What will happen if I disable a Logic app after few of it's instance are started/triggered.
- Once you disable the logic app, trigger becomes inactive i.e. new instance won't be created.
However the instance which have already started won't be impacted and it will continue to process.
21. How do we provide security on logic app?
- When talking about security of Logic app, there are various level which can be considered.
Like
i. Who can access the logic app (Read)
ii. Who can create and delete the logic app (Read and Delete)
iii. Who can access the Logic app history data (trigger and run)
iv. Should the data that is going in and coming out of an action be hidden
v. Should the access be restricted from the unknowns and allow only the trusted ones (ip address restriction)
22. Is it possible to resubmit logic app, if its disabled?
- Yes, it is possible.
23. For what purpose can Tracked properties be used?
- It is an additional capability of logic app, which helps you to track specific property from action's input or output.
If you have worked on BizTalk, it is on the same line as Tracking Profile (BAM)
Read following to get more insights - Getting Started with Logic Apps - What happened to the Request?
24. I have http trigger based logic app and it has to be tested, but I don't have provision to use any tool(like Postman, ARC etc) nor am allowed to call it from any application. Can I test it?
- Yes, We can test it manually with the option "Run with Payload" where we can provide the body.
25. I did some changes in existing logic app, but later it was not required. Can I rollback to previous version?
- Yes. It can be done. Here we use the version feature available in Logic app, select the version which you want and promote it.
26. How does Logic App resolve Agreement?
- Logic app requires the EDI messages having the qualifier and identifier fields for sender and receiver in order to perform agreement resolution.
It will match the values of ISA5, ISA6, ISA7, and ISA8 in the interchange header with those in the properties of an agreement.
27. Can we use api connection created in one logic app in other logic App?
- Yes, it is possible. Api connection is in itself an resource and can be reused as needed.
28. Is data persisted in Logic Apps?
- Here the answer is Yes and No. Depending upon the chosen workflow type
Stateful workflow : Workflows save and transfer all the inputs and outputs for each action and their states to external storage.
Stateless workflow: No external storage, everything in memory - no persistence of data.
Above two are options available in Standard offering, whereas for rest it is Stateful (thus we can see history details)
29. Can a serverless Logic app access resources which are on premises?
- When we say serverless, it means we have created Logic app which runs in consumption plan.
As per this plan the servers are not fixed, it is added and removed as per the load/demand. Thus there is no fixed set of IP address.
And because of this integration with network on premises is not possible directly.
However, with the help of On-premise data gateway it can be made possible.
Read more about it in following posts-
- Inserting Multiple Records In On Prem SQL Using Logic App
- Inserting data in On Premises SQL Database using Logic Apps
- Installing and Configuring On Premises Data Gateway - By adding user to Active Directory
- Getting Started with Logic Apps - File Routing
30. Can we declare/initialize a variable inside a scope in Logic App?
- No . By design it is not allowed Variable cannot be initialized in Logic App scope
31. Can we implement Try..Catch block in Logic App?
- Yes. We can implement it with the help of Scope shape. First scope encompasses the steps/business process/logic and another scope encompasses the steps to take when exception occurs.
And configure second scope's run after property to run only when first scope fails or times out.
32. What is difference between trigger() and triggerBody() ?
- Both are related to the output of the trigger in the logic app.
trigger() is an Azure Workflow built-in FUNCTION, which refers the entire trigger object (including headers and body) and is shorthand of trigger().outputs
Whereas triggerBody() is shorthand for trigger().outputs.body thus it only points to body part of trigger output and it's type is String.
33. Can we access output of an action or variable from Try scope in Catch scope(which executes on Try scope failure)?
- Yes it can be accessed.
Provided that the action or variable which you are trying to access is successful in Try Scope.
34. Can we have multiple workflows defined in a Single Logic app?
- Yes and No.
If you are going with Consumption plan then it is not possible as there is one to one mapping i.e. one workflow - one logic app.
But if you are going with Standard plan then there is provision to have one to many mapping i.e., many workflow - one logic app. It is on the same line as Azure Function app having multiple functions in it.
If you have questions or suggestions, feel free to do in comments section below !!!
Do share if you find this helpful .......
Knowledge Sharing is Caring !!!!!!
Learn More about Logic App
- How to configure Logic App Standard workflow behind Azure APIM
- How to Query Azure Table storage from Logic App | How to filter results of Azure Table storage from Logic App
- Understanding expressions in Logic Apps | Frequently used expressions in Logic Apps | What is expressions in Logic App
- How to use Logic app Run History | How to troubleshoot Logic App workflow execution
- Logic App and Slack - Sending messages to slack channel | Logic app and slack integration | Connecting Logic App to Slack channel
- How to access Application settings fields value from Logic app Standard workflow | Using Application settings as configuration store for Logic app standard workflow
- Developing Logic app standard workflow which uses Map locally and deploying to Azure
- Developing Logic App Standard Workflow Using Visual Studio Code | Create Logic App Standard Workflow Using Visual Studio Code
- Logic App - Xml to Json using Liquid Map | Append in Liquid Map
- How to use Azure Event Grid Custom Topic | Publishing and Subscribing from Azure Event Grid Custom Topic using Logic App
- Using Azure Storage Account Table as Config Store for Logic Apps | How to read and write from Logic App to Azure Storage Account Table
- Get Logic App Name in Logic App
- Difference between Logic App Consumption and Logic App Standard
- Getting Started with Logic App Standard | Overview of Logic App Standard | Basics of Logic App Standard
- How to find count of Logic App executions using Azure Portal
- Azure Functions vs Azure Logic App | Difference between Azure Functions and Azure Logic App
- Getting started with Logic App : Liquid Map | Using Liquid template in Logic app
- How to get actual error message of Scope in Logic App | Exception Handling in Logic app
- Interview questions and answers on Logic Apps | Interview questions for azure logic app developers
- How to execute Stored Procedure in Logic App | How to connect to SQL in Logic App
- How to get current date in logic app | How to format date time in Logic App
- BizTalk Developer getting started with Logic App
- Getting Started with Logic Apps - Fundamentals
- Getting Started with Logic Apps - Enterprise Application Integration
- Getting Started with Logic Apps - AS2
- Getting Started with Logic Apps - EDI X12 Fundamentals
- Getting Started with Logic Apps - XML to EDI X12
- Getting Started with Logic Apps - EDI X12 to XML
- Getting Started with Logic Apps - What happened to the Request?
- Inserting Multiple Records In On Prem SQL Using Logic App
- Inserting data in On Premises SQL Database using Logic Apps
- Installing and Configuring On Premises Data Gateway - By adding user to Active Directory
- XML Batching(Aggregation) in Logic App
- Batching(Aggregating) messages in Logic App
- Debatching(Splitting) JSON Message in Logic Apps - ForEach and SplitOn
- Debatching(Splitting) XML Message in Logic Apps - ForEach and SplitOn
- Securing Logic App with Azure Active Directory authentication
- Removing ns0: prefix from xml output from BizTalk/Logic app XSLT map
- Using Managed Identity in Logic Apps for Calling Active Directory Secured Function App
- Logic Apps : Fetching ISA and GS Segment Values From Interchange Envelope and Mapping
- Logic Apps : For Each Inside a For Each - Fetching values from field in an array inside an array
- How to configure Logic App Standard workflow behind Azure APIM
- How to Query Azure Table storage from Logic App | How to filter results of Azure Table storage from Logic App
- Understanding expressions in Logic Apps | Frequently used expressions in Logic Apps | What is expressions in Logic App
- How to use Logic app Run History | How to troubleshoot Logic App workflow execution
- Logic App and Slack - Sending messages to slack channel | Logic app and slack integration | Connecting Logic App to Slack channel
- How to access Application settings fields value from Logic app Standard workflow | Using Application settings as configuration store for Logic app standard workflow
- Developing Logic app standard workflow which uses Map locally and deploying to Azure
- Developing Logic App Standard Workflow Using Visual Studio Code | Create Logic App Standard Workflow Using Visual Studio Code
- Logic App - Xml to Json using Liquid Map | Append in Liquid Map
- How to use Azure Event Grid Custom Topic | Publishing and Subscribing from Azure Event Grid Custom Topic using Logic App
- Using Azure Storage Account Table as Config Store for Logic Apps | How to read and write from Logic App to Azure Storage Account Table
- Get Logic App Name in Logic App
- Difference between Logic App Consumption and Logic App Standard
- Getting Started with Logic App Standard | Overview of Logic App Standard | Basics of Logic App Standard
- How to find count of Logic App executions using Azure Portal
- Azure Functions vs Azure Logic App | Difference between Azure Functions and Azure Logic App
- Getting started with Logic App : Liquid Map | Using Liquid template in Logic app
- How to get actual error message of Scope in Logic App | Exception Handling in Logic app
- Interview questions and answers on Logic Apps | Interview questions for azure logic app developers
- How to execute Stored Procedure in Logic App | How to connect to SQL in Logic App
- How to get current date in logic app | How to format date time in Logic App
- BizTalk Developer getting started with Logic App
- Getting Started with Logic Apps - Fundamentals
- Getting Started with Logic Apps - Enterprise Application Integration
- Getting Started with Logic Apps - AS2
- Getting Started with Logic Apps - EDI X12 Fundamentals
- Getting Started with Logic Apps - XML to EDI X12
- Getting Started with Logic Apps - EDI X12 to XML
- Getting Started with Logic Apps - What happened to the Request?
- Inserting Multiple Records In On Prem SQL Using Logic App
- Inserting data in On Premises SQL Database using Logic Apps
- Installing and Configuring On Premises Data Gateway - By adding user to Active Directory
- XML Batching(Aggregation) in Logic App
- Batching(Aggregating) messages in Logic App
- Debatching(Splitting) JSON Message in Logic Apps - ForEach and SplitOn
- Debatching(Splitting) XML Message in Logic Apps - ForEach and SplitOn
- Securing Logic App with Azure Active Directory authentication
- Removing ns0: prefix from xml output from BizTalk/Logic app XSLT map
- Using Managed Identity in Logic Apps for Calling Active Directory Secured Function App
- Logic Apps : Fetching ISA and GS Segment Values From Interchange Envelope and Mapping
- Logic Apps : For Each Inside a For Each - Fetching values from field in an array inside an array