Integration Monday Recap and Push-BUtton Push Trigger Introduction

This blog post serves as a quick recap of and expansion on my October 19th Integration Monday talk titled Building Push Triggers for Logic Apps. You can view the session and look through the slides over at integrationusergroup.com. In the … Continue reading →

The post Integration Monday Recap and Push-BUtton Push Trigger Introduction appeared first on QuickLearn Blog.

Blog Post by: Nick Hauenstein

Azure Logic Apps Monthly Update – October 2015

In one of our earlier blog post, we mentioned how Microsoft is taking the effort to shape a community driven approach by organizing a monthly “Google Hangout session” to communicate the latest updates in the filed of Azure Logic Apps. This month’s session – fifth in the series – happened yesterday (October 29th). You can […]

The post Azure Logic Apps Monthly Update – October 2015 appeared first on BizTalk360 Blog.

Blog Post by: Sriram Hariharan

Why Every Company Should Visit Their Customers Frequently?

I’m writing this blogfrom Calgary, Canada where I’ll be speakingat “Azure Hybrid Integration Day” along with fellow MVP’s. This is my first time at Calgary. When the opportunity came few months ago, I decided to spend few additionaldays here to meet with fewof our long term customers. Calgary is well knownfor Energy, Oil and Gas […]

The post Why Every Company Should Visit Their Customers Frequently? appeared first on BizTalk360 Blog.

Blog Post by: Saravana Kumar

Working with BizTalk and Octopus Deploy Part 2

Working with BizTalk and Octopus Deploy Part 2

Further to my post about deploying BizTalk solution using Octopus found here, this post will describe the substitution of variables in Octopus 3.0 release. In Octopus 2.x.x release, we had Octopus.Platform.dll which gets the variable information from the octopus database, however in octopus 3.0 this feature is removed and not included any more.

This will prevent us to use “Substitute variables in files” process template available on Octopus community. To overcome this issue, I’ve to write custom power shell script to replace variable. Yes, there is in-built substitute variable feature in octopus, apparently we cannot use it, because BizTalk deployment is slightly different from .Net.

Here is the script to substitute variables in files. You need to include all the variables in the below power shell script.

This is the custom variable replacement function”:

$TargetFile=”C:Program Files (x86)ABC for BizTalk1.0DeploymentEnvironmentSettingsSettingsFileGenerator.xml”
Function ReplaceInFile($TargetFile, [HashTable] $Values){

if ( (Test-Path $TargetFile ) -eq $false){
throw “The target file ‘$($TargetFile)’ does not exist.”
}

Write-Host ” — Starting custom transformation for $($TargetFile)”

$fileContent = Get-Content $TargetFile
$Values.GetEnumerator() | ForEach-Object {
Write-Host “Replacing [$($_.Key)] with [$($_.Value)]”
$fileContent = $fileContent -replace $_.Key, $_.Value
}

[IO.File]::WriteAllText($TargetFile, ($fileContent -join “`r`n”))
}

This is how it is called:

$SitesConfigFile = $TargetFile
ReplaceInFile -TargetFile $SitesConfigFile -Values @{
‘#{SsoAppUserGroup}’ = $SsoAppUserGroup;
‘#{SsoAppAdminGroup}’ = $SsoAppAdminGroup;
}

If someone has a better approach then please let me know.

Thanks,

Shadab Anwer

Advertisements

Working with BizTalk and Octopus Deploy Part 2

Working with BizTalk and Octopus Deploy Part 2

Further to my post about deploying BizTalk solution using Octopus found here, this post will describe the substitution of variables in Octopus 3.0 release. In Octopus 2.x.x release, we had Octopus.Platform.dll which gets the variable information from the octopus database, however in octopus 3.0 this feature is removed and not included any more. This will […]
Blog Post by: shadabanwer

BizTalk Server: Teach me something new about Flat Files (or not) – Delimited Flat File Schema Optimizations

BizTalk Server: Teach me something new about Flat Files (or not) – Delimited Flat File Schema Optimizations

We ended last post asking: Do you think the schema is entirely correct? Does it handles with all files accordingly to the expected results? Or do we need to tune some of the properties of your schema When we start working with Flat File schemas for BizTalk, we may think that just using the Flat […]
Blog Post by: Sandro Pereira

Performance testing an API App under load in the Azure Preview Portal

Performance testing an API App under load in the Azure Preview Portal

When you create a Web API you can use it for your own applications but maybe you also want to expose it to the outside world. In that case you probably want to change the behavior of the Web API. For example add security or hide properties. You can use BizTalk to create a virtual service in front of your Web API to modify the behavior but is that the smartest choice?  Because BizTalk writes every message that it receives a couple of times to the MessageBox database. This increases heavily the execution time and especially with Web APIs it’s important to have a really low execution time!

Another option is to use Sentinet from Nevatech to create a virtual service in front of your Web API.
The virtual service runtime in Sentinet can also be extended with custom messages processing. Sentinet provides a number of build-in message processing components but it is also possible to create custom message processing components.

Let’s have a look at the following example where an Order Web API is used inside an organization to process orders. This Web API must also be exposed to external customers to show the status of an order but if an error occurs in the Web API or in a background process, the OrderStatus property must be modified that the order is still in progress and the ErrorMessage property with the error must not be shown to the customers. Furthermore the output of the Web API must be in XML instead of JSON.

Send request with Postman to Order Web API

The following steps in Sentinet are necessary to make it work:

  • Add the REST service (or API) to the the Sentinet Repository
  • Create a Virtual Service
  • Add custom Pipeline Processing
  • Test the Virtual REST Service

Sentinet makes it really easy to modify the response of a Web API. You only have to create a Virtual Service in front of it and add custom Pipeline Processing! Especially if you are already familiar with XPATH and XSLT, the example above doesn’t take long to implement.

Download:
Sentinet version 4.5

Performance testing an API App under load in the Azure Preview Portal

In September Microsoft added the Performance test feature in the Azure Preview Portal to check your Web App’s performance. For API Apps this is also very important and because API Apps are built on top of Web Apps I was very curious if I can also use this feature for API Apps! The Web App that hosts an API App is called the API App Host in the Azure preview portal, so on the API App host blade I tried to go to the Tools menu where the Performance test feature resides.

 

 

 

 

 

 

Unfortunately I got an error so the Tools menu doesn’t seem to work for API Apps but there is another way. You can also add the Performance test tile directly on your API App blade!

See the following steps how to do it.

In the Preview Portal select the API App that you want to test. Then right click on the API App blade and select Add tiles in the menu.
 
In the Tile Gallery select Find Resource by Type. Then select Web Apps.
 
Select the Performance Test tile.
 
Drag the tile from the Tile Gallery to the API Apps blade.
 
The Azure Preview Portal has very powerful customization capabilities allowing you to resize or move the tile on the resource blade.
 
Click on the Done button when you are finished.
 
When you click on the Performance Test tile you see an overview of your recent runs but first you to have click on “Set Account” to choose a Visual Studio Online account to create performance tests.
 
Click on “New” to create a new performance test. Your API App’s default URL is added automatically. You have to change the URL and add “/api/” combined with the method you want to test (HTTP GET requests only).
 
Result
 

 

See Also

For more information on Performance tests in the Azure Preview Portal see:
Performance test your Azure web app under load