{"id":67558,"date":"2023-06-28T10:00:00","date_gmt":"2023-06-28T09:00:00","guid":{"rendered":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/?p=67558"},"modified":"2023-06-28T11:49:44","modified_gmt":"2023-06-28T10:49:44","slug":"a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking","status":"publish","type":"post","link":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/","title":{"rendered":"A Practical Approach to Monitoring Your Cloud Workloads &#8211; Example 1: Networking"},"content":{"rendered":"\n<p>In the&nbsp;<a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/05\/03\/a-practical-approach-to-monitoring-your-cloud-workloads\/\" target=\"_blank\" rel=\"noreferrer noopener\">first post<\/a>&nbsp;of this series, we gave you a high-level overview of the six steps which will help you determine what to monitor in your cloud workloads. We also said that, in order to cement your understanding, we would be releasing some specific example scenarios to help bring this to life. Today we are discussing a real-world example of how you would monitor networking in Azure.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#networking-example-overview\"><\/a>Networking example overview<\/h3>\n\n\n\n<p>This example demonstrates how to apply the six-step process to a simple Hub and Spoke network architecture deployment to create a first pass end-to-end monitoring solution. If you are unfamiliar with the concept of the Hub and Spoke then please visit the Microsoft documentation that describes the&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/cloud-adoption-framework\/ready\/landing-zone\/\" target=\"_blank\" rel=\"noreferrer noopener\">Azure Landing Zone<\/a>.<\/p>\n\n\n\n<p>Remember that we are only aiming to achieve a starting point or baseline. If we continually analyse for every metric, log and alert we will never get anything done! We will also learn over time and include new metrics as we see fit.<\/p>\n\n\n\n<p>Without further ado, let&#8217;s dive in.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-1-evaluate-workload\"><\/a>Step 1: Evaluate Workload<\/h3>\n\n\n\n<p>The first step in determining what you need to monitor for your Azure workload is to identify all of the Azure resources included as part of the end-to-end solution. The approach recommended here is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Create a full architecture diagram of the end-to-end solution.<\/li>\n\n\n\n<li>Create a list of all the Azure resources included in the solution.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#create-an-architecture-diagram\"><\/a>Create an Architecture Diagram<\/h4>\n\n\n\n<p>The following image depicts a simple network drawing showing hub and spoke network connectivity back to on-prem via a VPN gateway and an Azure Firewall.<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-1024x448.webp\" alt=\"This image depicts a simple network drawing showing hub and spoke network connectivity back to on-prem via a VPN gateway and an Azure Firewall.\" class=\"wp-image-67561 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-1024x448.webp 1024w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-300x131.webp 300w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-768x336.webp 768w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-1536x672.webp 1536w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example.webp 1905w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/arch-example-1024x448.webp\"><\/a><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#create-an-azure-resource-list\"><\/a>Create an Azure Resource List<\/h4>\n\n\n\n<p>From the architecture drawing you can now derive a list of all the Azure resource types involved in this solution as follows:<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/resource-list-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/resource-list-example.webp\" alt=\"An example list of Azure resource types.\" class=\"wp-image-67562 webp-format\" srcset=\"\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/resource-list-example.webp\"><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-2-review-available-metrics-logs-and-services\"><\/a>Step 2: Review Available Metrics, Logs and Services<\/h3>\n\n\n\n<p>You may already have a clear list of monitoring requirements, but it is worth cross checking these with what is available \u2018out of the box\u2019 from a metrics and logs perspective for each Azure resource involved in the solution. The approach recommended here is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For each Azure service gather the available metrics.<\/li>\n\n\n\n<li>For each Azure service identify additional associated monitoring logs and services.<\/li>\n<\/ul>\n\n\n\n<p>Metrics and logs are different things, and it is important to understand and capture both for all the resources in your deployment. To use our car analogy again, metrics can be thought of as your speedometer where small pieces of telemetry information are sent in near real-time to your car dashboard. Logs would be fault messages recorded that have their own structure and would be read at a later date and analysed using queries.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#gather-available-metrics\"><\/a>Gather Available Metrics<\/h4>\n\n\n\n<p>You can either grab the available metrics for your Azure resources manually from the&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/essentials\/metrics-supported\" target=\"_blank\" rel=\"noreferrer noopener\">supported metrics<\/a>&nbsp;page. Alternatively, you can use&nbsp;<a href=\"https:\/\/github.com\/emrgcl\/WAFMonitoring\" target=\"_blank\" rel=\"noreferrer noopener\">this script<\/a>&nbsp;for automatically obtaining all metrics for Azure resources that you already have deployed. You just point the script at your chosen scope (subscription, resource group etc.) and let it run. For this example, you will end up with a list of metrics like this:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example-515x1024.webp\" alt=\"An example list of metrics.\" class=\"wp-image-67564 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example-515x1024.webp 515w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example-151x300.webp 151w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example.webp 534w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-list-example-515x1024.webp\"><\/a><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#identify-associated-monitoring-logs-and-services\"><\/a>Identify Associated Monitoring Logs and Services<\/h4>\n\n\n\n<p>By looking at the Azure Portal under the Monitoring section for each Azure Resource or by reading the documentation associated with each Azure resource, you can identify possible additional sources of monitoring information. Broadly speaking, there are three considerations here for each resource:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/essentials\/activity-log?tabs=powershell\" target=\"_blank\" rel=\"noreferrer noopener\">Activity Log<\/a>: This provides insight into subscription-level events. The activity log includes information like when a resource is modified, or when a virtual machine is started. You may find it useful to monitor when a resource is changed in some way. These logs can be routed to a destination like Log Analytics.<\/li>\n\n\n\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/logs\/data-platform-logs\" target=\"_blank\" rel=\"noreferrer noopener\">Monitor Logs<\/a>: Different resources will capture different logs and these can be queried in Log Analytics. You can also use Alerts to pro-actively warn you of situations as they arise.<\/li>\n\n\n\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/essentials\/diagnostic-settings?tabs=portal\" target=\"_blank\" rel=\"noreferrer noopener\">Diagnostic Settings<\/a>: Each Azure resource requires its own diagnostic setting, which defines the type of metric and log data to send to the destinations defined in the setting. The available types vary by resource type. Setting this up is an important step because NO resource logs are collected until they are routed to a destination.<\/li>\n<\/ol>\n\n\n\n<p>For example, in addition to metrics, from the Azure portal we can see the following for the&nbsp;<strong>Azure Network Security Group<\/strong>&nbsp;resource:<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_monitoring.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_monitoring.webp\" alt=\"Different options under the Azure Network Security Group resource.\" class=\"wp-image-67565 webp-format\" srcset=\"\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_monitoring.webp\"><\/a><\/figure>\n\n\n\n<p>Looking more closely into the Diagnostic Settings we can see that there are two categories of logs we can use. If we send them to Log Analytics they can be queried.<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview-1024x386.webp\" alt=\"An example of querying diagnostic settings.\" class=\"wp-image-67566 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview-1024x386.webp 1024w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview-300x113.webp 300w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview-768x289.webp 768w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview.webp 1300w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/nsg_diagnosticview-1024x386.webp\"><\/a><\/figure>\n\n\n\n<p>Each of the resources will have their own documentation and this is the&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/virtual-network\/virtual-network-nsg-manage-log\" target=\"_blank\" rel=\"noreferrer noopener\">specific documentation for the NSG<\/a>.<\/p>\n\n\n\n<p>It will take time, but you need to do this as there may be a log that is vital to you. Looking through each of the resources in our networking example we could derive a starting list like this:<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/logs-list-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/logs-list-example.webp\" alt=\"A list of resources from the networking example.\" class=\"wp-image-67567 webp-format\" srcset=\"\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/logs-list-example.webp\"><\/a><\/figure>\n\n\n\n<p>Summarised as follows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Log Based Monitoring Options<\/th><\/tr><\/thead><tbody><tr><td>Connection Monitor (Network Watcher)<\/td><\/tr><tr><td>Azure Firewall Logs<\/td><\/tr><tr><td>Virtual Machine Insights<\/td><\/tr><tr><td>Virtual Machine Logs (AMA)<\/td><\/tr><tr><td>NSG Flow Logs<\/td><\/tr><tr><td>Activity Logs<\/td><\/tr><tr><td>Diagnostics Logs<\/td><\/tr><tr><td>Alerts (Azure Monitor)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-3-assemble-your-requirements\"><\/a>Step 3: Assemble your requirements<\/h3>\n\n\n\n<p>The next very important stage is to assemble some coherent requirements. It is important to understand the&nbsp;<strong>\u2018What\u2019<\/strong>,&nbsp;<strong>\u2018Who\u2019<\/strong>&nbsp;and&nbsp;<strong>\u2018How\u2019<\/strong>&nbsp;for each monitoring requirement and so the recommended approach is to carefully write these requirements in the format:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>As a {named individual\/team} I want {a specific measurable outcome} so that {the rationale for this}.<\/strong><\/li>\n<\/ul>\n\n\n\n<p>You should also categorise your monitoring requirements. For example, wanting to receive an alert email for a metric threshold breach is not the same as wanting a dashboard showing the variation in that metric over the last 90 days. Therefore, you could classify the former as an&nbsp;<strong>\u2018ALERT\u2019<\/strong>&nbsp;category whilst the latter is a&nbsp;<strong>\u2018PERFORMANCE\u2019<\/strong>&nbsp;category.<\/p>\n\n\n\n<p>As a starting point, you should consider making a list of these&nbsp;<strong>&#8216;User Stories&#8217;<\/strong>. A User Story is an end state that describes something as told from the perspective of the person desiring the functionality. It is widely used in software development as a small unit of work. You can then categorise your stories into different sections together with a success criteria referred to as&nbsp;<strong>&#8216;Definition of Done&#8217;<\/strong>&nbsp;(DoD). This approach works very well for monitoring requirements. Here are some suggested category examples, and you may want to add some of your own:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u2018Alert&#8217;<\/strong>\n<ul class=\"wp-block-list\">\n<li>Definition: Notification when monitored thresholds are breached<\/li>\n\n\n\n<li>Format: email, text, alarm console bulb, web hook etc.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u2018Performance\u2019<\/strong>\n<ul class=\"wp-block-list\">\n<li>Definition: Variation of a measured value over time<\/li>\n\n\n\n<li>Format: dashboards (graphs, time series), emailed reports etc.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u2018Troubleshooting\u2019<\/strong>\n<ul class=\"wp-block-list\">\n<li>Definition: Pro-active investigations into specific issues<\/li>\n\n\n\n<li>Format: logs<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>With this approach you can write a monitoring requirement like this example:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Title<\/th><th>Action<\/th><th>Comments<\/th><\/tr><\/thead><tbody><tr><td>VPN Connectivity Alerts<\/td><td>Story<\/td><td><strong>As a<\/strong>&nbsp;\u2018Cloud Operations Engineer\u2019,&nbsp;<strong>I want<\/strong>&nbsp;to be able to receive an alert notification by email when connectivity from Azure to on-prem over the VPN connection fails,&nbsp;<strong>this is so that<\/strong>&nbsp;I can immediately investigate and remediate the issue.<\/td><\/tr><tr><td><\/td><td>DoD<\/td><td>\u2022 Is triggered when packet transfer from Azure NIC to on-prem NIC over the VPN link fails to arrive.<\/td><\/tr><tr><td><\/td><td><\/td><td>\u2022 An alert notification email received to the \u2018cloud support engineering\u2019 email alias within 15 minutes of the occurrence.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>So, for our networking example here, we could assemble some of our requirements like this:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-1024x480.webp\" alt=\"An example table showing a list of requirements.\" class=\"wp-image-67568 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-1024x480.webp 1024w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-300x141.webp 300w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-768x360.webp 768w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-1536x720.webp 1536w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example.webp 1712w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-example-1024x480.webp\"><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-4-map-your-requirements-to-metrics-logs-and-services\"><\/a>Step 4: Map your requirements to metrics, logs and services<\/h3>\n\n\n\n<p>This is an iterative process of evaluating available metrics and logs for each of your Azure resources and then mapping which of these meet your requirements as defined in Step 3. This may result in you spotting new requirements to add to the list as well as identifying where an \u2018Out of the Box\u2019 metric can meet that requirement. So, the approach here is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Iteratively review the Azure metrics against your requirements from the previous step and select which one will satisfy it.<\/li>\n\n\n\n<li>Iteratively review the Azure logs against your requirements from the previous step and select which one will satisfy it.<\/li>\n<\/ul>\n\n\n\n<p>For example, looking at the metrics list, we can see that requirements 4, 5, 8 and 9 can be satisfied with &#8216;Out of the Box&#8217; available metrics:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example-529x1024.webp\" alt=\"An example metrics list.\" class=\"wp-image-67563 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example-529x1024.webp 529w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example-155x300.webp 155w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example.webp 548w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/metrics-mapping-example-529x1024.webp\"><\/a><\/figure>\n\n\n\n<p>So, for our networking example here, we could map some of our requirements to Azure metrics and logs as below, where the green highlights are showing where a metric can meet a requirement from the requirements list and the yellow where an alternative log base solution is required:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-1024x475.webp\" alt=\"An example table showing a list of requirements, with colour-coding.\" class=\"wp-image-67569 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-1024x475.webp 1024w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-300x139.webp 300w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-768x357.webp 768w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-1536x713.webp 1536w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example.webp 1766w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/requirements-mapping-example-1024x475.webp\"><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-5-populate-your-backlog-stories\"><\/a>Step 5: Populate your backlog stories<\/h3>\n\n\n\n<p>The next stage is to convert the outputs from the previous stages to generate a list of actual tasks for implementation of the monitoring requirements. The approach here is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Identify the service and tools you will use to implement your requirements.<\/li>\n\n\n\n<li>Create a list of tasks for each of your requirements for implementation in your Azure environment\/landing zone.<\/li>\n<\/ul>\n\n\n\n<p>These tasks will need to map to the specifics of your Azure landing zone. For example, if the environment is managed through CI\/CD pipelines and uses ARM templates, then the tasks could involve the creation of ARM templates to implement your monitoring solution as shown in our example below. However, this may not be the case for your environment as maybe you are using Terraform or something else.<\/p>\n\n\n\n<p>For our networking example, the list of Azure services that has been selected to meet the requirements is as follows:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Azure Services<\/th><\/tr><\/thead><tbody><tr><td>Azure Resource Manager (ARM) Templates<\/td><\/tr><tr><td>Alerts (Azure Monitor)<\/td><\/tr><tr><td>Azure Metrics<\/td><\/tr><tr><td>Azure Network Watcher<\/td><\/tr><tr><td>Azure Connectivity Monitor<\/td><\/tr><tr><td>Azure Dashboards<\/td><\/tr><tr><td>Azure Firewall Diagnostics<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>This in turn leads to a first pass at populating a backlog of tasks for our network example as follows:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example-1024x695.webp\" alt=\"An example showing a backlog of tasks for our network example.\" class=\"wp-image-67570 webp-format\" srcset=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example-1024x695.webp 1024w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example-300x204.webp 300w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example-768x521.webp 768w, https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example.webp 1456w\" data-orig-src=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2023\/06\/tasks-example-1024x695.webp\"><\/a><\/figure>\n\n\n\n<p>Here you will also notice (shown in bold) that this is where you are selecting the tools that meet your requirements. In this example Azure tools such as Azure Monitor, Azure Network Watcher etc. have been selected but this could be anything that fits your preference or environment constraints.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#step-6-data-retention-considerations\"><\/a>Step 6: Data retention considerations<\/h3>\n\n\n\n<p>The final step is to understand how long you need to keep your logs and metrics. Once you&#8217;ve configured the logging and metrics across your resources, information will need to be sent to a destination. At last, you&#8217;ll have the visibility you need but it comes at a financial cost. Therefore, you will need to look at both your Functional Requirements and Non-Functional Requirements to assess the correct retention and archive period.<\/p>\n\n\n\n<p>As an example: Let&#8217;s say your functional requirement states that you need 90 days of data as a minimum to satisfy some performance requirements and your non-functional data requirements state you need 7 years for archiving. In this example, as with many others, the trade-off is requirements vs cost. We can look at a lower cost data archive storage model for data after 90 days has expired in order to keep costs down.<\/p>\n\n\n\n<p>First let&#8217;s consider the metrics. As detailed&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/essentials\/data-platform-metrics#retention-of-metrics\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>, platform and custom metrics are stored for 93 days but you can route them to a destination such as Azure storage where you can keep them indefinitely, to a third-party solution via Event Hubs or to a Log Analytics workspace where different retention periods apply.<\/p>\n\n\n\n<p>And, as with metrics, it goes without saying that Azure Monitor can help with logging data, and we can adjust the settings on our Log Analytics workspace to accommodate our needs. The first thing we need to understand is that there are two different periods: a Retention period and an Archiving period. All of this is detailed&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/logs\/data-retention-archive?tabs=portal-1%2Cportal-2\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>, but in essence during the interactive retention period, data is available for monitoring, troubleshooting, and analytics. When you no longer use the logs, but still need to keep the data for compliance or occasional investigation, archive the logs to save costs. Archived data stays in the same table, alongside the data that&#8217;s available for interactive queries. By default, all tables in your workspace inherit the workspace&#8217;s interactive retention setting and have no archive policy. You can modify the retention and archive policies of individual tables, except for workspaces in the legacy Free Trial pricing tier.<\/p>\n\n\n\n<p>If all the data ingested into the Log Analytics workspace must be available for analysis and troubleshooting for 90 days, the default workspace retention policy can be changed to 90 days. That solves the functional requirement mandate. For the non-functional requirement, we would need to set an archive policy per table, and we can use 2556 days (7 years) as the setting. These settings would satisfy our example requirements here.<\/p>\n\n\n\n<p>As another option, you can export your logs from the Log Analytics workspace to another destination. This is detailed&nbsp;<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/azure-monitor\/logs\/logs-export-logic-app\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>. What this means is that you can choose not to archive the data in Log Analytics but instead archive it somewhere else which may be a lower cost option for you whilst conforming to your requirements.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/thecloudforgedotcom\/wdthecloudforge.github.io\/blob\/main\/blogs\/monitoring-blog-2.md#summary\"><\/a>Summary<\/h3>\n\n\n\n<p>This concludes the first of our examples into how you can define and configure a monitoring strategy. In this post we used a real-world scenario based around networking and showed you the practical examples of each step.<\/p>\n\n\n\n<p>As a reminder, don&#8217;t spend a large amount of time trying to gather every single eventuality for your user stories. Monitoring is a large and evolving topic so it&#8217;s realistic to expect that things may change over time. With that in mind aim for a Minimum Viable Product and build from there. That way you will start to get value from your monitoring strategy far quicker.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>William Darnell and Tony Barker discuss a real-world example of how you would monitor networking in Azure.<\/p>\n","protected":false},"author":430,"featured_media":21801,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"categories":[594],"post_tag":[128,519],"content-type":[],"coauthors":[2040,2041],"class_list":["post-67558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technetuk","tag-azure","tag-technet-uk"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom\" \/>\n<meta property=\"og:description\" content=\"William Darnell and Tony Barker discuss a real-world example of how you would monitor networking in Azure.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Industry Blogs - United Kingdom\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-28T09:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-28T10:49:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"450\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"William Darnell, Tony Barker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"William Darnell, Tony Barker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/\"},\"author\":[{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/author\\\/william-darnell\\\/\",\"@type\":\"Person\",\"@name\":\"William Darnell\"},{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/author\\\/tony-barker\\\/\",\"@type\":\"Person\",\"@name\":\"Tony Barker\"}],\"headline\":\"A Practical Approach to Monitoring Your Cloud Workloads &#8211; Example 1: Networking\",\"datePublished\":\"2023-06-28T09:00:00+00:00\",\"dateModified\":\"2023-06-28T10:49:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/\"},\"wordCount\":2239,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2020\\\/01\\\/technetcloudpuzzlethumb.jpg\",\"keywords\":[\"Azure\",\"TechNet UK\"],\"articleSection\":[\"TechNet UK\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/\",\"url\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/\",\"name\":\"A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2020\\\/01\\\/technetcloudpuzzlethumb.jpg\",\"datePublished\":\"2023-06-28T09:00:00+00:00\",\"dateModified\":\"2023-06-28T10:49:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#primaryimage\",\"url\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2020\\\/01\\\/technetcloudpuzzlethumb.jpg\",\"contentUrl\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2020\\\/01\\\/technetcloudpuzzlethumb.jpg\",\"width\":800,\"height\":450,\"caption\":\"An illustration of a cloud made of puzzle pieces, with a drawing of Bit the Raccoon to the right of the image.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/technetuk\\\/2023\\\/06\\\/28\\\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A Practical Approach to Monitoring Your Cloud Workloads &#8211; Example 1: Networking\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/\",\"name\":\"Microsoft Industry Blogs - United Kingdom\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#organization\",\"name\":\"Microsoft Industry Blogs - United Kingdom\",\"url\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2019\\\/08\\\/Microsoft-Logo.png\",\"contentUrl\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/22\\\/2019\\\/08\\\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Industry Blogs - United Kingdom\"},\"image\":{\"@id\":\"https:\\\/\\\/cm-edgetun.pages.dev\\\/en-gb\\\/industry\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/","og_locale":"en_US","og_type":"article","og_title":"A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom","og_description":"William Darnell and Tony Barker discuss a real-world example of how you would monitor networking in Azure.","og_url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/","og_site_name":"Microsoft Industry Blogs - United Kingdom","article_published_time":"2023-06-28T09:00:00+00:00","article_modified_time":"2023-06-28T10:49:44+00:00","og_image":[{"width":800,"height":450,"url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg","type":"image\/jpeg"}],"author":"William Darnell, Tony Barker","twitter_card":"summary_large_image","twitter_misc":{"Written by":"William Darnell, Tony Barker","Est. reading time":"9 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#article","isPartOf":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/"},"author":[{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/author\/william-darnell\/","@type":"Person","@name":"William Darnell"},{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/author\/tony-barker\/","@type":"Person","@name":"Tony Barker"}],"headline":"A Practical Approach to Monitoring Your Cloud Workloads &#8211; Example 1: Networking","datePublished":"2023-06-28T09:00:00+00:00","dateModified":"2023-06-28T10:49:44+00:00","mainEntityOfPage":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/"},"wordCount":2239,"commentCount":0,"publisher":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#organization"},"image":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#primaryimage"},"thumbnailUrl":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg","keywords":["Azure","TechNet UK"],"articleSection":["TechNet UK"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/","url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/","name":"A Practical Approach to Monitoring Your Cloud Workloads - Example 1: Networking - Microsoft Industry Blogs - United Kingdom","isPartOf":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#primaryimage"},"image":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#primaryimage"},"thumbnailUrl":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg","datePublished":"2023-06-28T09:00:00+00:00","dateModified":"2023-06-28T10:49:44+00:00","breadcrumb":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#primaryimage","url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg","contentUrl":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2020\/01\/technetcloudpuzzlethumb.jpg","width":800,"height":450,"caption":"An illustration of a cloud made of puzzle pieces, with a drawing of Bit the Raccoon to the right of the image."},{"@type":"BreadcrumbList","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/technetuk\/2023\/06\/28\/a-practical-approach-to-monitoring-your-cloud-workloads-example-1-networking\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/"},{"@type":"ListItem","position":2,"name":"A Practical Approach to Monitoring Your Cloud Workloads &#8211; Example 1: Networking"}]},{"@type":"WebSite","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#website","url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/","name":"Microsoft Industry Blogs - United Kingdom","description":"","publisher":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#organization","name":"Microsoft Industry Blogs - United Kingdom","url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-content\/uploads\/sites\/22\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Industry Blogs - United Kingdom"},"image":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/posts\/67558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/users\/430"}],"replies":[{"embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/comments?post=67558"}],"version-history":[{"count":0,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/posts\/67558\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/media\/21801"}],"wp:attachment":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/media?parent=67558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/categories?post=67558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/post_tag?post=67558"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/content-type?post=67558"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-gb\/industry\/blog\/wp-json\/wp\/v2\/coauthors?post=67558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}