Skip to content

Commit f62a3e8

Browse files
authored
Merge pull request #104150 from jonels-msft/disk-alerts
Suggested alerts
2 parents 47beab0 + c0ef3b1 commit f62a3e8

File tree

1 file changed

+21
-3
lines changed

1 file changed

+21
-3
lines changed

articles/postgresql/howto-hyperscale-alert-on-metric.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ author: jonels-msft
55
ms.author: jonels
66
ms.service: postgresql
77
ms.topic: conceptual
8-
ms.date: 11/04/2019
8+
ms.date: 2/18/2020
99
---
1010

1111
# Use the Azure portal to set up alerts on metrics for Azure Database for PostgreSQL - Hyperscale (Citus)
1212

13-
This article shows you how to set up Azure Database for PostgreSQL alerts using the Azure portal. You can receive an alert based on monitoring metrics for your Azure services.
13+
This article shows you how to set up Azure Database for PostgreSQL alerts using the Azure portal. You can receive an alert based on [monitoring metrics](concepts-hyperscale-monitoring.md) for your Azure services.
1414

1515
We'll set up an alert to trigger when the value of a specified metric crosses a threshold. The alert triggers when the condition is first met, and continues to trigger afterwards.
1616

@@ -76,14 +76,32 @@ You can configure and get information about alert rules using:
7676

7777
Within a few minutes, the alert is active and triggers as previously described.
7878

79-
## Manage your alerts
79+
### Managing alerts
8080

8181
Once you've created an alert, you can select it and do the following actions:
8282

8383
* View a graph showing the metric threshold and the actual values from the previous day relevant to this alert.
8484
* **Edit** or **Delete** the alert rule.
8585
* **Disable** or **Enable** the alert, if you want to temporarily stop or resume receiving notifications.
8686

87+
## Suggested alerts
88+
89+
### Disk space
90+
91+
Monitoring and alerting is important for every production Hyperscale (Citus) server group. The underlying PostgreSQL database requires free disk space to operate correctly. If the disk becomes full, the database server node will go offline and refuse to start until space is available. At that point, it requires a Microsoft support request to fix the situation.
92+
93+
We recommend setting disk space alerts on every node in every server group, even for non-production usage. Disk space usage alerts provide the advance warning needed to intervene and keep nodes healthy. For best results, try a series of alerts at 75%, 85%, and 95% usage. The percentages to choose depend on data ingestion speed, since fast data ingestion fills up the disk faster.
94+
95+
As the disk approaches its space limit, try these techniques to get more free space:
96+
97+
* Review data retention policy. Move older data to cold storage if feasible.
98+
* Consider [adding nodes](howto-hyperscale-scaling.md#add-worker-nodes) to the server group and rebalancing shards. Rebalancing distributes the data across more computers.
99+
* Consider [growing the capacity](howto-hyperscale-scaling.md#increase-vcores) of worker nodes. Each worker can have up to 2 TiB of storage. However adding nodes should be attempted before resizing nodes because adding nodes completes faster.
100+
101+
### CPU usage
102+
103+
Monitoring CPU usage is useful to establish a baseline for performance. For example, you may notice that CPU usage is usually around 40-60%. If CPU usage suddenly begins hovering around 95%, you can recognize an anomaly. The CPU usage may reflect organic growth, but it may also reveal a stray query. When creating a CPU alert, set a long aggregation granularity to catch prolonged increases and ignore momentary spikes.
104+
87105
## Next steps
88106
* Learn more about [configuring webhooks in alerts](../azure-monitor/platform/alerts-webhooks.md).
89107
* Get an [overview of metrics collection](../monitoring-and-diagnostics/insights-how-to-customize-monitoring.md) to make sure your service is available and responsive.

0 commit comments

Comments
 (0)