Application Insights automation - azure

I use application insights integrated in VS 2015 and monitor server and client telemetry. But I configure app insights only for one instance of my web site.
How can i automatize creating application insights instances with equal parameters (alert rules, tests...)?

To do this you would need to use Azure Resource Manager (ARM) templates. There are some good links you can find on the Azure docs like below.
Basic Steps
Export resource group with insights components you want to clone
Parameterize the names of the components, alerts and webtests
Change the URLs of the webtests
Remove the alerts with custom metrics (they won't exist and will fail)
Example web app template with AI
https://github.com/Azure/azure-quickstart-templates/blob/master/201-web-app-sql-database/azuredeploy.json#L266-L416
Deployment Documentation
https://azure.microsoft.com/en-us/documentation/articles/resource-group-overview/#template-deployment

Related

Extra hidden resources created in arm template when creating web app resource in azure

I'm currently working to setup an ARM-template for a resource group containing a web app for an API the I've been working on, i though it would be easier to first create the resource for the web app in the resource group an then export the template just to make sure i don't miss anything.
When exporting the template containing a test for the web app and the app service plan i noticed a bunch of extra resources that seem to be hidden in the background:
(Red overlines are deleted, related to application insights, yellow highlighter are the ones I'm asking about)
Are these needed for initial deployment of the web app and ASP, or can these be removed? I'm trying to keep the template as "clean" as possible, if one can say that. :)
Thanks in advance.
To test this in our local environment, we have deployed an webapp from portal & enabled application insights to it .
While exporting the template of the webapp & associated application insights we can also see additional resources like (Host name Bindings, Basic publishing credentials policies (ftp,scm),smart alerts etc.,) are in the template.
We have removed all those HostNameBindings,BasicPublishingCredentialPolicies (ftp,scm) properties from the exported template & tried deploying a new web app it got successfully deployed without any issues.
Here is the sample output for reference:

Publishing a web application on Azure

I want to publish an web application on Azure market place.
I can create a Linux VM, install Java, Tomcat, SQL server and create an image of it. But instead of that, is it possible to create a tomcat instance along with database on Azure portal, add it to a resource group and publish this resource group on market place?
Would this approach be more advantageous?
thanks
As per the doc here:
https://learn.microsoft.com/en-us/azure/marketplace-publishing/marketplace-publishing-getting-started
Azure Marketplace offerings are based on Azure VM images or solution templates, your current solution would be the VM based route. It sounds like you may want to look at the solution template route to leverage other capabilities such as Azure SQL Server.
Neither route enable "publish this resource group to the market place". If that is the route you are aiming for that is essentially building out a multi-tenant application which is a bigger task and perhaps something like this link will help get you started:
https://azure.microsoft.com/en-gb/blog/with-newly-available-services-azure-continues-to-be-the-best-place-for-software-as-a-service-developers/
There are also other stackoverflow answers which may be of help:
Does a developer have to pay for publishing a SaaS app on Windows Azure Marketplace?
How can i publish my web solution to Marketplace

Web app onboarding to Azure Web Marketplace

We checked this documentation - https://blogs.msdn.microsoft.com/appserviceteam/2016/08/26/onboarding-to-azure-web-marketplace on how to onboard our web apps in the Azure marketplace and also the GitHub link - https://github.com/SunBuild/web-app-marketplace
We have contacted MSFT on how to host our application which has an API and WCF applications as sub-applications.
MSFT replied that sub applications are not currently supported in through this onboarding model.
So, we are trying to onboard the three applications individually and link them in the Azure marketplace. We are not sure whether this will work or if this is possible.
In the sample applications in the GitHub link - https://github.com/SunBuild/web-app-marketplace, they have a hosting plan JSON file for the web app resource. Can we link the applications using this hosting plan JSON file?
We could not find any information or definition related to this hosting plan file - https://github.com/SunBuild/web-app-marketplace/blob/master/WebApp-SQLDatabase/DeploymentTemplates/Website_NewHostingPlan_SQL_NewDB-Default.json
Does anyone tried this before or know how to do this?
sub applications are not currently supported in through this onboarding model.
From the documentation, we could know if web app need Virtual application setting to be configured for web app, we will not be able to on board the application.
we are trying to onboard the three applications individually and link them in the Azure marketplace. We are not sure whether this will work or if this is possible.
In my view, if you on board these application individually, it may not enable us to bundle multi individual applications to make them link with each other. You could contact with Azure marketplace support team.
We could not find any information or definition related to this hosting plan file - https://github.com/SunBuild/web-app-marketplace/blob/master/WebApp-SQLDatabase/DeploymentTemplates/Website_NewHostingPlan_SQL_NewDB-Default.json
In the link you posted, we could find that it is an Azure Resource Manager (ARM) template that is used to define resources you want to deploy. This article explained about the Azure Resource Manager template, please refer to it.

Azure logic apps Deployment in Different Environment

I am using azure Standard service plan and developing Logic Apps Work flows. Now i want to deploy it to different environment like QA/UAT.
I have referred few MSDN blogs and found out We can do the logic apps deployment to different subscriptions via Visual studio with Azure SDK. However I am using API Apps in the logic apps work flows like SQL connector, Transformation service, BizTalk Xpath Extractor etc..
Can you please let me know how do we deploy API Apps to different Environment. Please suggest.
Thanks,
Vinoth
One way is to create the logic app with the connectors you want and then export that ARM template LogicApp -> Settings -> Export Template. Of course this template might not be the ideal approach since it will have lot of stuff hard coded specific to that LA.
The good approach will be to create a new Azure resource Group project which has
the logic app ARM template,
just copy the defn part from you existing logic apps int the template definition section
make sure you have the connection resources creation added as part of you template.
Some useful resources
1. Checkout this MSDN link.
2. There is a utility also to get the LA templates, read this

multiple app service plans with single (bizspark) subscription

We have BizSpark subscription with shared app service plan, where we are hosting our product. I need to host another version of the project for testing purpose, which fits into a free tier. I have checked the azure portals, but there is no provision to add a new service plan. does the BizSpark subscription support only one app service plan or am I missing anything?
Because an App Service services is an underlying component to other services, there isn't a simple way to directly create an App Service.
Since the only use case to create an App Service is to put something in it, the logic (I imagine) behind the Portals is that you create the resources you require and and it will create dependent resources within that process.
(Using the New Portal)
In order to create a new App Service plan, presuming you are deploying a new Web App. Click on New, Web + Mobile and then Web App.
When you click on Web App you will get this screen, if you fill in the details, and click App Service plan / Location at the bottom, you will be given the opportunity to select either an existing App Service or to create a new one.
The easiest solution would be to create a new Web app and when asked for App Service create a new one .. or use Azure Resource Manager template to achieve this: https://azure.microsoft.com/en-gb/documentation/templates/.
If it's another version of the App for testing purposes, why not use Deployment Slots? Slots have their custom URL separate from the Production app, separated configuration, domain bindings, it's like an App inside an App. You'll be able (if you want) to even swap the content of the Production environment with the Testing one for example.
And you don't incur in any extra cost because it runs on the resources of the current App Service :)

Resources