{"id":1449,"date":"2023-04-02T18:36:02","date_gmt":"2023-04-02T17:36:02","guid":{"rendered":"https:\/\/mortenknudsen.net\/?p=1449"},"modified":"2023-04-13T21:00:33","modified_gmt":"2023-04-13T20:00:33","slug":"collecting-performance-data-using-azure-monitor-agent-vminsights-and-servicemap","status":"publish","type":"post","link":"https:\/\/mortenknudsen.net\/?p=1449","title":{"rendered":"Collecting Performance data using Azure Monitor Agent, VMInsights and ServiceMap"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">This blog will give you insight on how to setup collection o<strong>f Performance and ServiceMap information<\/strong> from <strong>Linux<\/strong> and <strong>Windows devices<\/strong> using <strong>Azure Monitor Agent (AMA).<\/strong> This is also referred to as <strong>VMInsight<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">VM insights collects performance and connection metrics, computer and process inventory data, and health state information and forwards it to the Log Analytics workspace in Azure Monitor. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can use the data for example when you do migration planning, capacity analysis, discovery, and on-demand performance troubleshooting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Performance data<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1-1024x612.png\" alt=\"\" class=\"wp-image-1640\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1-1024x612.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1-300x179.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1-768x459.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1-1536x918.png 1536w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-1.png 1676w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ServiceMap<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"759\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1024x759.png\" alt=\"\" class=\"wp-image-1641\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1024x759.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-300x222.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-768x569.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2.png 1348w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This blog-post is part of a series of blog posts to <a href=\"https:\/\/mortenknudsen.net\/?p=1687\" target=\"_blank\" rel=\"noreferrer noopener\">master Azure logging in depth (overview)<\/a>. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized is-style-default\"><a href=\"https:\/\/mortenknudsen.net\/?p=1687\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-25.png\" alt=\"\" class=\"wp-image-2124\" width=\"434\" height=\"502\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-25.png 867w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-25-259x300.png 259w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-25-768x889.png 768w\" sizes=\"auto, (max-width: 434px) 100vw, 434px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To get you started, you can find <a href=\"https:\/\/github.com\/KnudsenMorten\/AzureLogLibrary\" target=\"_blank\" rel=\"noreferrer noopener\">ARM-templates &amp; scripts in my AzureLogLibrary (github)<\/a>. Details will be covered in the articles.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/github.com\/KnudsenMorten\/AzureLogLibarary\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-26-1024x466.png\" alt=\"\" class=\"wp-image-2125\" width=\"400\" height=\"182\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-26-1024x466.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-26-300x137.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-26-768x349.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/image-26.png 1057w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Quick Links<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"#arm\">How to start collecting performance &amp; service map events using ARM-template ?<\/a><br><a href=\"#gui\">How to setup in GUI<\/a><br><a href=\"#architecture\">High-level architecture \/ flow<\/a><br><a href=\"#layout\">Layout of VMInsight DCR (JSON)<\/a><br><a href=\"#transform-example\">Data transformation<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">How to start collecting performance &amp; service map events using ARM-template ?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">To get you started, I have prepared&nbsp;ARM-templates on <a href=\"https:\/\/github.com\/KnudsenMorten\/AzureLogLibrary\" target=\"_blank\" rel=\"noreferrer noopener\">my Github<\/a><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><a href=\"https:\/\/raw.githubusercontent.com\/KnudsenMorten\/AzureLogLibrary\/main\/DataCollection\/vminsight\/dcr-windows-vmhealth-performance_servicemap.json\" target=\"_blank\" rel=\"noreferrer noopener\">VMInsight &#8211; Windows &#8211; Performance_ServiceMap<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/raw.githubusercontent.com\/KnudsenMorten\/AzureLogLibrary\/main\/DataCollection\/vminsight\/dcr-linux-vmhealth-performance_servicemap.json\" target=\"_blank\" rel=\"noreferrer noopener\">VMInsight &#8211; Linux &#8211; Performance_ServiceMap<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/raw.githubusercontent.com\/KnudsenMorten\/AzureLogLibrary\/main\/DataCollection\/vminsight\/dcr-linux-vmhealth-performance_basic.json\" target=\"_blank\" rel=\"noreferrer noopener\">VMInsight &#8211; Linux &#8211; Performance_Basic<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/KnudsenMorten\/AzureLogLibrary\" target=\"_blank\" rel=\"noreferrer noopener\">I have also provided more documentation and powershell script to deploy more DCRs<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lastly, I am also providing \u2018Deploy to Azure\u2019 shortcuts, based on the mentioned ARM-templates so you can deploy samples into your environment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">VMInsight &#8211; Windows &#8211; Performance_ServiceMap<\/h2>\n\n\n\n<a href=\"https:\/\/portal.azure.com\/#create\/Microsoft.Template\/uri\/https%3A%2F%2Fraw.githubusercontent.com%2FKnudsenMorten%2FAzureLogLibrary%2Fmain%2FDataCollection%2Fvminsight%2Fdcr-windows-vmhealth-performance_servicemap.json\" target=\"_blank\" rel=\"noopener\">\n  <img decoding=\"async\" src=\"https:\/\/aka.ms\/deploytoazurebutton\">\n<\/a>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">VMInsight &#8211; Linux &#8211; Performance_ServiceMap<\/h2>\n\n\n\n<a href=\"https:\/\/portal.azure.com\/#create\/Microsoft.Template\/uri\/https%3A%2F%2Fraw.githubusercontent.com%2FKnudsenMorten%2FAzureLogLibrary%2Fmain%2FDataCollection%2Fvminsight%2Fdcr-linux-vmhealth-performance_servicemap.json\" target=\"_blank\" rel=\"noopener\">\n  <img decoding=\"async\" src=\"https:\/\/aka.ms\/deploytoazurebutton\">\n<\/a>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">VMInsight &#8211; Linux &#8211; Performance_Basic<\/h2>\n\n\n\n<a href=\"https:\/\/portal.azure.com\/#create\/Microsoft.Template\/uri\/https%3A%2F%2Fraw.githubusercontent.com%2FKnudsenMorten%2FAzureLogLibrary%2Fmain%2FDataCollection%2Fvminsight%2Fdcr-linux-vmhealth-performance_basic.json\" target=\"_blank\" rel=\"noopener\">\n  <img decoding=\"async\" src=\"https:\/\/aka.ms\/deploytoazurebutton\">\n<\/a>\n\n\n\n<h1 class=\"wp-block-heading\"><br>How to setup in GUI ?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">If you prefer to setup using the GUI, you will only be able to collect basic performance counters &#8211; and not servicemap information. Please use the provided ARM-templates to setup a combi-collection &#8211; see the previous section.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"847\" height=\"1024\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-1-1-847x1024.png\" alt=\"\" class=\"wp-image-1889\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-1-1-847x1024.png 847w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-1-1-248x300.png 248w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-1-1-768x929.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-1-1.png 979w\" sizes=\"auto, (max-width: 847px) 100vw, 847px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"541\" height=\"231\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-2-1.png\" alt=\"\" class=\"wp-image-1890\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-2-1.png 541w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-2-1-300x128.png 300w\" sizes=\"auto, (max-width: 541px) 100vw, 541px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"824\" height=\"607\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-3-1.png\" alt=\"\" class=\"wp-image-1891\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-3-1.png 824w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-3-1-300x221.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-3-1-768x566.png 768w\" sizes=\"auto, (max-width: 824px) 100vw, 824px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"518\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-4-1-1024x518.png\" alt=\"\" class=\"wp-image-1892\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-4-1-1024x518.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-4-1-300x152.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-4-1-768x388.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-4-1.png 1159w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You don&#8217;t need to associate the DCR rule with any resources when you are just setting up the DCR rule. You can do this later.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Some data sources require a data collection endpoint (txt-logs, iis-logs, log ingestion api). This is covered in another <a href=\"https:\/\/mortenknudsen.net\/?p=1442\" target=\"_blank\" rel=\"noreferrer noopener\">blog-post<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can just click Next<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"392\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-5-1-1024x392.png\" alt=\"\" class=\"wp-image-1893\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-5-1-1024x392.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-5-1-300x115.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-5-1-768x294.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/dcr-create-5-1.png 1179w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"731\" height=\"527\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-basic.png\" alt=\"\" class=\"wp-image-1642\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-basic.png 731w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-basic-300x216.png 300w\" sizes=\"auto, (max-width: 731px) 100vw, 731px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">ServiceMap information provides cool features, where you will be able to see which devices are talking with the server &#8211; and to which processes. You will see both inbound and outbound traffic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"759\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1-1024x759.png\" alt=\"\" class=\"wp-image-1643\" srcset=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1-1024x759.png 1024w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1-300x222.png 300w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1-768x569.png 768w, https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/vminsight-2-1.png 1348w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><br><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"architecture\">High-level architecture \/ flow<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Data will be sent into the following Azure LogAnalytics standard tables:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>InsightsMetrics<\/td><td>Performance counters &amp; health state (heartbeat) counters &#8211; separated into the following Namespaces:<br><br>Computer<br>LogicalDisk<br>Network<br>memory<br>Processer<\/td><\/tr><tr><td>VMBound<br>VMConnection<\/td><td>These tables provide information about the connections for a machine (inbound and outbound), as well as the server ports that are open\/active on them. <br><br>ConnectionMetrics are also exposed via APIs that provide the means to obtain a specific metric during a time window. <br><br>TCP connections resulting from&nbsp;<em>accepting<\/em>&nbsp;on a listening socket are inbound, while those created by&nbsp;<em>connecting<\/em>&nbsp;to a given IP and port are outbound. The direction of a connection is represented by the Direction property, which can be set to either&nbsp;<strong>inbound<\/strong>&nbsp;or&nbsp;<strong>outbound<\/strong>.<br><br>Records in these tables are generated from data reported by the Dependency Agent. <br><br>Every record represents an observation over a 1-minute time interval. <br><br>The TimeGenerated property indicates the start of the time interval. Each record contains information to identify the respective entity, that is, connection or port, as well as metrics associated with that entity. <br><br>Currently, only network activity that occurs using TCP over IPv4 is reported.<\/td><\/tr><tr><td>VMProcess<\/td><td>Contains all processes and PIDs running on the device<\/td><\/tr><tr><td>VMComputer<\/td><td>Contains detailed information about the device<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"250\" height=\"186\" src=\"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/03\/image-6.png\" alt=\"\" class=\"wp-image-1644\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"layout\">Layout of VMInsight DCR (JSON)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">DCR contains the following <strong>dataSources<\/strong> section, if you want to collect vminsight data.<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code> \"dataSources\": {\n            \"performanceCounters\": &#91;\n                {\n                    \"streams\": &#91;\n                        \"Microsoft-InsightsMetrics\"\n                    ],\n                    \"samplingFrequencyInSeconds\": 60,\n                    \"counterSpecifiers\": &#91;\n                        \"\\\\VmInsights\\\\DetailedMetrics\"\n                    ],\n                    \"name\": \"VMInsightsPerfCounters\"\n                }\n        <\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>{\n    \"properties\": {\n        \"description\": \"Data collection rule for VM Insights.\",\n        \"immutableId\": \"dcr-f25135f34aba4b3ca04ce623aeace6a1\",\n        \"dataSources\": {\n            \"performanceCounters\": &#91;\n                {\n                    \"streams\": &#91;\n                        \"Microsoft-InsightsMetrics\"\n                    ],\n                    \"samplingFrequencyInSeconds\": 60,\n                    \"counterSpecifiers\": &#91;\n                        \"\\\\VmInsights\\\\DetailedMetrics\"\n                    ],\n                    \"name\": \"VMInsightsPerfCounters\"\n                }\n            ],\n            \"extensions\": &#91;\n                {\n                    \"streams\": &#91;\n                        \"Microsoft-ServiceMap\"\n                    ],\n                    \"extensionName\": \"DependencyAgent\",\n                    \"extensionSettings\": {},\n                    \"name\": \"DependencyAgentDataSource\"\n                }\n            ]\n        },\n        \"destinations\": {\n            \"logAnalytics\": &#91;\n                {\n                    \"workspaceResourceId\": \"\/subscriptions\/fce4f282-fcc6-43fb-94d8-bf1701b862c3\/resourcegroups\/rg-logworkspaces\/providers\/microsoft.operationalinsights\/workspaces\/log-platform-management-srvnetworkcloud-p\",\n                    \"workspaceId\": \"b7d80924-d55d-4bf6-b2b3-9889301c7114\",\n                    \"name\": \"VMInsightsPerf-Logs-Dest\"\n                }\n            ]\n        },\n        \"dataFlows\": &#91;\n            {\n                \"streams\": &#91;\n                    \"Microsoft-InsightsMetrics\"\n                ],\n                \"destinations\": &#91;\n                    \"VMInsightsPerf-Logs-Dest\"\n                ]\n            },\n            {\n                \"streams\": &#91;\n                    \"Microsoft-ServiceMap\"\n                ],\n                \"destinations\": &#91;\n                    \"VMInsightsPerf-Logs-Dest\"\n                ]\n            }\n        ],\n        \"provisioningState\": \"Succeeded\"\n    }<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"transform-example\">Data transformation<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">It doesn&#8217;t make much sense to do transformation of data related to servicemap or performance data. Instead I would recommend changing the frequency of how often you retrieve the data &#8211; by default every 60 sec.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You will manage the frequency using the <strong>samplerFrequencyInSeconds<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code> \"samplingFrequencyInSeconds\": 60,\n                    \"counterSpecifiers\": &#91;\n                        \"\\\\VmInsights\\\\DetailedMetrics\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog will give you insight on how to setup collection of Performance and ServiceMap information from Linux and Windows &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Collecting Performance data using Azure Monitor Agent, VMInsights and ServiceMap\" class=\"read-more button\" href=\"https:\/\/mortenknudsen.net\/?p=1449#more-1449\" aria-label=\"Read more about Collecting Performance data using Azure Monitor Agent, VMInsights and ServiceMap\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":1897,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"ngg_post_thumbnail":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[140,55,59,129,131,61,128,54,143,141,57,139,136,138,137,142,134,146,60,132,58,145,135,144],"tags":[],"class_list":["post-1449","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ama","category-azure","category-azure-arc","category-azure-data-collection-rules","category-azure-data-ingestion-pipeline","category-azure-extensions","category-azure-log-ingestion-api","category-azure-loganalytics","category-azure-logging","category-azure-monitor-agent","category-azure-security","category-data-collection-endpoint","category-data-transformation","category-dce","category-dcr","category-logging","category-mvpbuzz","category-performance-collection","category-scripting","category-security","category-sentinel","category-servicemap","category-transformation","category-vminsight","infinite-scroll-item","resize-featured-image"],"featured_image_src":"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/insight.png","author_info":{"display_name":"Morten Knudsen","author_link":"https:\/\/mortenknudsen.net\/?author=1"},"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack_featured_media_url":"https:\/\/mortenknudsen.net\/wp-content\/uploads\/2023\/04\/insight.png","_links":{"self":[{"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/posts\/1449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1449"}],"version-history":[{"count":29,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/posts\/1449\/revisions"}],"predecessor-version":[{"id":2290,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/posts\/1449\/revisions\/2290"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=\/wp\/v2\/media\/1897"}],"wp:attachment":[{"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mortenknudsen.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}