Skip to content

Commit

Permalink
Merge pull request #197607 from hhunter-ms/hh-1945408
Browse files Browse the repository at this point in the history
[Profiler] TOC restructure for clarity
  • Loading branch information
denrea authored Jun 1, 2022
2 parents 9e62d27 + c418f46 commit 6f7be82
Show file tree
Hide file tree
Showing 85 changed files with 129 additions and 69 deletions.
60 changes: 60 additions & 0 deletions .openpublishing.redirection.azure-monitor.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,65 @@
{
"redirections": [
{
"source_path_from_root": "/articles/azure-monitor/app/profiler.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-aspnetcore-linux.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-aspnetcore-linux",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-azure-functions.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-azure-functions",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-bring-your-own-storage.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-bring-your-own-storage",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-cloudservice.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-cloudservice",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-containers.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-containers",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-overview.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-overview",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-servicefabric.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-servicefabric",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-settings.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-settings",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-trackrequests.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-trackrequests",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-troubleshooting.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-troubleshooting",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/profiler-vm.md",
"redirect_url": "/azure/azure-monitor/profiler/profiler-vm",
"redirect_document_id": false
},
{
"source_path_from_root": "/articles/azure-monitor/app/app-insights-dashboards.md",
"redirect_url": "/azure/azure-monitor/app/overview-dashboard",
Expand Down
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ ms.date: 02/23/2018

This feature is currently in preview.

Find out how much time is spent in each method of your live web application when using [Application Insights](./app-insights-overview.md). Application Insights Profiler is now available for ASP.NET Core web apps that are hosted in Linux on Azure App Service. This guide provides step-by-step instructions on how the Profiler traces can be collected for ASP.NET Core Linux web apps.
Find out how much time is spent in each method of your live web application when using [Application Insights](../app/app-insights-overview.md). Application Insights Profiler is now available for ASP.NET Core web apps that are hosted in Linux on Azure App Service. This guide provides step-by-step instructions on how the Profiler traces can be collected for ASP.NET Core Linux web apps.

After you complete this walkthrough, your app can collect Profiler traces like the traces that are shown in the image. In this example, the Profiler trace indicates that a particular web request is slow because of time spent waiting. The *hot path* in the code that's slowing the app is marked by a flame icon. The **About** method in the **HomeController** section is slowing the web app because the method is calling the **Thread.Sleep** function.

Expand Down Expand Up @@ -79,7 +79,7 @@ The following instructions apply to all Windows, Linux, and Mac development envi

1. Create the web app environment by using App Service on Linux:

:::image type="content" source="./media/profiler-aspnetcore-linux/create-linux-appservice.png" alt-text="Create the Linux web app":::
:::image type="content" source="./media/profiler-aspnetcore-linux/create-linux-app-service.png" alt-text="Create the Linux web app":::

2. Create the deployment credentials:

Expand Down Expand Up @@ -135,7 +135,7 @@ For more deployment options, see [App Service documentation](../../app-service/i

## Add Application Insights to monitor your web apps

1. [Create an Application Insights resource](./create-new-resource.md).
1. [Create an Application Insights resource](../app/create-new-resource.md).

2. Copy the **iKey** value of the Application Insights resource and set the following settings in your web apps:

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
title: Profile Azure Functions app with Application Insights Profiler
description: Enable Application Insights Profiler for Azure Functions app.
ms.author: hannahhunter
author: hhunter-ms
ms.reviewer: brwoldey
ms.contributor: charles.weininger
ms.topic: conceptual
Expand All @@ -26,7 +24,7 @@ In this article, you'll use the Azure portal to:
:::image type="content" source="./media/profiler-azure-functions/choose-plan.png" alt-text="Screenshot of where to select App Service plan from drop-down in Functions app creation.":::


- Linked to [an Application Insights resource](./create-new-resource.md). Make note of the instrumentation key.
- Linked to [an Application Insights resource](../app/create-new-resource.md). Make note of the instrumentation key.

## App settings for enabling Profiler

Expand All @@ -45,7 +43,7 @@ From your Functions app overview page in the Azure portal:

1. In the **Application settings** tab, verify the `APPINSIGHTS_INSTRUMENTATIONKEY` setting is included in the settings list.

:::image type="content" source="./media/profiler-azure-functions/appinsights-key.png" alt-text="Screenshot showing the App Insights Instrumentation Key setting in the list.":::
:::image type="content" source="./media/profiler-azure-functions/app-insights-key.png" alt-text="Screenshot showing the App Insights Instrumentation Key setting in the list.":::

1. Select **New application setting**.

Expand Down Expand Up @@ -93,5 +91,5 @@ The app settings now show up in the table:

## Next Steps

- Set these values using [Azure Resource Manager Templates](./azure-web-apps-net-core.md#app-service-application-settings-with-azure-resource-manager), [Azure PowerShell](/powershell/module/az.websites/set-azwebapp), or the [Azure CLI](/cli/azure/webapp/config/appsettings).
- Learn more about [Profiler settings](profiler-settings.md).
- Set these values using [Azure Resource Manager Templates](../app/azure-web-apps-net-core.md#app-service-application-settings-with-azure-resource-manager), [Azure PowerShell](/powershell/module/az.websites/set-azwebapp), or the [Azure CLI](/cli/azure/webapp/config/appsettings).
- Learn more about [Profiler settings](profiler-settings.md).
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,7 @@ _Figure 2.0_
For general Profiler troubleshooting, refer to the [Profiler Troubleshoot documentation](profiler-troubleshooting.md).
For general Snapshot Debugger troubleshooting, refer to the [Snapshot Debugger Troubleshoot documentation](snapshot-debugger-troubleshoot.md).
For general Snapshot Debugger troubleshooting, refer to the [Snapshot Debugger Troubleshoot documentation](../app/snapshot-debugger-troubleshoot.md).
## FAQs
* If I have Profiler or Snapshot enabled, and then I enabled BYOS, will my data be migrated into my Storage Account?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Application Insights Profiler is installed with the Azure Diagnostics extension.
## Enable Profiler for Azure Cloud Services
1. Check to make sure that you're using [.NET Framework 4.6.1](/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed) or newer. If you are using OS family 4, you'll need to install .NET Framework 4.6.1 or newer with a [startup task](../../cloud-services/cloud-services-dotnet-install-dotnet.md). OS Family 5 includes a compatible version of .NET Framework by default.

1. Add [Application Insights SDK to Azure Cloud Services](./cloudservices.md?toc=%2fazure%2fazure-monitor%2ftoc.json).
1. Add [Application Insights SDK to Azure Cloud Services](../app/cloudservices.md?toc=%2fazure%2fazure-monitor%2ftoc.json).

**The bug in the profiler that ships in the WAD for Cloud Services has been fixed.** The latest version of WAD (1.12.2.0) for Cloud Services works with all recent versions of the App Insights SDK. Cloud Service hosts will upgrade WAD automatically, but it isn't immediate. To force an upgrade, you can redeploy your service or reboot the node.

Expand All @@ -32,7 +32,7 @@ Application Insights Profiler is installed with the Azure Diagnostics extension.

a. Locate the [Azure Diagnostics](../agents/diagnostics-extension-overview.md) *diagnostics.wadcfgx* file for your application role, as shown here:

![Location of the diagnostics config file](./media/profiler-cloudservice/cloudservice-solutionexplorer.png)
![Location of the diagnostics config file](./media/profiler-cloudservice/cloud-service-solution-explorer.png)

If you can't find the file, see [Set up diagnostics for Azure Cloud Services and Virtual Machines](/visualstudio/azure/vs-azure-tools-diagnostics-for-cloud-services-and-virtual-machines).

Expand Down Expand Up @@ -65,7 +65,7 @@ Application Insights Profiler is installed with the Azure Diagnostics extension.

## Next steps

* Generate traffic to your application (for example, launch an [availability test](monitor-web-app-availability.md)). Then, wait 10 to 15 minutes for traces to start to be sent to the Application Insights instance.
* Generate traffic to your application (for example, launch an [availability test](../app/monitor-web-app-availability.md)). Then, wait 10 to 15 minutes for traces to start to be sent to the Application Insights instance.
* See [Profiler traces](profiler-overview.md?toc=/azure/azure-monitor/toc.json) in the Azure portal.
* To troubleshoot Profiler issues, see [Profiler troubleshooting](profiler-troubleshooting.md?toc=/azure/azure-monitor/toc.json).

Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
title: Profile Azure Containers with Application Insights Profiler
description: Enable Application Insights Profiler for Azure Containers.
ms.author: hannahhunter
author: hhunter-ms
ms.contributor: charles.weininger
ms.topic: conceptual
ms.date: 05/26/2022
Expand All @@ -22,7 +20,7 @@ In this article, you'll learn the various ways you can:

## Pre-requisites

- [An Application Insights resource](./create-new-resource.md). Make note of the instrumentation key.
- [An Application Insights resource](../app/create-new-resource.md). Make note of the instrumentation key.
- [Docker Desktop](https://www.docker.com/products/docker-desktop/) to build docker images.
- [.NET 6 SDK](https://dotnet.microsoft.com/download/dotnet/6.0) installed.

Expand Down Expand Up @@ -160,7 +158,7 @@ Service Profiler session finished. # A profiling session is complet
1. Open the **Performance** blade in your Application Insights resource.
1. Once the trace process is complete, you will see the Profiler Traces button like it below:
:::image type="content" source="./media/profiler-containerinstances/profiler_traces.png" alt-text="Profile traces in the performance blade":::
:::image type="content" source="./media/profiler-containerinstances/profiler-traces.png" alt-text="Profile traces in the performance blade":::
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
title: Profile production apps in Azure with Application Insights Profiler
description: Identify the hot path in your web server code with a low-footprint profiler
ms.author: hannahhunter
author: hhunter-ms
ms.contributor: charles.weininger
ms.topic: conceptual
ms.date: 05/26/2022
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,14 @@ To set up your environment, take the following actions:
If your settings are correct, Application Insights Profiler will be installed and enabled when the Azure Diagnostics extension is installed.

1. Add Application Insights to your Service Fabric application.
For Profiler to collect profiles for your requests, your application must be tracking operations with Application Insights. For stateless APIs, you can refer to instructions for [tracking Requests for profiling](profiler-trackrequests.md?toc=/azure/azure-monitor/toc.json). For more information about tracking custom operations in other kinds of apps, see [track custom operations with Application Insights .NET SDK](custom-operations-tracking.md?toc=/azure/azure-monitor/toc.json).
For Profiler to collect profiles for your requests, your application must be tracking operations with Application Insights. For stateless APIs, you can refer to instructions for [tracking Requests for profiling](profiler-trackrequests.md?toc=/azure/azure-monitor/toc.json). For more information about tracking custom operations in other kinds of apps, see [track custom operations with Application Insights .NET SDK](../app/custom-operations-tracking.md).

1. Redeploy your application.


## Next steps

* Generate traffic to your application (for example, launch an [availability test](monitor-web-app-availability.md)). Then, wait 10 to 15 minutes for traces to start to be sent to the Application Insights instance.
* Generate traffic to your application (for example, launch an [availability test](../app/monitor-web-app-availability.md)). Then, wait 10 to 15 minutes for traces to start to be sent to the Application Insights instance.
* See [Profiler traces](profiler-overview.md?toc=/azure/azure-monitor/toc.json) in the Azure portal.
* For help with troubleshooting Profiler issues, see [Profiler troubleshooting](profiler-troubleshooting.md?toc=/azure/azure-monitor/toc.json).

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
title: Use the Azure Application Insights Profiler settings pane | Microsoft Docs
description: See Profiler status and start profiling sessions
ms.author: hannahhunter
author: hhunter-ms
title: Configure Application Insights Profiler | Microsoft Docs
description: Use the Azure Application Insights Profiler settings pane to see Profiler status and start profiling sessions
ms.contributor: Charles.Weininger
ms.topic: conceptual
ms.date: 04/26/2022
Expand Down Expand Up @@ -48,7 +46,7 @@ Recent profiling sessions | Displays information about past profiling sessions,
## Profile Now
Select **Profile Now** to start a profiling session on demand. When you click this link, all profiler agents that are sending data to this Application Insights instance will start to capture a profile. After 5 to 10 minutes, the profile session will show in the list below.

To manually trigger a profiler session, you'll need, at minimum, *write* access on your role for the Application Insights component. In most cases, you get write access automatically. If you're having issues, you'll need the "Application Insights Component Contributor" subscription scope role added. [See more about role access control with Azure Monitoring](./resources-roles-access-control.md).
To manually trigger a profiler session, you'll need, at minimum, *write* access on your role for the Application Insights component. In most cases, you get write access automatically. If you're having issues, you'll need the "Application Insights Component Contributor" subscription scope role added. [See more about role access control with Azure Monitoring](../app/resources-roles-access-control.md).

## Trigger Settings

Expand Down Expand Up @@ -97,17 +95,17 @@ Memory % | Percentage of memory that was being used while the profiler was runni
## Next steps
[Enable Profiler and view traces](profiler-overview.md?toc=/azure/azure-monitor/toc.json)

[profiler-on-demand]: ./media/profiler-settings/Profiler-on-demand.png
[profiler-on-demand]: ./media/profiler-settings/profiler-on-demand.png
[performance-blade]: ./media/profiler-settings/performance-blade.png
[configure-profiler-page]: ./media/profiler-settings/configureBlade.png
[trigger-settings-flyout]: ./media/profiler-settings/CPUTrigger.png
[trigger-settings-flyout]: ./media/profiler-settings/trigger-central-p-u.png
[create-performance-test]: ./media/profiler-settings/new-performance-test.png
[configure-performance-test]: ./media/profiler-settings/configure-performance-test.png
[load-test-queued]: ./media/profiler-settings/load-test-queued.png
[load-test-in-progress]: ./media/profiler-settings/load-test-inprogress.png
[load-test-in-progress]: ./media/profiler-settings/load-test-in-progress.png
[enable-app-insights]: ./media/profiler-settings/enable-app-insights-blade-01.png
[update-site-extension]: ./media/profiler-settings/update-site-extension-01.png
[change-and-save-appinsights]: ./media/profiler-settings/change-and-save-appinsights-01.png
[app-settings-for-profiler]: ./media/profiler-settings/appsettings-for-profiler-01.png
[change-and-save-appinsights]: ./media/profiler-settings/change-and-save-app-insights-01.png
[app-settings-for-profiler]: ./media/profiler-settings/app-settings-for-profiler-01.png
[check-for-extension-update]: ./media/profiler-settings/check-extension-update-01.png
[profiler-timeout]: ./media/profiler-settings/profiler-timeout.png
[profiler-timeout]: ./media/profiler-settings/profiler-time-out.png
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ You can use the Kudu management site for App Service to get the base url of this
It will end like this: `https://<kudu-url>/DiagnosticServices`
It will display a Status Page similar like the below:
![Diagnostic Services Status Page](./media/diagnostic-services-site-extension/status-page.png)
![Diagnostic Services Status Page](../app/media/diagnostic-services-site-extension/status-page.png)
### Manual installation
Expand Down Expand Up @@ -223,5 +223,5 @@ The IPs used by Application Insights Profiler are included in the Azure Monitor
[profiler-search-telemetry]:./media/profiler-troubleshooting/Profiler-Search-Telemetry.png
[profiler-webjob]:./media/profiler-troubleshooting/Profiler-webjob.png
[profiler-webjob-log]:./media/profiler-troubleshooting/Profiler-webjob-log.png
[profiler-webjob]:./media/profiler-troubleshooting/profiler-web-job.png
[profiler-webjob-log]:./media/profiler-troubleshooting/profiler-web-job-log.png
Loading

0 comments on commit 6f7be82

Please sign in to comment.