How to monitor Azure PaaS services? - azure

Is there anyway we can get notified in case of Azure PaaS service is down? example Storage account or Load balancer etc?

Thank you rickvdbosch. Posting your suggestion as an answer to help other community members.
You can set Health alerts. "Azure Service Health notifies you about Azure service incidents and planned maintenance so you can take action to mitigate downtime. Configure customizable cloud alerts and use your personalized dashboard to analyze health issues, monitor the impact to your cloud resources, get guidance and support, and share details and updates."
can we add specific service in the service health?
In Service Health, choose the Potential impact tab to see the specific list of resources you own that might be impacted by the issue. You can download a CSV list of these resources to share with your team.

Related

VM availibilty report in azure

Azure availability report is based on the number of heartbeat alert generated in log analytics workspace. Therefore, low availability in the report doesn't really mean that a VM was unavailable due to issues in a given month. It could be different reasons eg. was switched off/deallocated or only created in the last few days in a given month etc.
any logic to improve this any KQL or new azure solution.
Have you gone through looking for VM insights, does that provide you the information you required?
VM insights can help deliver predictable performance and availability of vital applications by identifying performance bottlenecks and network issues and can also help you understand whether an issue is related to other dependencies.
You can create a dashboard with different possible options of kusto queries that depend on what you are looking for.
Here are the few other examples of Kusto Query
https://learn.microsoft.com/en-us/azure/azure-monitor/logs/examples
https://learn.microsoft.com/en-us/azure/azure-monitor/insights/solution-agenthealth#sample-log-searches
You can even have these additional readings of all possible ways of the information you required.
Visualizing data from Azure Monitor
Monitoring Azure virtual machines with Azure Monitor
Create and share dashboards of Log Analytics data
Quickstart: Monitor an Azure virtual machine with Azure Monitor
Collect data from an Azure virtual machine with Azure Monitor
Overview of VM insights

How to get hollistic view of Azure environment

