Skip to content

Commit 7e4b09b

Browse files
authored
Merge branch 'main' into rl-dev01
2 parents 76f1421 + 27e759e commit 7e4b09b

File tree

32 files changed

+705
-115
lines changed

32 files changed

+705
-115
lines changed

.github/workflows/auto_publish.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Auto push to live
2+
3+
on:
4+
schedule:
5+
# Run at 10:00 a.m., 6:00 p.m., and 2:00 a.m. UTC
6+
- cron: "0 10 * * *"
7+
- cron: "0 18 * * *"
8+
- cron: "0 2 * * *"
9+
10+
workflow_dispatch:
11+
12+
jobs:
13+
auto-push-to-live:
14+
runs-on: ubuntu-latest
15+
if: github.repository_owner == 'MicrosoftDocs'
16+
permissions:
17+
contents: write
18+
pull-requests: write
19+
20+
steps:
21+
# Checkout the automation branch
22+
- name: Checkout automation branch
23+
uses: actions/checkout@v3
24+
with:
25+
ref: automation # Explicitly check out the automation branch
26+
27+
# Set up Python
28+
- name: Set up Python
29+
uses: actions/setup-python@v4
30+
with:
31+
python-version: '3.12'
32+
33+
# Install dependencies (if any)
34+
- name: Install dependencies
35+
run: |
36+
python -m pip install PyGithub
37+
38+
# Run the Python script
39+
- name: Run script
40+
env:
41+
GITHUB_ACCESS_TOKEN: ${{ secrets.DELAND_PAT }}
42+
run: |
43+
ls scripts
44+
python scripts/auto_push2live.py
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Manage stale branches
2+
3+
permissions:
4+
contents: write
5+
6+
on:
7+
workflow_dispatch:
8+
9+
10+
jobs:
11+
12+
stale-branch:
13+
if: github.repository_owner == 'MicrosoftDocs'
14+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-StaleBranch.yml@workflows-prod
15+
with:
16+
PayloadJson: ${{ toJSON(github) }}
17+
RepoBranchSkipList: '[
18+
"automation"
19+
]'
20+
ReportOnly: false
21+
secrets:
22+
AccessToken: ${{ secrets.GITHUB_TOKEN }}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: Validate branch names
2+
3+
on:
4+
create
5+
6+
jobs:
7+
validate-branch-name:
8+
if: startsWith(github.ref, 'refs/heads/')
9+
runs-on: windows-latest
10+
strategy:
11+
fail-fast: true # Prevent retries on failure
12+
steps:
13+
- name: Try checkout
14+
uses: actions/checkout@v3

.openpublishing.publish.config.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,11 @@
2727
],
2828
"sync_notification_subscribers": [
2929
30-
31-
30+
31+
32+
33+
34+
3235
],
3336
"branches_to_filter": [],
3437
"git_repository_url_open_to_public_contributors": "https://github.com/MicrosoftDocs/SupportArticles-docs",

support/azure/app-service/web-apps-performance-faqs.md

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ description: Get answers to frequently asked questions about availability, perfo
44
author: genlin
55
ms.author: genli
66
ms.service: azure-app-service
7-
ms.date: 03/05/2024
7+
ms.date: 04/15/2025
88
ms.reviewer: toan, shrahman
99
---
1010
# Application performance FAQs for Web Apps in Azure
1111

