|
1 | 1 | --- |
2 | 2 | title: Use Azure Resource Health to monitor database health |
3 | | -description: Use Azure Resource Health to monitor Azure SQL Database and Azure SQL Managed Instance health, helps you diagnose and get support when an Azure issue impacts your SQL resources. |
| 3 | +description: Use Azure Resource Health to monitor Azure SQL Database health, helps you diagnose and get support when an Azure issue impacts your resources. |
4 | 4 | author: dimitri-furman |
5 | 5 | ms.author: dfurman |
6 | 6 | ms.reviewer: wiassaf, mathoma |
7 | | -ms.date: 03/24/2021 |
8 | | -ms.service: sql-db-mi |
| 7 | +ms.date: 08/28/2023 |
| 8 | +ms.service: sql-database |
9 | 9 | ms.subservice: performance |
10 | 10 | ms.topic: conceptual |
11 | 11 | ms.custom: sqldbrb=2 |
12 | 12 | --- |
13 | | -# Use Resource Health to troubleshoot connectivity for Azure SQL Database and Azure SQL Managed Instance |
14 | | -[!INCLUDE[appliesto-sqldb-sqlmi](../includes/appliesto-sqldb-sqlmi.md)] |
| 13 | +# Use Resource Health to troubleshoot connectivity for Azure SQL Database |
| 14 | +[!INCLUDE [appliesto-sqldb](../includes/appliesto-sqldb.md)] |
15 | 15 |
|
16 | | -[Resource Health](/azure/service-health/resource-health-overview#get-started) for Azure SQL Database and Azure SQL Managed Instance helps you diagnose and get support when an Azure issue impacts your SQL resources. It informs you about the current and past health of your resources and helps you mitigate issues. Resource Health provides technical support when you need help with Azure service issues. |
| 16 | +> [!div class="op_single_selector"] |
| 17 | +> * [Azure SQL Database](resource-health-to-troubleshoot-connectivity.md?view=azuresql-db&preserve-view=true) |
| 18 | +> * [Azure SQL Managed Instance](../managed-instance/resource-health-to-troubleshoot-connectivity.md?view=azuresql-mi&preserve-view=true) |
17 | 19 |
|
18 | | - |
| 20 | +[Resource Health](/azure/service-health/resource-health-overview#get-started) for Azure SQL Database helps you diagnose and get support when an Azure issue impacts your resources. It informs you about the current and past health of your resources and helps you mitigate issues. The **Resource health** page provides technical support when you need help with Azure service issues. |
| 21 | + |
| 22 | +:::image type="content" source="./media/resource-health-to-troubleshoot-connectivity/sql-resource-health-overview.jpg" alt-text="A screenshot of the Azure portal showing the Resource Health page for an Azure SQL Database."::: |
19 | 23 |
|
20 | 24 | ## Health checks |
21 | 25 |
|
22 | | -Resource Health determines the health of your SQL resource by examining the success and failure of logins to the resource. Currently, Resource Health for your SQL Database resource only examines login failures due to system error and not user error. The Resource Health status is updated every 1 to 2 minutes. |
| 26 | +**Resource health** determines the health of your SQL database by examining the success and failure of logins to the resource. Currently, **Resource health** for your SQL Database resource only examines login failures due to system error and not user error. The health status is updated every 1 to 2 minutes. |
23 | 27 |
|
24 | 28 | ## Health states |
25 | 29 |
|
26 | 30 | ### Available |
27 | 31 |
|
28 | | -A status of **Available** means that Resource Health has not detected login failures due to system errors on your SQL resource. |
| 32 | +A status of **Available** means that **Resource health** has not detected login failures due to system errors on your SQL database. |
29 | 33 |
|
30 | | - |
| 34 | +:::image type="content" source="./media/resource-health-to-troubleshoot-connectivity/sql-resource-health-available.jpg" alt-text="A screenshot of the Azure portal showing the status message for the state of Available."::: |
31 | 35 |
|
32 | 36 | ### Degraded |
33 | 37 |
|
34 | | -A status of **Degraded** means that Resource Health has detected a majority of successful logins, but some failures as well. These are most likely transient login errors. To reduce the impact of connection issues caused by transient login errors, implement [retry logic](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors) in your code. |
| 38 | +A status of **Degraded** means that **Resource health** has detected a majority of successful logins, but some failures as well. These are most likely transient login errors. To reduce the impact of connection issues caused by transient login errors, implement [retry logic](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors) in your code. |
35 | 39 |
|
36 | | - |
| 40 | +:::image type="content" source="./media/resource-health-to-troubleshoot-connectivity/sql-resource-health-degraded.jpg" alt-text="A screenshot of the Azure portal showing the status message for the state of Degraded."::: |
37 | 41 |
|
38 | 42 | ### Unavailable |
39 | 43 |
|
40 | | -A status of **Unavailable** means that Resource Health has detected consistent login failures to your SQL resource. If your resource remains in this state for an extended period of time, contact support. |
| 44 | +A status of **Unavailable** means that **Resource health** has detected consistent login failures to your SQL database. If your resource remains in this state for an extended period of time, contact support. |
41 | 45 |
|
42 | | - |
| 46 | +:::image type="content" source="./media/resource-health-to-troubleshoot-connectivity/sql-resource-health-unavailable.jpg" alt-text="A screenshot of the Azure portal showing the status message for the state of Unavailable."::: |
43 | 47 |
|
44 | 48 | ### Unknown |
45 | 49 |
|
46 | | -The health status of **Unknown** indicates that Resource Health hasn't received information about this resource for more than 10 minutes. Although this status isn't a definitive indication of the state of the resource, it is an important data point in the troubleshooting process. If the resource is running as expected, the status of the resource will change to Available after a few minutes. If you're experiencing problems with the resource, the Unknown health status might suggest that an event in the platform is affecting the resource. |
| 50 | +The health status of **Unknown** indicates that **Resource health** hasn't received information about this resource for more than 10 minutes. Although this status isn't a definitive indication of the state of the resource, it is an important data point in the troubleshooting process. If the resource is running as expected, the status of the resource will change to Available after a few minutes. If you're experiencing problems with the resource, the Unknown health status might suggest that an event in the platform is affecting the resource. |
47 | 51 |
|
48 | | - |
| 52 | +:::image type="content" source="./media/resource-health-to-troubleshoot-connectivity/sql-resource-health-unknown.jpg" alt-text="A screenshot of the Azure portal showing the status message for the state of Unknown."::: |
49 | 53 |
|
50 | 54 | ## Historical information |
51 | 55 |
|
52 | | -You can access up to 30 days of health history in the Health History section of Resource Health. The section will also contain the downtime reason (when available) for the downtimes reported by Resource Health. Currently, Azure shows the downtime for your database resource at a two-minute granularity. The actual downtime is likely less than a minute. The average is 8 seconds. |
| 56 | +You can access up to 30 days of health history in the **Health history** section of **Resource health**. The section will also contain the reason (when available) for downtimes. Currently, Azure shows the downtime for your database resource at a two-minute granularity. The actual downtime is likely less than a minute. The average is 8 seconds. |
| 57 | + |
| 58 | +## Downtime reasons |
| 59 | + |
| 60 | +When your database experiences downtime, analysis is performed to determine a reason. When available, the downtime reason is reported in the **Health history** section of **Resource health**. Downtime reasons are typically published within 45 minutes after an event. |
53 | 61 |
|
54 | | -### Downtime reasons |
| 62 | +### Select a maintenance window |
55 | 63 |
|
56 | | -When your database experiences downtime, analysis is performed to determine a reason. When available, the downtime reason is reported in the Health History section of Resource Health. Downtime reasons are typically published within 45 minutes after an event. |
| 64 | +You can configure your [maintenance window](maintenance-window.md?view=azuresql-db&preserve-view=true) to make impactful maintenance events predictable and less disruptive for your workload. The maintenance window feature helps you plan around predictable upgrades or scheduled maintenance. [Advance notifications](advance-notifications.md?view=azuresql-db&preserve-view=true) are available for databases configured to use a non-default maintenance window. Advance notifications enable customers to configure notifications to be sent up to 24 hours in advance of any planned event. |
57 | 65 |
|
58 | | -#### Planned maintenance |
| 66 | +### Planned maintenance |
59 | 67 |
|
60 | | -The Azure infrastructure periodically performs planned maintenance – the upgrade of hardware or software components in the datacenter. While the database undergoes maintenance, Azure SQL may terminate some existing connections and refuse new ones. The login failures experienced during planned maintenance are typically transient, and [retry logic](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors) helps reduce the impact. If you continue to experience login errors, contact support. |
| 68 | +The Azure infrastructure periodically performs planned maintenance – the upgrade of hardware or software components in the datacenter. While the database undergoes maintenance, Azure SQL may terminate some existing connections and refuse new ones. The login failures experienced during planned maintenance are typically transient, and [retry logic for occasional network errors](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors) helps reduce the impact. If you continue to experience login errors, contact support. |
61 | 69 |
|
62 | | -#### Reconfiguration |
| 70 | +### Reconfiguration |
63 | 71 |
|
64 | | -Reconfigurations are considered transient conditions and are expected from time to time. These events can be triggered by load balancing or software/hardware failures. Any client production application that connects to a cloud database should implement a robust connection [retry logic](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors), as it would help mitigate these situations and should generally make the errors transparent to the end user. |
| 72 | +Reconfigurations are considered transient conditions and are expected from time to time. These events can be triggered by load balancing or software/hardware failures. Any client production application that connects to a cloud database should implement a robust connection [retry logic for transient errors](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors), as it would help mitigate these situations and should generally make the errors transparent to the end user. |
65 | 73 |
|
66 | 74 | ## Next steps |
67 | 75 |
|
68 | 76 | - Learn more about [retry logic for transient errors](troubleshoot-common-connectivity-issues.md#retry-logic-for-transient-errors). |
69 | | -- [Troubleshoot, diagnose, and prevent SQL connection errors](troubleshoot-common-connectivity-issues.md). |
| 77 | +- [Troubleshoot, diagnose, and prevent SQL connection errors](troubleshoot-common-connectivity-issues.md?view=azuresql-db&preserve-view=true). |
70 | 78 | - Learn more about [configuring Resource Health alerts](/azure/service-health/resource-health-alert-arm-template-guide). |
71 | 79 | - Get an overview of [Resource Health](/azure/service-health/resource-health-overview). |
72 | 80 | - Review [Resource Health FAQ](/azure/service-health/resource-health-faq). |
| 81 | +- Configure a [maintenance window](maintenance-window.md?view=azuresql-db&preserve-view=true) and [advance notifications](advance-notifications.md?view=azuresql-db&preserve-view=true). |
0 commit comments