Skip to content

Commit 4311f7b

Browse files
authored
Merge pull request #289852 from MicrosoftDocs/main
11/5 11:00 AM IST Publish
2 parents 05850e8 + f8ad2b5 commit 4311f7b

File tree

10 files changed

+180
-57
lines changed

10 files changed

+180
-57
lines changed

articles/api-management/api-management-howto-api-inspector.md

Lines changed: 35 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: api-management
55
author: dlepow
66
ms.service: azure-api-management
77
ms.topic: tutorial
8-
ms.date: 05/05/2024
8+
ms.date: 11/04/2024
99
ms.author: danlep
1010
ms.custom: devdivchpfy22
1111
---
@@ -36,11 +36,14 @@ In this tutorial, you learn how to:
3636

3737
## Trace a call in the portal
3838

39+
Follow these steps to trace an API request in the test console in the portal. This example assumes that you [imported](import-and-publish.md) a sample API in a previous tutorial. You can follow similar steps with a different API that you imported.
40+
3941
1. Sign in to the [Azure portal](https://portal.azure.com), and navigate to your API Management instance.
40-
1. Select **APIs**.
41-
1. Select **Demo Conference API** from your API list.
42+
1. Select **APIs** > **APIs**.
43+
1. Select **Petstore API** from your API list.
4244
1. Select the **Test** tab.
43-
1. Select the **GetSpeakers** operation.
45+
1. Select the **Find pet by ID** operation.
46+
1. In the *petId* **Query parameter**, enter *1*.
4447
1. Optionally check the value for the **Ocp-Apim-Subscription-Key** header used in the request by selecting the "eye" icon.
4548
> [!TIP]
4649
> You can override the value of **Ocp-Apim-Subscription-Key** by retrieving a key for another subscription in the portal. Select **Subscriptions**, and open the context menu (**...**) for another subscription. Select **Show/hide keys** and copy one of the keys. You can also regenerate keys if needed. Then, in the test console, select **+ Add header** to add an **Ocp-Apim-Subscription-Key** header with the new key value.
@@ -55,7 +58,7 @@ In this tutorial, you learn how to:
5558

5659
:::image type="content" source="media/api-management-howto-api-inspector/response-trace-1.png" alt-text="Review response trace":::
5760

58-
* **Inbound** - Shows the original request API Management received from the caller and the policies applied to the request. For example, if you added policies in [Tutorial: Transform and protect your API](transform-api.md), they'll appear here.
61+
* **Inbound** - Shows the original request API Management received from the caller and the policies applied to the request. For example, if you added policies in [Tutorial: Transform and protect your API](transform-api.md), they appear here.
5962

6063
* **Backend** - Shows the requests API Management sent to the API backend and the response it received.
6164

@@ -69,25 +72,31 @@ In this tutorial, you learn how to:
6972

7073
## Enable tracing for an API
7174

72-
You can enable tracing for an API when making requests to API Management using `curl`, a REST client such as Visual Studio Code with the REST Client extension, or a client app.
75+
The following high level steps are required to enable tracing for a request to API Management when using `curl`, a REST client such as Visual Studio Code with the REST Client extension, or a client app. Currently these steps must be followed using the [API Management REST API](/rest/api/apimanagement):
76+
77+
1. Obtain a token credential for tracing.
78+
1. Add the token value in an `Apim-Debug-Authorization` request header to the API Management gateway.
79+
1. Obtain a trace ID in the `Apim-Trace-Id` response header.
80+
1. Retrieve the trace corresponding to the trace ID.
7381

74-
Enable tracing by the following steps using calls to the API Management REST API.
82+
Detailed steps follow.
7583

7684
> [!NOTE]
77-
> The following steps require API Management REST API version 2023-05-01-preview or later. You must be assigned the Contributor or higher role on the API Management instance to call the REST API.
85+
> * These steps require API Management REST API version 2023-05-01-preview or later. You must be assigned the Contributor or higher role on the API Management instance to call the REST API.
86+
> * For information about authenticating to the REST API, see [Azure REST API reference](/rest/api/azure).
7887
79-
1. Obtain trace credentials by calling the [List debug credentials](/rest/api/apimanagement/gateway/list-debug-credentials) API. Pass the gateway ID in the URI, or use "managed" for the instance's managed gateway in the cloud. For example, to obtain trace credentials for the managed gateway, use a call similar to the following:
88+
1. **Obtain a token credential** - Call the API Management gateway's [List debug credentials](/rest/api/apimanagement/gateway/list-debug-credentials) API. In the URI, enter "managed" for the instance's managed gateway in the cloud, or the gateway ID for a self-hosted gateway. For example, to obtain trace credentials for the instance's managed gateway, use a request similar to the following:
8089

8190
```http
8291
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/managed/listDebugCredentials?api-version=2023-05-01-preview
8392
```
8493
85-
In the request body, pass the full resource ID of the API that you want to trace, and specify `purposes` as `tracing`. By default the token credential returned in the response expires after 1 hour, but you can specify a different value in the payload.
94+
In the request body, pass the full resource ID of the API that you want to trace, and specify `purposes` as `tracing`. By default the token credential returned in the response expires after 1 hour, but you can specify a different value in the payload. For example:
8695
8796
```json
8897
{
8998
"credentialsExpireAfter": PT1H,
90-
"apiId": "<API resource ID>",
99+
"apiId": ""/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiName}",
91100
"purposes": ["tracing"]
92101
}
93102
```
@@ -96,21 +105,27 @@ Enable tracing by the following steps using calls to the API Management REST API
96105
97106
```json
98107
{
99-
"token": "aid=api-name&p=tracing&ex=......."
108+
"token": "aid=api-name&......."
100109
}
101110
```
102111
103-
1. To enable tracing for a request to the API Management gateway, send the token value in an `Apim-Debug-Authorization` header. For example, to trace a call to the demo conference API, use a call similar to the following:
112+
1. **Add the token value in a request header** - To enable tracing for a request to the API Management gateway, send the token value in an `Apim-Debug-Authorization` header. For example, to trace a call to the Petstore API that you imported in a previous tutorial, you might use a request similar to the following:
104113
105114
```bash
106-
curl -v GET https://apim-hello-world.azure-api.net/conference/speakers HTTP/1.1 -H "Ocp-Apim-Subscription-Key: <subscription-key>" -H "Apim-Debug-Authorization: aid=api-name&p=tracing&ex=......."
115+
curl -v https://apim-hello-world.azure-api.net/pet/1 HTTP/1.1 -H "Ocp-Apim-Subscription-Key: <subscription-key>" -H "Apim-Debug-Authorization: aid=api-name&......."
107116
```
108-
1. Depending on the token, the response contains different headers:
109-
* If the token is valid, the response includes an `Apim-Trace-Id` header whose value is the trace ID.
117+
118+
1. Depending on the token, the response contains one of the following headers:
119+
* If the token is valid, the response includes an `Apim-Trace-Id` header whose value is the trace ID, similar to the following:
120+
121+
```http
122+
Apim-Trace-Id: 0123456789abcdef....
123+
```
124+
110125
* If the token is expired, the response includes an `Apim-Debug-Authorization-Expired` header with information about expiration date.
111-
* If the token was obtained for wrong API, the response includes an `Apim-Debug-Authorization-WrongAPI` header with an error message.
126+
* If the token was obtained for a different API, the response includes an `Apim-Debug-Authorization-WrongAPI` header with an error message.
112127
113-
1. To retrieve the trace, pass the trace ID obtained in the previous step to the [List trace](/rest/api/apimanagement/gateway/list-trace) API for the gateway. For example, to retrieve the trace for the managed gateway, use a call similar to the following:
128+
1. **Retrieve the trace** - Pass the trace ID obtained in the previous step to the gateway's [List trace](/rest/api/apimanagement/gateway/list-trace) API. For example, to retrieve the trace for the managed gateway, use a request similar to the following:
114129
115130
```http
116131
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/managed/listTrace?api-version=2023-05-01-preview
@@ -120,7 +135,7 @@ Enable tracing by the following steps using calls to the API Management REST API
120135
121136
```json
122137
{
123-
"traceId": "<trace ID>"
138+
"traceId": "0123456789abcdef...."
124139
}
125140
```
126141
@@ -134,7 +149,7 @@ For information about customizing trace information, see the [trace](trace-polic
134149
In this tutorial, you learned how to:
135150
136151
> [!div class="checklist"]
137-
> * Trace an example call
152+
> * Trace an example call in the test conosle
138153
> * Review request processing steps
139154
> * Enable tracing for an API
140155

articles/azure-functions/functions-reference-python.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1104,7 +1104,7 @@ In Azure Functions, [application settings](functions-app-settings.md), such as s
11041104
| Method | Description |
11051105
| --- | --- |
11061106
| **`os.environ["myAppSetting"]`** | Tries to get the application setting by key name, and raises an error when it's unsuccessful. |
1107-
| **`os.getenv("myAppSetting")`** | Tries to get the application setting by key name, and returns `null` when it's unsuccessful. |
1107+
| **`os.getenv("myAppSetting")`** | Tries to get the application setting by key name, and returns `None` when it's unsuccessful. |
11081108

11091109
Both of these ways require you to declare `import os`.
11101110

@@ -1131,7 +1131,7 @@ In Azure Functions, [application settings](functions-app-settings.md), such as s
11311131
| Method | Description |
11321132
| --- | --- |
11331133
| **`os.environ["myAppSetting"]`** | Tries to get the application setting by key name, and raises an error when it's unsuccessful. |
1134-
| **`os.getenv("myAppSetting")`** | Tries to get the application setting by key name, and returns `null` when it's unsuccessful. |
1134+
| **`os.getenv("myAppSetting")`** | Tries to get the application setting by key name, and returns `None` when it's unsuccessful. |
11351135

11361136
Both of these ways require you to declare `import os`.
11371137

articles/container-apps/metrics.md

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: container-apps
55
author: v-jaswel
66
ms.service: azure-container-apps
77
ms.topic: how-to
8-
ms.date: 09/23/2024
8+
ms.date: 11/01/2024
99
ms.author: v-wellsjason
1010
---
1111

@@ -21,27 +21,38 @@ Container Apps provides these basic metrics.
2121

2222
| Title | Dimensions | Description | Metric ID | Unit |
2323
|--|--|--|--|--|
24-
| CPU Usage | Replica, Revision | CPU consumed by the container app, in nano cores (1,000,000,000 nanocores = 1 core) | `UsageNanoCores` | nanocores |
25-
| Memory Working Set Bytes | Replica, Revision | Container app working set memory used in bytes | `WorkingSetBytes` | bytes |
26-
| Network In Bytes | Replica, Revision | Network received bytes | `RxBytes` | bytes |
27-
| Network Out Bytes | Replica, Revision | Network transmitted bytes | `TxBytes` | bytes |
28-
| Replica count | Revision | Number of active replicas | `Replicas` | n/a |
29-
| Replica Restart Count | Replica, Revision | Restarts count of container app replicas | `RestartCount` | n/a |
30-
| Requests | Replica, Revision, Status Code, Status Code Category | Requests processed | `Requests` | n/a |
31-
| Reserved Cores | Revision | Number of reserved cores for container app revisions | `CoresQuotaUsed` | n/a |
32-
| Resiliency Connection Timeouts | Revision | Total connection timeouts | `ResiliencyConnectTimeouts` | n/a |
33-
| Resiliency Ejected Hosts | Revision | Number of currently ejected hosts | `ResiliencyEjectedHosts` | n/a |
34-
| Resiliency Ejections Aborted | Revision | Number of ejections aborted due to the max ejection % | `ResiliencyEjectionsAborted` | n/a |
35-
| Resiliency Request Retries | Revision | Total request retries | `ResiliencyRequestRetries` | n/a |
36-
| Resiliency Request Timeouts | Revision | Total requests that timed out waiting for a response | `ResiliencyRequestTimeouts` | n/a |
37-
| Resiliency Requests Pending Connection Pool | Replica | Total requests pending a connection pool connection | `ResiliencyRequestsPendingConnectionPool` | n/a |
38-
| Total Reserved Cores | None | Total cores reserved for the container app | `TotalCoresQuotaUsed` | n/a |
39-
40-
The metrics namespace is `microsoft.app/containerapps`.
24+
| CPU Usage | Replica, Revision | CPU consumed by the container app, in nano cores (1,000,000,000 nanocores = 1 core) | `UsageNanoCores` | Nanocores |
25+
| Memory Working Set Bytes | Replica, Revision | Container app working set memory used in bytes | `WorkingSetBytes` | Bytes |
26+
| Network In Bytes | Replica, Revision | Network received bytes | `RxBytes` | Bytes |
27+
| Network Out Bytes | Replica, Revision | Network transmitted bytes | `TxBytes` | Bytes |
28+
| Replica count | Revision | Number of active replicas | `Replicas` | Count |
29+
| Replica Restart Count | Replica, Revision | Restarts count of container app replicas | `RestartCount` | Count |
30+
| Requests | Replica, Revision, Status Code, Status Code Category | Requests processed | `Requests` | Count |
31+
| Reserved Cores | Revision | Number of reserved cores for container app revisions | `CoresQuotaUsed` | Count |
32+
| Resiliency Connection Timeouts | Revision | Total connection timeouts | `ResiliencyConnectTimeouts` | Count |
33+
| Resiliency Ejected Hosts | Revision | Number of currently ejected hosts | `ResiliencyEjectedHosts` | Count |
34+
| Resiliency Ejections Aborted | Revision | Number of ejections aborted due to the max ejection % | `ResiliencyEjectionsAborted` | Count |
35+
| Resiliency Request Retries | Revision | Total request retries | `ResiliencyRequestRetries` | Count |
36+
| Resiliency Request Timeouts | Revision | Total requests that timed out waiting for a response | `ResiliencyRequestTimeouts` | Count |
37+
| Resiliency Requests Pending Connection Pool | Replica | Total requests pending a connection pool connection | `ResiliencyRequestsPendingConnectionPool` | Count |
38+
| Total Reserved Cores | None | Total cores reserved for the container app | `TotalCoresQuotaUsed` | Count |
39+
| Average Response Time (Preview) | Status Code, Status Code Category | Average response time per status code | `ResponseTime` | Milliseconds |
40+
| CPU Usage Percentage (Preview) | Replica | Percentage of CPU limit used, in percentage points | `CpuPercentage` | Percent |
41+
| Memory Percentage (Preview) | Replica | Percentage of memory limit used, in percentage points | `MemoryPercentage` | Percent |
42+
43+
The metrics namespace is `Microsoft.App/containerapps`.
4144

4245
> [!NOTE]
4346
> Replica restart count is the aggregate restart count over the specified time range, not the number of restarts that occurred at a point in time.
4447
48+
Container Apps environments provides this basic metric. You can only view this metric in [Azure Monitor metrics](https://ms.portal.azure.com/?feature.allrts=true#view/Microsoft_Azure_Monitoring/AzureMonitoringBrowseBlade/~/metrics).
49+
50+
| Title | Dimensions | Description | Metric ID | Unit |
51+
|--|--|--|--|--|
52+
| Workload Profile Node Count (Preview) | Workload Profile Name | The node count per workload profile | `NodeCount` | Count |
53+
54+
The metrics namespace is `Microsoft.App/managedEnvironments`.
55+
4556
More runtime specific metrics are available, [Java metrics](./java-metrics.md).
4657

4758
## Metrics snapshots

articles/dns/dns-faq.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ sections:
7979
- question: |
8080
Does Azure DNS support Domain Name System Security Extensions (DNSSEC)?
8181
answer: |
82-
Yes. See [DNSSEC overview](dnssec.md).
82+
Yes. Azure Public DNS supports DNSSEC. For more information, see [DNSSEC overview](dnssec.md).
8383
8484
- question: |
8585
Does Azure DNS support zone transfers (AXFR/IXFR)?

articles/dns/dns-zones-records.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.assetid: be4580d7-aa1b-4b6b-89a3-0991c0cda897
66
ms.service: azure-dns
77
ms.topic: concept-article
88
ms.custom: H1Hack27Feb2017
9-
ms.date: 10/30/2024
9+
ms.date: 11/04/2024
1010
ms.author: greglin
1111
---
1212

@@ -102,6 +102,16 @@ When calling the Azure DNS REST API, you need to specify each TXT string separat
102102

103103
The multiple strings in a DNS record shouldn't be confused with the multiple TXT records in a TXT record set. A TXT record set can contain multiple records, *each of which* can contain multiple strings. Azure DNS supports a total string length of up to 4096 characters in each TXT record set (across all records combined).
104104

105+
### DS records
106+
107+
The delegation signer (DS) record is a [DNSSEC](dnssec.md) resource record type that is used to secure a delegation. To create a DS record in a zone, the zone must first be signed with DNSSEC.
108+
109+
### TLSA records
110+
111+
A TLSA (Transport Layer Security Authentication) record is used to associate a TLS server certificate or public key with the domain name where the record is found. A TLSA record links the public key (a TLS server certificate) to the domain name, providing an additional layer of security for TLS connections.
112+
113+
To use TLSA records effectively, [DNSSEC](dnssec.md) must be enabled on your domain. This ensures that the TLSA records can be trusted and properly validated
114+
105115
## Tags and metadata
106116

107117
### Tags

articles/event-hubs/azure-event-hubs-kafka-overview.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,6 @@ Standalone and without ksqlDB, Kafka Streams has fewer capabilities than many al
5858
- [Apache Flink](event-hubs-kafka-flink-tutorial.md)
5959
- [Apache Flink on HDInsight on AKS](../hdinsight-aks/flink/flink-overview.md)
6060
- [Akka Streams](event-hubs-kafka-akka-streams-tutorial.md)
61-
62-
The listed services and frameworks can generally acquire event streams and reference data directly from a diverse set of sources through adapters. Kafka Streams can only acquire data from Apache Kafka and your analytics projects are therefore locked into Apache Kafka. To use data from other sources, you're required to first import data into Apache Kafka with the Kafka Connect framework.
63-
64-
If you must use the Kafka Streams framework on Azure, [Apache Kafka on HDInsight](../hdinsight/kafka/apache-kafka-introduction.md) provides you with that option. Apache Kafka on HDInsight provides full control over all configuration aspects of Apache Kafka, while being fully integrated with various aspects of the Azure platform, from fault/update domain placement to network isolation to monitoring integration.
6561

6662
### Kafka Transactions
6763

0 commit comments

Comments
 (0)