Health Check on Web App Service vs Availability on Application Insights - azure

In Azure Health Check option on App Services How is it different from Availability on Application Insights? Data generated is different?
Which should be used in which scenarios?

Related

Correlation between Azure Application Gateway and Azure Application Insights

Is there a way to correlate the logs between Azure Application Gateway Logs and Azure Application Insights?. We need to maps the relations from top-level appliances to application
Azure Application Gateway is an application load balancer for web traffic, available in Azure environment, that manages HTTP and HTTPS traffic of the applications. And Application Insights is an application performance management service for web applications that enables you to do all the monitoring of your website performance in Azure so we can't correlated the logs between Azure Application Gateway and Azure Application Insights.
To monitor the Azure Application Gateway we should uses Azure Monitor. The Azure Monitor Network Insights provides a comprehensive view of health and metrics for all deployed network resources (including Application Gateway), without requiring any configuration. For more detailed explanation of the capabilities read this Azure Monitor Network Insights document.
The logs allow for performance, access, and other data to be saved or consumed from a resource for monitoring purposes. You can use different types of logs in Azure to manage and troubleshoot application gateways like Access logs, Performance logs, Firewall logs and so on. The Azure Application Gateway can send diagnostic logs to a workspace of Log Analytics. This feature is very useful for checking the performance, to detect any errors and is essential for troubleshooting steps, in particular in the presence of the WAF module.
I would suggest to read these Azure Application Gateway: monitoring with Log Analytics and Monitoring Azure Application Gateway documents for more information.

How does Azure Service Plan load-balance traffic with different apps

I am trying to understand better how Azure App Service Plan (ASP) load-balances the traffic when multiple/different App Services are deployed in it.
Let's assume my ASP is made of 2 nodes (VMs or instances) and I deploy 2 apps (total 4 app instances running) and with following URL:
https://app1.azurewebsites.net
https://app2.azurewebsites.net
I know that there are ASP front-ends acting as load balancers. So here if I understand correctly it is like when I have a web-server hosting different web-sites and address distinction is based on virtual hostnames (which are the URL above). Right?
App Service is a multitenant service, so it uses the host header in the request to route the request to the correct endpoint. The default domain name of App Services, *.azurewebsites.net (say, contoso.azurewebsites.net), is different from the application gateway's domain name (say, contoso.com). ref.1
When using App Service, you can scale your apps by scaling the App Service plan they run on. When multiple apps are run in the same App Service plan, each scaled-out instance runs all the apps in the plan.
Apps are allocated to available App Service plan using a best effort approach for an even distribution across instances. While an even distribution is not guaranteed, the platform will make sure that two instances of the same app will not be hosted on the same App Service plan instance.
The platform does not rely on metrics to decide on worker allocation. Applications are rebalanced only when instances are added or removed from the App Service plan.
You can also now do Per-app scaling, which can be enabled at the App Service plan level to allow for scaling an app independently from the App Service plan that hosts it. This way, an App Service plan can be scaled to 10 instances, but an app can be set to use only five. ref.2

Application logging in Azure Kubernetes

In our scenario, we are trying to Dockerize the Asp.net framework 4.6 based Web API that logs on the server using Nlog.
Currently the application is hosted on IIS web server.
The question is how / where to store the logs when the application is rehosted on Azure kubernetes
should I use something like application insights
You can use the Azure Monitor including Application Insights to have your application logs.
Here is the official documentation on Azure Monitor for containers
Azure Monitor for Containers supports consuming logs from not just
Kubernetes but also from other orchestration engines such as DC/OS,
Docker Swarm, and Red Hat OpenShift.
Azure Monitor for Containers is perfect for Infrastructure monitoring and Application Insights which is now part of Monitor as well would be excellent for APM.
Application Insights for .NET
https://learn.microsoft.com/en-us/azure/azure-monitor/app/asp-net

How do I know which app services are using an Application Insights resource

I have an Application Insights resource on my Azure subscription which was added by previous developers, and I am trying to understand which app services are configured with this Application Insights resource.
Because we have 20 app services and all are configured to only 3 application insight resources.
So I want to know which applications are configured to which App Insights which are tracking the insights of the applications like server requests, server response time, page load time, etc.
We can check that by going through application map of that application insight resource.
Application Map gives the topology of the related components.
So if you are having multiple app services configured to this one application insight then you will be able to see multiple topological map of app services with their related components in application map.
and from this you will be able to see which all app services are configured for this app insight resource.
To check this open the application insight resource and under this blade you will find application map.
Once you click on Application Map you will see all the resources configured to this app insight resource.
Reference: https://learn.microsoft.com/en-us/azure/application-insights/app-insights-app-map

Failover planning for Azure Mobile Services

I have an azure mobile service that is running on top of SQLAzure DB. The Database is geo-replicated. I am looking to setup a failover for mobile service in case if the primary endpoint goes down. I have looked into traffic manager but it does not support mobile service endpoints also setting up another mobile service that talks to the replicated DB not possible as the replicated copy is read-only.
What are the possibilities of setting up a failover for mobile services endpoints.
There are several mechanisms for hosting mobile APIs on Azure - Azure Mobile Services is tied to a single region, so you can't fail that over. Azure Mobile Apps is the next generation of Azure Mobile Services and is built on top of Azure App Service Web Apps - it's an extension of the work there. As a result, you can leverage all the cool features of Azure App Service for your mobile service. If you haven't taken a look yet, then take a look at migrating your service to Azure App Service Web Apps.
Once there, Traffic Manager is definitely what you want. You can read about the process of using Traffic Manager with an Azure web app here: http://blogs.msdn.com/b/benjaminperkins/archive/2014/06/02/using-traffic-manager-with-microsoft-azure-web-site.aspx

Resources