1212
> [!NOTE]
13-
> Some of the below guidelines might only work on Windows or Linux App Services. For example, Linux App Services run in 64-bit mode by default.
13+
> Some of the following guidelines might only work on Windows or Linux App Services. For example, Linux App Services run in 64-bit mode by default.
1414
1515
This article has answers to frequently asked questions (FAQs) about application performance issues for the [Web Apps feature of Azure App Service](https://azure.microsoft.com/services/app-service/web/).
1616

@@ -28,18 +28,24 @@ The platform processes will consume a minimum amount of resources (such as CPU,
2828

2929
Multiple factors might contribute to slow app performance. For detailed troubleshooting steps, see [Troubleshoot slow web app performance](/azure/app-service/troubleshoot-performance-degradation).
3030

31+
> [!TIP]
32+
> - Enable the **Always On** setting under **Configuration** > **General settings** to keep your app warm and avoid cold starts. This helps reduce delay after idle time, especially in Basic and higher plans.
33+
> - Configure a Health check path to monitor app health and automatically replace unresponsive instances. This helps maintain availability and performance. For more information, see [Monitor App Service instances by using Health check](/azure/app-service/monitor-instances-health-check).
34+
3135
## How do I troubleshoot a high CPU-consumption scenario?
3236

3337
In some high CPU-consumption scenarios, your app might truly require more computing resources. In that case, consider scaling to a higher service tier so the application gets all the resources it needs. Other times, high CPU consumption might be caused by a bad loop or by a coding practice. Getting insight into what's triggering increased CPU consumption is a two-part process. First, create a process dump, and then analyze the process dump. For more information, see [Capture and analyze a dump file for high CPU consumption for Web Apps](/archive/blogs/asiatech/how-to-capture-dump-when-intermittent-high-cpu-happens-on-azure-web-app).
3438

3539
## How do I troubleshoot a high memory-consumption scenario?
3640

37-
In some high memory-consumption scenarios, your app might truly require more computing resources. In that case, consider scaling to a higher service tier so the application gets all the resources it needs. Other times, a bug in the code might cause a memory leak. A coding practice also might increase memory consumption. Getting insight into what's triggering high memory consumption is a two-part process. First, create a process dump, and then analyze the process dump. Crash Diagnoser from the Azure Site Extension Gallery can efficiently perform both these steps. For more information, see [Capture and analyze a dump file for intermittent high memory for Web Apps](/archive/blogs/asiatech/how-to-capture-and-analyze-dump-for-intermittent-high-memory-on-azure-web-app).
41+
In some high memory-consumption scenarios, your app might truly require more computing resources. In that case, consider scaling to a higher service tier so the application gets all the resources it needs. Other times, a bug in the code might cause a memory leak. A coding practice might also increase memory consumption. Getting insight into what's triggering high memory consumption is a two-part process. First, create a process dump, and then analyze the process dump. Crash Diagnoser from the Azure Site Extension Gallery can efficiently perform both these steps. For more information, see [Capture and analyze a dump file for intermittent high memory for Web Apps](/archive/blogs/asiatech/how-to-capture-and-analyze-dump-for-intermittent-high-memory-on-azure-web-app).
3842

3943
## How do I automate App Service web apps by using PowerShell?
4044

41-
You can use PowerShell cmdlets to manage and maintain App Service web apps. In our blog post [Automate web apps hosted in Azure App Service by using PowerShell](/archive/blogs/puneetgupta/automating-webapps-hosted-in-azure-app-service-through-powershell-arm-way), we describe how to use Azure Resource Manager-based PowerShell cmdlets to automate common tasks. The blog post also has sample code for various web apps management tasks.
42-
For descriptions and syntax for all App Service web apps cmdlets, see [Az.Websites](/powershell/module/az.websites).
45+
You can use PowerShell cmdlets to manage and maintain App Service web apps. In our blog post [Automate web apps hosted in Azure App Service by using PowerShell](/archive/blogs/puneetgupta/automating-webapps-hosted-in-azure-app-service-through-powershell-arm-way), we describe how to use Azure Resource Manager-based PowerShell cmdlets to automate common tasks.
46+
47+
> [!NOTE]
48+
> For current automation scripts, use the latest [Az.Websites](/powershell/module/az.websites) module. The older `AzureRM` module is deprecated.
4349
4450
## How do I view my web app's event logs?
4551

@@ -86,15 +92,6 @@ To see what is causing the error and to resolve the issue, follow the steps in [
8692

8793
For information about quotas and limits, see [App Service limits](/azure/azure-resource-manager/management/azure-subscription-service-limits#app-service-limits).
8894

89-
## How do I decrease the response time for the first request after idle time?
90-
91-
By default, web apps are unloaded if they're idle for a set period of time. This way, the system can conserve resources. The downside is that the response to the first request after the web app is unloaded is longer, to allow the web app to load and start serving responses. In Basic and Standard service plans, you can turn on the **Always On** setting to keep the app always loaded. This eliminates longer load times after the app is idle. To change the **Always On** setting:
92-
93-
1. In the Azure portal, go to your web app.
94-
2. Select **Configuration**
95-
3. Select **General settings**.
96-
4. For **Always On**, select **On**.
97-
9895
## How do I turn on failed request tracing?
9996

10097
To turn on failed request tracing, follow these steps:
@@ -161,13 +158,13 @@ For more information, see [Configure web apps in App Service](/azure/app-service
161158

162159
## Why does my request time out after 230 seconds?
163160

164-
Azure Load Balancer has a default idle timeout setting of four minutes. This setting is generally a reasonable response time limit for a web request. so, App Service returns a timeout to the client if your application does not return a response within approximately 240 seconds (230 seconds on Windows app, 240 seconds on Linux app). If your web app requires background processing, we recommend using Azure WebJobs. The Azure web app can call WebJobs and be notified when background processing is finished. You can choose from multiple methods for using WebJobs, including queues and triggers.
161+
Azure Load Balancer has a default idle timeout setting of four minutes. This setting is generally a reasonable response time limit for a web request. Therefore, App Service returns a timeout to the client if your application does not return a response within approximately 240 seconds (230 seconds on Windows app, 240 seconds on Linux app). If your web app requires background processing, we recommend using Azure WebJobs. The Azure web app can call WebJobs and be notified when background processing is finished. You can choose from multiple methods for using WebJobs, including queues and triggers.
165162

166163
WebJobs is designed for background processing. You can do as much background processing as you want in a WebJob. For more information about WebJobs, see [Run background tasks with WebJobs](/azure/app-service/webjobs-create).
167164

168165
## ASP.NET Core applications that are hosted in App Service sometimes stop responding. How do I fix this issue?
169166

170-
A known issue with an earlier [Kestrel version](https://github.com/aspnet/KestrelHttpServer/issues/1182) might cause an ASP.NET Core 1.0 app that's hosted in App Service to intermittently stop responding. You also might see this message: "The specified CGI Application encountered an error and the server terminated the process."
167+
A known issue with an earlier [Kestrel version](https://github.com/aspnet/KestrelHttpServer/issues/1182) might cause an ASP.NET Core 1.0 app that's hosted in App Service to intermittently stop responding. You might also see this message: "The specified CGI Application encountered an error and the server terminated the process."
171168

172169
This issue is fixed in Kestrel version 1.0.2. This version is included in the ASP.NET Core 1.0.3 update. To resolve this issue, make sure you update your app dependencies to use Kestrel 1.0.2. Alternatively, you can use one of two workarounds that are described in the blog post [ASP.NET Core 1.0 slow perf issues in App Service web apps](/archive/blogs/waws/asp-net-core-slow-perf-issues-on-azure-websites).
173170

@@ -183,12 +180,20 @@ If you aren't using Local Cache and are experiencing this issue, submit a suppor
183180

184181
This error typically occurs if the outbound TCP connections on the VM instance are exhausted. In App Service, limits are enforced for the maximum number of outbound connections that can be made for each VM instance. For more information, see [Cross-VM numerical limits](https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox#cross-vm-numerical-limits).
185182

186-
This error also might occur if you try to access a local address from your application. For more information, see [Local address requests](https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox#local-address-requests).
183+
This error might also occur if you try to access a local address from your application. For more information, see [Local address requests](https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox#local-address-requests).
187184

188185
For more information about outbound connections in your web app, see the blog post about [outgoing connections to Azure websites](https://www.freekpaans.nl/2015/08/starving-outgoing-connections-on-windows-azure-web-sites/).
189186

190187
## How do I use Visual Studio to remote debug my App Service web app?
191188

192189
For a detailed walkthrough that shows you how to debug your web app by using Visual Studio, see [Remote debug your App Service web app](/archive/blogs/benjaminperkins/remote-debug-your-azure-app-service-web-app).
193190

191+
## Additional recommendations for performance and resiliency
192+
193+
- Use Application Insights and Azure Monitor for full-stack observability of your App Service app, including telemetry, dependency tracing, and live metrics.
194+
195+
- If you're deploying in regions that support availability zones, consider enabling zone redundancy to enhance resiliency during regional outages. For more information, see [Reliability in Azure App Service](/azure/reliability/reliability-app-service).
196+
197+
- App Service undergoes routine maintenance to ensure platform reliability. For more control over update behavior, especially in App Service Environment v3, configure upgrade preference. For more information, see [Routine (planned) maintenance for Azure App Service](/azure/app-service/routine-maintenance).
198+
194199
[!INCLUDE [Azure Help Support](../../includes/azure-help-support.md)]

support/azure/azure-container-instances/configuration-setup/error-codes-spot-container-creation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
22
title: Error codes for Spot container creation in Container Instances
33
description: Provides a solution to common Spot container errors.
4-
ms.date: 01/30/2024
4+
ms.date: 04/14/2025
55
author: tysonfms
66
ms.author: tysonfreeman
77
editor: v-jsitser
8-
ms.reviewer: v-weizhu, v-leedennis
8+
ms.reviewer: edneto, v-weizhu, v-leedennis
99
ms.service: azure-container-instances
1010
ms.custom: sap:Configuration and Setup
1111
#customer intent: As a user of Azure Container Instances, I want find details and solutions to common user errors that involve Spot containers so that I can create Spot containers successfully.

support/azure/azure-container-instances/configuration-setup/long-image-pulls.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
22
title: Image pull takes a long time to run
33
description: Learn about troubleshooting steps that you can take if an image pull takes a long time to run on Azure Container Instances.
4-
ms.date: 12/28/2023
4+
ms.date: 04/14/2025
55
ms.service: azure-container-instances
66
author: tysonfms
77
ms.author: tysonfreeman
88
editor: v-jsitser
9-
ms.reviewer: v-leedennis
9+
ms.reviewer: edneto, v-leedennis
1010
ms.custom: sap:Configuration and Setup
1111
#Customer intent: As a user of Azure Container Instances, I want to learn why an image pull takes a long time to run so that I can create and use container groups successfully.
1212
---

support/azure/azure-kubernetes/availability-performance/node-not-ready-expired-certificates.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
22
title: Troubleshoot Node Not Ready state when certificates have expired
33
description: Troubleshoot scenarios in which Node Not Ready failures occur in an Azure Kubernetes Service (AKS) cluster node if there are expired certificates.
4-
ms.date: 10/28/2024
5-
ms.reviewer: rissing, chiragpa, momajed, v-leedennis
4+
ms.date: 04/10/2025
5+
ms.reviewer: rissing, chiragpa, momajed, v-leedennis, addobres, v-weizhu
66
ms.service: azure-kubernetes-service
77
#Customer intent: As an Azure Kubernetes user, I want to fix expired certificates so that they don't cause Node Not Ready failures within an Azure Kubernetes Service (AKS) cluster.
88
ms.custom: sap:Node/node pool availability and performance

support/azure/azure-kubernetes/connectivity/cannot-view-resources-kubernetes-resource-viewer-portal.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
22
title: Can't view resources in Kubernetes resource viewer on Azure portal
33
description: Troubleshoot why you can't view resources in the Kubernetes resource viewer in the Azure portal for a cluster configured with API server-authorized IP ranges.
4-
ms.date: 11/12/2024
5-
ms.reviewer: chiragpa, nickoman, jaewonpark, v-leedennis
4+
ms.date: 04/14/2025
5+
ms.reviewer: edneto, chiragpa, nickoman, jaewonpark, v-leedennis
66
ms.service: azure-kubernetes-service
77
keywords:
88
#Customer intent: As an Azure Kubernetes user, I want to troubleshoot the inability to view resources in the Kubernetes resource viewer in the Azure portal so that I can use authorized IP address ranges to access my AKS cluster that's configured with an API server.

support/azure/azure-kubernetes/create-upgrade-delete/windows-cse-error-check-api-server-connectivity.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
2-
title: Troubleshoot WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY error code (5)
3-
description: Introduces how to troubleshoot the WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY error (5) when you try to add Windows node pools in an AKS cluster.
4-
ms.date: 10/31/2023
5-
ms.reviewer: shtao, abelch, junjiezhang, v-weizhu
2+
title: Troubleshoot WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY error (5)
3+
description: Learn how to troubleshoot the WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY error (5) when you try to add Windows node pools in an AKS cluster.
4+
ms.date: 04/14/2025
5+
ms.reviewer: shtao, abelch, junjiezhang, v-weizhu, addobres
66
ms.service: azure-kubernetes-service
77
#Customer intent: As an Azure Kubernetes user, I want to troubleshoot the WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY error (5) so that I can successfully add Windows node pools in an Azure Kubernetes Service (AKS) cluster.
88
ms.custom: sap:Create, Upgrade, Scale and Delete operations (cluster or nodepool)
@@ -31,7 +31,9 @@ Your cluster nodes can't connect to the cluster API server pod.
3131

3232
## Troubleshooting steps
3333

34-
1. Verify that your nodes can resolve the cluster's fully qualified domain name (FQDN):
34+
1. Connect to the respective node by following the steps described in [Windows Server proxy connection for SSH](/azure/aks/node-access#windows-server-proxy-connection-for-ssh):
35+
36+
2. Verify that your nodes can resolve the cluster's fully qualified domain name (FQDN):
3537

3638
On existing Windows nodes, run the following command:
3739

@@ -45,15 +47,17 @@ Your cluster nodes can't connect to the cluster API server pod.
4547
nc -vz <cluster-fqdn> 443
4648
```
4749
48-
2. If the command output shows `False` or `Timeout`, check your network configuration. For example, check whether you set "Deny" rules for the API server in network security groups (NSGs) of the virtual network.
50+
3. If the command output shows `False` or `Timeout`, check your network configuration. For example, check whether you set "Deny" rules for the API server in network security groups (NSGs) of the virtual network.
4951
50-
3. If you're using egress filtering through a firewall, make sure that traffic is allowed to your cluster FQDN.
52+
4. If you're using egress filtering through a firewall, make sure that traffic is allowed to your cluster FQDN.
5153
52-
4. If you've authorized IP addresses that are enabled on your cluster, the firewall's outbound IP address can be blocked. In this scenario, you must add the outbound IP address of the firewall to the list of authorized IP ranges for the cluster. For more information, see [Secure access to the API server using authorized IP address ranges in AKS](/azure/aks/api-server-authorized-ip-ranges).
54+
5. If you've authorized IP addresses that are enabled on your cluster, the firewall's outbound IP address can be blocked. In this scenario, you must add the outbound IP address of the firewall to the list of authorized IP ranges for the cluster. For more information, see [Secure access to the API server using authorized IP address ranges in AKS](/azure/aks/api-server-authorized-ip-ranges).
5355
5456
## References
5557
56-
[General troubleshooting of AKS cluster creation issues](troubleshoot-aks-cluster-creation-issues.md)
58+
- [General troubleshooting of AKS cluster creation issues](troubleshoot-aks-cluster-creation-issues.md)
59+
60+
- [Exit codes in Windows CSE](https://github.com/Azure/AgentBaker/blob/master/parts/windows/windowscsehelper.ps1)
5761
5862
[!INCLUDE [Third-party disclaimer](../../../includes/third-party-disclaimer.md)]
5963

0 commit comments

Comments
 (0)