There's an awful lot of disjointed documentation on monitoring network/resources in Azure. What I'm looking for is which pieces are needed to get information from VMs, NVA firewalls, azure load balancers, and other network resources and network connectivity into a single pain of glass in Azure. Only concerned about Azure, not on-prem for now.
I've come across azure monitor, log analytics work spaces, event hub, vm extensions, network watcher, insights, etc...but I'm not sure which are required and which are not. One doc leads to the next and I end up with 30 tabs open. I'll also need to be able to push logs to other security devices such as a SIEM.
Does anyone know of a deployment guide that wraps this all up in a more logical fashion? Does anyone have any feedback on which pieces from azure (not 3rd parties) are required at a minimum to accomplish a single pane of glass to view my Azure environment holistically?
General overview of observability in Azure
Likely, the thing you're looking for is Azure Monitor. It's an umbrella term for everything observability related inside Azure.
To store Metrics and Logs you need Log Analytics: it can query data with kusto query language, visualize results, define Alerts on queries.
Alerts is quite a complex beast, as it is spread across the entire cloud. Two types that I use the most:
log-analytics alert (which I mentioned above)
Alerts tab, which is available at every Azure component view. for example, open resource group, and scroll down to Monitoring section
Each component also has a subset of built-in metrics. Likely, you noticed that many azure components on the Overview view display some charts. For example, Azure Storage Account displays Total egress, Total ingress, and other line-charts. When you click on these charts you can customize them. These metrics and charts are free to use.
Microsoft also has all-in-one observability solution for Azure Functions and Web Apps: Application Insights
Dashboards allows to join multiple charts into a single view and share it with others.
If you care about security, Azure proposes Azure Security Center
Deployment/management strategy
I suggest to start with:
Create Log Analytics Workspace, which is the storage for metrics and logs. The azure docs article explains how to design it: how many instances to use, how to rate-limit ingestion (it might be expensive if goes out of control), how to access it and so on.
To get Azure components logs, look for Diagnostic Settings tab at a component page at Azure portal, but not all components has it (sic!). I suggest
sending the most critical data to Log Analytics workspace to store them in a queryable format for 30 days (it's in free tier). This is needed for investigating current issues with your infrastructure
if you might need logs later than 30 days - send them to Storage Account
you mentioned SIEM integration - route required events to Event Hub and then process the stream according to your requirements
So, if you need long-term storage - you need to create Azure Storage Account.
If you need real-time analysis - you need to build a pipeline based on Azure Event Hub.
If you have Azure Functions and Web Apps - add Application Insights. According to my experience, I would suggest starting with a separate instance per each Azure Function resource or Service.
Create Alerts for each component separately. If you do it through UI - open component page at the portal and look for Alerts tab there. If you're automating the process (please do so as soon as possible), do not expect easy trip: I used ARM templates and terraform - in both cases, there are dozens of barely documented features.
Join related components core-metrics into Dashboards and share it with the team. This guide is a good starting point. Note, when you share the dashboard, it's also persisted as an azure resource in the subscription.

Is there any way to get Azure status update only for some services and regions I am using?

Is there any way to get Azure status update only for some services and regions I am using? For example, I am using Cloud Services in West US. When this service in West US is down, I want to get an alert for it. I don't care about other services and other regions.
If you set up alert notifications for your application, you'll get notified when any of the underlying services you're using are not functioning properly. An alert will ensure that your service is available and working.
https://azure.microsoft.com/en-us/documentation/articles/insights-receive-alert-notifications/
If you get an alert about a service issue, that's when I would first take a look at the Azure status dashboard, and then take a look at your application logs to troubleshoot.
Another trick is to create simple URL's in your application that do a quick service test. For example, let's say you're using blob storage in the west datacenter. You could set up a page that does a test write/read to ensure that service is working. This will give you a 100% accurate indication if there is a problem. Since the cloud is highly distributed, and services statuses don't update immediately, I find this method highly preferable.
You would then point your alert monitoring at URL's like this:
http://yourapp.com/
http://yourapp.com/blobtest
http://yourapp.com/redistest
The Azure Status website has the information your need for all Azure regions.
https://azure.microsoft.com/en-us/status/

Azure Cloud Service Disappearing From Azure

I have an Azure Cloud Service Worker Role that I'm using to maintain a Lucene Index. The service has been completely removed from Azure twice. The first time I thought someone may have inadvertently deleted, but I don't believe this to be the case. Has anyone else ran into this issue? Are there any logs/dashboards in Azure that may help me determine why this service is completely disappearing?
MS understands the Importance of your data/service so its highly unlikely that your service will be removed automatically. In order to check about your service you can go to Management Service and check out operation logs within the timeframe when your service was up and now you can filter your service from the results.You can check the Caller ID to check who deleted the service in your case.Check this blog post for checking logs about Azure Mobile Service.
If above is not the case I highly recommend to contact the customer support immediately they will be able to provide you details about your service and can help you in recovering the service if possible.

Windows Azure Endpoints - how many can you have per subscription?

Hej!
We have just started using Windows Azure and are now in the phase of designing our infrastructure. A question that I haven't really found a stright answer for is weather there is a limit on how many endpoints I can have per subscriptions. Some research told me 25 and then I found another place saying 150. I haven't found anything on MS offical Azure site or blog.
Does anyone know? and have the limit been confirmed?
Thanks in advance,
Lucas
I think you're confusing subscription with deployment (a subscription is really a billing model for your Azure resources: compute, storage, bandwidth, etc. A deployment will have a collection of VMs (or web/worker roles) living behind a single xxx.cloudapp.net namespace. You'd then configure endpoints at a deployment level. For a Virtual Machine deployment, you'll only worry about external-facing (input) endpoints, since VMs can communicate internally across all ports. For web/worker Cloud Service deployments, you'll also have input endpoints.
Regard the number of endpoints per deployment: This number has grown over the years, and will continue to evolve. I'm not sure of the current limit, but... It's very simple to create an endpoint with PowerShell. With a simple for-loop, you should be able to create endpoints until an error is thrown.

Resources