Skip to content

Commit a2af741

Browse files
committed
Update NGINXaaS documentation for native-metrics integration
1 parent 82045bb commit a2af741

File tree

3 files changed

+45
-58
lines changed

3 files changed

+45
-58
lines changed

content/nginxaas-azure/changelog.md

+7
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,13 @@ To see a list of currently active issues, visit the [Known issues]({{< relref "/
1313

1414
To review older entries, visit the [Changelog archive]({{< relref "/nginxaas-azure/changelog-archive" >}}) section.
1515

16+
## TODO: March XX, 2025
17+
18+
- {{% icon-resolved %}} **Azure Monitor Platform Metrics**
19+
20+
NGINXaaS now publishes platform metrics directly to Azure Monitor. Legacy monitoring based on custom metrics is deprecated, and we strongly recommend migrating your alerts to use platform metrics for improved monitoring and management. For more details on enabling platform metrics, please refer to [Enable Monitoring]({{< relref "/nginxaas-azure/monitoring/enable-monitoring.md">}}).
21+
22+
1623
## March 13, 2025
1724

1825
- {{% icon-resolved %}} **Percentage capacity metric**

content/nginxaas-azure/monitoring/configure-alerts.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ url: /nginxaas/azure/monitoring/configure-alerts/
1010

1111
## Overview
1212

13-
{{<note>}}F5 NGINX as a Service for Azure (NGINXaaS) publishes custom metrics to Azure Monitor. To learn more about how to create and manage metrics-based alert rules, refer to the [Alerts section in Azure Monitor](https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-create-new-alert-rule?tabs=metric) documentation from Microsoft. {{</note>}}
13+
{{<note>}}F5 NGINX as a Service for Azure (NGINXaaS) publishes platform metrics to Azure Monitor. To learn more about how to create and manage metrics-based alert rules, refer to the [Alerts section in Azure Monitor](https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-create-new-alert-rule?tabs=metric) documentation from Microsoft. {{</note>}}
1414

1515
This guide explains how to create and configure metrics-based alerts for your NGINXaaS for Azure deployment using Azure Monitor.
1616

content/nginxaas-azure/monitoring/enable-monitoring.md

+37-57
Original file line numberDiff line numberDiff line change
@@ -7,75 +7,54 @@ docs: "DOCS-876"
77
url: /nginxaas/azure/monitoring/enable-monitoring/
88
---
99

10-
Monitoring your application's performance is crucial for maintaining its reliability and efficiency. F5 NGINX as a Service for Azure (NGINXaaS) seamlessly integrates with Azure Monitor, allowing you to collect, correlate, and analyze metrics for a thorough understanding of your application's health and behavior. With Azure Monitor, you gain access to a wealth of information regarding your application's operations. You can:
10+
Monitoring your application's performance is crucial for maintaining its reliability and efficiency. F5 NGINX as a Service for Azure (NGINXaaS) seamlessly integrates with Azure Monitor, allowing you to collect, correlate, and analyze metrics for a thorough understanding of your application's health and behavior.
1111

12-
- Review Metrics: Examine the performance data collected from your application.
13-
- Correlate Data: Connect different data points to gain insights into application performance trends.
14-
- Analyze Performance: Dive deep into metrics to gain a comprehensive understanding of how your application operates.
15-
- Create Alerts: Set up proactive monitoring by configuring alerts that notify you of potential issues before they escalate.
12+
Refer to the [Azure monitor overview](https://docs.microsoft.com/en-us/azure/azure-monitor/overview) documentation from Microsoft to learn more about Azure Monitor.
1613

17-
{{<note>}}NGINXaaS for Azure publishes *custom* metrics to Azure Monitor. To learn about the differences between standard and custom metrics, refer to the [Custom metrics in Azure Monitor overview](https://docs.microsoft.com/en-us/azure/azure-monitor/essentials/metrics-custom-overview) documentation from Microsoft. Azure Monitor custom metrics are currently in public preview.{{</note>}}
14+
### Prerequisites
1815

16+
- A system assigned managed identity with `Monitoring Metrics Publisher` role.
1917

20-
### Prerequisites
18+
{{<note>}} When a system assigned managed identity is added to the deployment through portal, this role is automatically added.{{</note>}}
2119

22-
- A user assigned managed identity or a system assigned managed identity with `Monitoring Metrics Publisher` role.
20+
## Collection
2321

24-
{{<note>}} When a user assigned managed identity or a system assigned managed identity is added to the deployment through portal, this role is automatically added.{{</note>}}
22+
Azure Monitor will collects metrics from the NGINXaaS deployment automatically if the prerequisites are met. No configuration is required.
2523

26-
- User must be an owner or user access administrator for NGINX deployment resource to complete this set up.
24+
## Exporting
25+
You can export Azure Monitor metrics to other destinations like Log Analytics workspace, Azure Storage Account, Azure Event Hubs or Azure Monitor partner solutions using Diagnostic Setting. For more information, see the [Metrics diagnostic setting](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/diagnostic-settings).
2726

28-
- If you're unfamiliar with Azure Monitor, refer to the [Azure monitor overview](https://docs.microsoft.com/en-us/azure/azure-monitor/overview) documentation from Microsoft.
27+
To configure diagnostic settings for a service, see [Create diagnostic settings in Azure Monitor](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/create-diagnostic-settings).
2928

30-
## Enable monitoring
29+
{{<note>}} Not all metrics are exportable via diagnostic settings, for a list of exportable metrics, see [NGINXaaS exportable metrics](https://learn.microsoft.com/en-us/azure/azure-monitor/reference/supported-metrics/nginx-nginxplus-nginxdeployments-metrics).{{</note>}}
3130

32-
1. Log in to the Azure portal and navigate to your NGINXaaS for Azure deployment.
33-
2. In the navigation pane under **Settings**, select the **NGINX monitoring** section.
34-
3. Turn on the **Send metrics to Azure Monitor** setting.
3531

36-
## View metrics with Azure Monitor metrics explorer
32+
## Cost and retention
33+
Azure Monitor platform metrics are ingested and stored free of charge, with a standard retention period of 93 days. Adding alerts, querying Azure Monitor using REST API or exporting metrics using Azure Monitor's diagnostic settings would incurs costs. For detailed pricing, you can refer to the [Azure Monitor pricing page](https://azure.microsoft.com/en-us/pricing/details/monitor/).
3734

38-
1. In the navigation pane under **Monitoring**, select the **Metrics** section to access the Azure Monitor metrics explorer for your NGINXaaS deployment.
39-
2. Refer to the [Azure Monitor metrics explorer](https://docs.microsoft.com/en-us/azure/azure-monitor/essentials/metrics-getting-started) documentation from Microsoft to learn how you can create queries.
4035

41-
{{<note>}}Many of NGINX Plus's advanced statistics need to be enabled in the "nginx.conf" file before they will appear in the metrics explorer, for example "plus.http.request.bytes_*". Refer to [Gathering Data to Appear in Statistics](https://docs.nginx.com/nginx/admin-guide/monitoring/live-activity-monitoring/#gathering-data-to-appear-in-statistics) to learn more.{{</note>}}
36+
## View metrics with Azure Monitor metrics explorer
4237

43-
## Retrieve metrics through Azure Monitor API
38+
Access the [Microsoft Azure portal](https://portal.azure.com)
4439

45-
This section shows you how to effectively discover, gather and analyze NGINXaaS metrics through the Azure Monitor API.
40+
1. Go to your NGINXaaS for Azure deployment.
41+
2. In the navigation pane under **Monitoring**, select the **Metrics** section to access the Azure Monitor metrics explorer for your NGINXaaS deployment.
4642

47-
{{<note>}}Refer to [Authenticate Azure Monitor requests](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/rest-api-walkthrough?tabs=portal#authenticate-azure-monitor-requests) for instructions on authenticating your API requests against the Azure Monitor API endpoint.{{</note>}}
43+
Refer to the [Azure Monitor metrics explorer](https://docs.microsoft.com/en-us/azure/azure-monitor/essentials/metrics-getting-started) documentation from Microsoft to learn how you can create queries.
4844

49-
1. **Retrieve metric namespaces:** Each metric belongs to a category, or "namespace", which groups similar types of metrics together. We recommend listing all namespaces for NGINXaaS to locate the metrics you're interested in. The following `curl` example shows how to retrieve all metrics namespaces on your NGINXaaS deployment:
45+
{{<note>}}Many of NGINX Plus's advanced statistics need to be enabled in the "nginx.conf" file before they will appear in the metrics explorer, for example "plus.http.request.bytes_*". Refer to [Gathering Data to Appear in Statistics](https://docs.nginx.com/nginx/admin-guide/monitoring/live-activity-monitoring/#gathering-data-to-appear-in-statistics) to learn more.{{</note>}}
5046

51-
```bash
52-
curl --request GET --header "Authorization: Bearer $TOKEN" "https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metricNamespaces?api-version=2024-02-01"
53-
```
47+
## Retrieve metrics through Azure Monitor REST API
5448

55-
The following JSON shows an example response body:
49+
This section shows you how to effectively discover, gather and analyze NGINXaaS metrics through the Azure Monitor REST API.
5650

57-
```json
58-
{
59-
"value": [
60-
...
61-
{
62-
"id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metricNamespaces/NGINX Connections Statistics",
63-
"name": "nginx connections statistics",
64-
"type": "Microsoft.Insights/metricNamespaces",
65-
"classification": "Custom",
66-
"properties": {
67-
"metricNamespaceName": "nginx connections statistics"
68-
}
69-
},
70-
...
71-
]
72-
}
73-
```
51+
{{<note>}}Refer to [Authenticate Azure Monitor requests](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/rest-api-walkthrough?tabs=portal#authenticate-azure-monitor-requests) for instructions on authenticating your API requests against the Azure Monitor API endpoint.{{</note>}}
7452

75-
2. **Retrieve metric definitions:** Metrics definitions give you insights into the various metrics available for NGINXaaS within a namespace and what they represent. The following `curl` example shows how to retrieve all metrics definitions within the `nginx connections statistics` namespace for your NGINXaaS deployment:
53+
54+
1. **Retrieve metric definitions:** Metrics definitions give you insights into the various metrics available for NGINXaaS within a namespace and what they represent. The following `curl` example shows how to retrieve all metrics definitions within the `nginx connections statistics` namespace for your NGINXaaS deployment:
7655

7756
```bash
78-
curl --request GET --header "Authorization: Bearer $TOKEN" "https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metricDefinitions?metricnamespace=nginx%20connections%20statistics&api-version=2024-02-01"
57+
curl --request GET --header "Authorization: Bearer $TOKEN" "https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metricDefinitions?api-version=2024-02-01"
7958
```
8059

8160
The following JSON shows an example response body:
@@ -87,50 +66,51 @@ This section shows you how to effectively discover, gather and analyze NGINXaaS
8766
{
8867
"id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metricdefinitions/Nginx Connections Statistics/nginx.conn.current",
8968
"resourceId": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-deployment",
90-
"namespace": "NGINX Connections Statistics",
69+
"namespace": "NGINX.NGINXPLUS/nginxDeployments",
70+
"category":"nginx connections statistics",
9171
"name": {
9272
"value": "nginx.conn.current",
93-
"localizedValue": "nginx.conn.current"
73+
"localizedValue": "Current connections"
9474
},
9575
...
96-
},
76+
}
9777
...
9878
]
9979
}
10080
```
10181

102-
3. **Metric values:** Finally, you can obtain the actual metric values which represent real-time or historical data points that tell you how your NGINXaaS is performing. The following `curl` example shows how to retrieve the value of metric `nginx.conn.current` within the `nginx connections statistics` namespace over a 10-minute time window averaged over 5 minute intervals:
82+
2. **Metric values:** You can obtain the actual metric values which represent real-time or historical data points that tell you how your NGINXaaS is performing. The following `curl` example shows how to retrieve the value of metric `nginx.conn.current` over a 10-minute time window averaged over 5 minute intervals:
10383

10484
```bash
105-
curl --request GET --header "Authorization: Bearer $TOKEN" "https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metrics?metricnamespace=nginx%20connections%20statistics&metricnames=nginx.conn.current&timespan=2024-03-27T20:00:00Z/2024-03-27T20:10:00Z&aggregation=Average&interval=PT5M&api-version=2024-02-01"
85+
curl --request GET --header "Authorization: Bearer $TOKEN" "https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/microsoft.insights/metrics?metricnames=nginx.conn.current&timespan=2025-03-27T20:00:00Z/2025-03-27T20:10:00Z&aggregation=Average&interval=PT5M&api-version=2024-02-01"
10686
```
10787

10888
The following JSON shows an example response body:
10989

11090
```json
11191
{
11292
"cost": 9,
113-
"timespan": "2024-03-27T20:00:00Z/2024-03-27T20:10:00Z",
93+
"timespan": "2025-03-27T20:00:00Z/2025-03-27T20:10:00Z",
11494
"interval": "PT5M",
11595
"value": [
11696
{
11797
"id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/my-nginx-rg/providers/NGINX.NGINXPLUS/nginxDeployments/my-nginx-dep/providers/Microsoft.Insights/metrics/nginx.conn.current",
11898
"type": "Microsoft.Insights/metrics",
11999
"name": {
120100
"value": "nginx.conn.current",
121-
"localizedValue": "nginx.conn.current"
101+
"localizedValue": "Current connections"
122102
},
123-
"unit": "Unspecified",
103+
"unit": "Count",
124104
"timeseries": [
125105
{
126106
"metadatavalues": [],
127107
"data": [
128108
{
129-
"timeStamp": "2024-03-27T20:00:00Z",
109+
"timeStamp": "2025-03-27T20:00:00Z",
130110
"average": 4
131111
},
132112
{
133-
"timeStamp": "2024-03-27T20:05:00Z",
113+
"timeStamp": "2025-03-27T20:05:00Z",
134114
"average": 4
135115
}
136116
]
@@ -139,7 +119,7 @@ This section shows you how to effectively discover, gather and analyze NGINXaaS
139119
"errorCode": "Success"
140120
}
141121
],
142-
"namespace": "nginx connections statistics",
122+
"namespace": "NGINX.NGINXPLUS/nginxDeployments",
143123
"resourceregion": "eastus2"
144124
}
145125
```

0 commit comments

Comments
 (0)