Skip to content

Commit 658ad02

Browse files
authored
Merge pull request #226332 from MicrosoftDocs/main
Publish to live, Sunday 4 AM PST, 2/5
2 parents 7c9623f + cf949b6 commit 658ad02

File tree

159 files changed

+1057
-668
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

159 files changed

+1057
-668
lines changed

articles/active-directory/cloud-infrastructure-entitlement-management/how-to-create-group-based-permissions.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: active-directory
88
ms.subservice: ciem
99
ms.workload: identity
1010
ms.topic: how-to
11-
ms.date: 02/23/2022
11+
ms.date: 02/03/2023
1212
ms.author: jfields
1313
---
1414

@@ -33,15 +33,15 @@ This article describes how you can create and manage group-based permissions in
3333
1. Select **Next**
3434

3535
1. If you selected **Admin for all Authorization System Types**
36-
- Select Identities for each Authorization System that you would like members of this group to Request on.
36+
- Select Identities to add for each Authorization System. Added Identities will have access to submit requests from the **Remediation** tab.
3737

3838
1. If you selected **Admin for selected Authorization System Types**
3939
- Select **Viewer**, **Controller**, or **Approver** for the **Authorization System Types** you want.
40-
- Select **Next** and then select Identities for each Authorization System that you would like members of this group to Request on.
40+
- Select **Next** and then select Select Identities to add for each Authorization System. Added Identities will have access to submit requests from the **Remediation** tab.
4141

4242
1. If you select **Custom**, select the **Authorization System Types** you want.
4343
- Select **Viewer**, **Controller**, or **Approver** for the **Authorization Systems** you want.
44-
- Select **Next** and then select Identities for each Authorization System that you would like members of this group to Request on.
44+
- Select **Next** and then select Select Identities to add for each Authorization System. Added Identities will have access to submit requests from the **Remediation** tab.
4545

4646
1. Select **Save**, The following message appears: **New Group Has been Created Successfully.**
4747
1. To see the group you created in the **Groups** table, refresh the page.

articles/active-directory/hybrid/how-to-connect-group-writeback-v2.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ms.collection: M365-identity-device-management
1919
Group writeback allows you to write cloud groups back to your on-premises Active Directory instance by using Azure Active Directory (Azure AD) Connect sync. You can use this feature to manage groups in the cloud, while controlling access to on-premises applications and resources.
2020

2121
> [!NOTE]
22-
> The group writeback functionality is currently in Public Preview as we are collecting customer feedback and telemetry. Please refer to [the limitations](#understand-limitations-of-public-preview) before you enable this functionality.
22+
> The group writeback functionality is currently in Public Preview as we are collecting customer feedback and telemetry. Please refer to [the limitations](#understand-limitations-of-public-preview) before you enable this functionality. You should not deploy the functionality to write back security groups in your production environment. We are planning to replace the AADConnect security group writeback functionality with the new Cloud Sync group writeback feature, and when this releases we will remove the AADConnect Group Writeback functionality. This does not impact M365 group writeback funcitonality, which will remain unchanged.
2323
2424

2525
There are two versions of group writeback. The original version is in general availability and is limited to writing back Microsoft 365 groups to your on-premises Active Directory instance as distribution groups. The new, expanded version of group writeback is in public preview and enables the following capabilities:

articles/azure-arc/data/create-data-controller-using-kubernetes-native-tools.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,10 @@ Save a copy of [bootstrapper-unified.yaml](https://raw.githubusercontent.com/mic
4242

4343
> [!IMPORTANT]
4444
> The bootstrapper-unified.yaml template file defaults to pulling the bootstrapper container image from the Microsoft Container Registry (MCR). If your environment can't directly access the Microsoft Container Registry, you can do the following:
45-
- Follow the steps to [pull the container images from the Microsoft Container Registry and push them to a private container registry](offline-deployment.md).
46-
- [Create an image pull secret](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/#create-a-secret-by-providing-credentials-on-the-command-line) named `arc-private-registry` for your private container registry.
47-
- Change the image URL for the bootstrapper image in the bootstrap.yaml file.
48-
- Replace `arc-private-registry` in the bootstrap.yaml file if a different name was used for the image pull secret.
45+
> - Follow the steps to [pull the container images from the Microsoft Container Registry and push them to a private container registry](offline-deployment.md).
46+
> - [Create an image pull secret](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/#create-a-secret-by-providing-credentials-on-the-command-line) named `arc-private-registry` for your private container registry.
47+
> - Change the image URL for the bootstrapper image in the bootstrap.yaml file.
48+
> - Replace `arc-private-registry` in the bootstrap.yaml file if a different name was used for the image pull secret.
4949
5050
Run the following command to create the namespace and bootstrapper service with the edited file.
5151

articles/azure-arc/kubernetes/extensions-release.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: "Available extensions for Azure Arc-enabled Kubernetes clusters"
3-
ms.date: 01/23/2023
3+
ms.date: 02/03/2023
44
ms.topic: how-to
55
description: "See which extensions are currently available for Azure Arc-enabled Kubernetes clusters and view release notes."
66
---
@@ -92,7 +92,7 @@ For more information, see [Introduction to Kubernetes compute target in AzureML]
9292

9393
## Flux (GitOps)
9494

95-
[GitOps on Azure Arc-enabled Kubernetes](conceptual-gitops-flux2.md) uses [Flux v2](https://fluxcd.io/docs/), a popular open-source tool set, to help manage cluster configuration and application deployment. GitOps is enabled in the cluster as a `Microsoft.KubernetesConfiguration/extensions/microsoft.flux` cluster extension resource.
95+
[GitOps on AKS and Azure Arc-enabled Kubernetes](conceptual-gitops-flux2.md) uses [Flux v2](https://fluxcd.io/docs/), a popular open-source tool set, to help manage cluster configuration and application deployment. GitOps is enabled in the cluster as a `Microsoft.KubernetesConfiguration/extensions/microsoft.flux` cluster extension resource.
9696

9797
For more information, see [Tutorial: Deploy applications using GitOps with Flux v2](tutorial-use-gitops-flux2.md).
9898

articles/azure-functions/functions-bindings-error-pages.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,12 @@ Starting with version 3.x of the Azure Functions runtime, you can define retry p
6868

6969
The retry policy tells the runtime to rerun a failed execution until either successful completion occurs or the maximum number of retries is reached.
7070

71-
A retry policy is evaluated when a Timer, Kafka, or Event Hubs-triggered function raises an uncaught exception. As a best practice, you should catch all exceptions in your code and rethrow any errors that you want to result in a retry. Event Hubs checkpoints won't be written until the retry policy for the execution has finished. Because of this behavior, progress on the specific partition is paused until the current batch has finished.
71+
A retry policy is evaluated when a Timer, Kafka, or Event Hubs-triggered function raises an uncaught exception. As a best practice, you should catch all exceptions in your code and rethrow any errors that you want to result in a retry.
72+
73+
> [!IMPORTANT]
74+
> Event Hubs checkpoints won't be written until the retry policy for the execution has finished. Because of this behavior, progress on the specific partition is paused until the current batch has finished.
75+
>
76+
> The Event Hubs v5 extension supports additional retry capabilities for interactions between the Functions host and the event hub. Please refer to the `clientRetryOptions` in [the Event Hubs section of the host.json](functions-bindings-event-hubs.md#host-json) file for more information.
7277
7378
#### Retry strategies
7479

articles/azure-functions/functions-bindings-triggers-python.md

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,126 @@ def test_function(mytimer: func.TimerRequest) -> None:
284284
logging.info('The timer is past due!')
285285
logging.info('Python timer trigger function ran at %s', utc_timestamp)
286286
```
287+
288+
## Durable Functions
289+
290+
Durable Functions also provides preview support of the V2 programming model. To try it out, install the Durable Functions SDK (PyPI package `azure-functions-durable`) from version `1.2.2` or greater. You can reach us in the [Durable Functions SDK for Python repo](https://github.com/Azure/azure-functions-durable-python) with feedback and suggestions.
291+
292+
293+
> [!NOTE]
294+
> Using [Extension Bundles](/azure-functions/functions-bindings-register#extension-bundles) is not currently supported when trying out the Python V2 programming model with Durable Functions, so you will need to manage your extensions manually.
295+
> To do this, remove the `extensionBundles` section of your `host.json` as described [here](/azure-functions/functions-bindings-register#extension-bundles) and run `func extensions install --package Microsoft.Azure.WebJobs.Extensions.DurableTask --version 2.9.1` on your terminal. This will install the Durable Functions extension for your app and will allow you to try out the new experience.
296+
297+
The Durable Functions Triggers and Bindings may be accessed from an instance `DFApp`, a subclass of `FunctionApp` that additionally exports Durable Functions-specific decorators.
298+
299+
Below is a simple Durable Functions app that declares a simple sequential orchestrator, all in one file!
300+
301+
```python
302+
import azure.functions as func
303+
import azure.durable_functions as df
304+
305+
myApp = df.DFApp(http_auth_level=func.AuthLevel.ANONYMOUS)
306+
307+
# An HTTP-Triggered Function with a Durable Functions Client binding
308+
@myApp.route(route="orchestrators/{functionName}")
309+
@myApp.durable_client_input(client_name="client")
310+
async def durable_trigger(req: func.HttpRequest, client):
311+
function_name = req.route_params.get('functionName')
312+
instance_id = await client.start_new(function_name)
313+
response = client.create_check_status_response(req, instance_id)
314+
return response
315+
316+
# Orchestrator
317+
@myApp.orchestration_trigger(context_name="context")
318+
def my_orchestrator(context):
319+
result1 = yield context.call_activity("hello", "Seattle")
320+
result2 = yield context.call_activity("hello", "Tokyo")
321+
result3 = yield context.call_activity("hello", "London")
322+
323+
return [result1, result2, result3]
324+
325+
# Activity
326+
@myApp.activity_trigger(input_name="myInput")
327+
def hello(myInput: str):
328+
return "Hello " + myInput
329+
```
330+
331+
> [!NOTE]
332+
> Previously, Durable Functions orchestrators needed an extra line of boilerplate, usually at the end of the file, to be indexed:
333+
> `main = df.Orchestrator.create(<name_of_orchestrator_function>)`.
334+
> This is no longer needed in V2 of the Python programming model. This applies to Entities as well, which required a similar boilerplate through
335+
> `main = df.Entity.create(<name_of_entity_function>)`.
336+
337+
For reference, all Durable Functions Triggers and Bindings are listed below:
338+
339+
### Orchestration Trigger
340+
341+
```python
342+
import azure.functions as func
343+
import azure.durable_functions as df
344+
345+
myApp = df.DFApp(http_auth_level=func.AuthLevel.ANONYMOUS)
346+
347+
@myApp.orchestration_trigger(context_name="context")
348+
def my_orchestrator(context):
349+
result = yield context.call_activity("Hello", "Tokyo")
350+
return result
351+
```
352+
353+
### Activity Trigger
354+
355+
```python
356+
import azure.functions as func
357+
import azure.durable_functions as df
358+
359+
myApp = df.DFApp(http_auth_level=func.AuthLevel.ANONYMOUS)
360+
361+
@myApp.activity_trigger(input_name="myInput")
362+
def my_activity(myInput: str):
363+
return "Hello " + myInput
364+
```
365+
366+
### DF Client Binding
367+
368+
```python
369+
import azure.functions as func
370+
import azure.durable_functions as df
371+
372+
myApp = df.DFApp(http_auth_level=func.AuthLevel.ANONYMOUS)
373+
374+
@myApp.route(route="orchestrators/{functionName}")
375+
@myApp.durable_client_input(client_name="client")
376+
async def durable_trigger(req: func.HttpRequest, client):
377+
function_name = req.route_params.get('functionName')
378+
instance_id = await client.start_new(function_name)
379+
response = client.create_check_status_response(req, instance_id)
380+
return response
381+
```
382+
383+
### Entity Trigger
384+
385+
```python
386+
import azure.functions as func
387+
import azure.durable_functions as df
388+
389+
myApp = df.DFApp(http_auth_level=func.AuthLevel.ANONYMOUS)
390+
391+
@myApp.entity_trigger(context_name="context")
392+
def entity_function(context):
393+
current_value = context.get_state(lambda: 0)
394+
operation = context.operation_name
395+
if operation == "add":
396+
amount = context.get_input()
397+
current_value += amount
398+
elif operation == "reset":
399+
current_value = 0
400+
elif operation == "get":
401+
pass
402+
403+
context.set_state(current_value)
404+
context.set_result(current_value)
405+
```
406+
287407
## Next steps
288408

289409
+ [Python developer guide](./functions-reference-python.md)

articles/azure-monitor/agents/data-collection-rule-azure-monitor-agent.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ To complete this procedure, you need:
1818

1919
- Log Analytics workspace where you have at least [contributor rights](../logs/manage-access.md#azure-rbac).
2020
- [Permissions to create Data Collection Rule objects](../essentials/data-collection-rule-overview.md#permissions) in the workspace.
21-
- Create [data collection rules (DCRs)](../essentials/data-collection-rule-overview.md) that define which data Azure Monitor Agent sends to which destinations, as described in the next section
2221
- Associate the data collection rule to specific virtual machines.
2322

2423
## Create a data collection rule

articles/azure-monitor/app/asp-net-dependencies.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ For ASP.NET applications, the full SQL query text is collected with the help of
106106
| Platform | Steps needed to get full SQL query |
107107
| --- | --- |
108108
| Web Apps in Azure App Service|In your web app control panel, [open the Application Insights pane](../../azure-monitor/app/azure-web-apps.md) and enable SQL Commands under .NET. |
109-
| IIS Server (Azure Virtual Machines, on-premises, and so on) | Either use the [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package or use the Status Monitor PowerShell Module to [install the instrumentation engine](../../azure-monitor/app/status-monitor-v2-api-reference.md#enable-instrumentationengine) and restart IIS. |
109+
| IIS Server (Azure Virtual Machines, on-premises, and so on) | Either use the [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package or use the Application Insights Agent PowerShell Module to [install the instrumentation engine](../../azure-monitor/app/status-monitor-v2-api-reference.md#enable-instrumentationengine) and restart IIS. |
110110
| Azure Cloud Services | Add a [startup task to install StatusMonitor](../../azure-monitor/app/azure-web-apps-net-core.md). <br> Your app should be onboarded to the ApplicationInsights SDK at build time by installing NuGet packages for [ASP.NET](./asp-net.md) or [ASP.NET Core applications](./asp-net-core.md). |
111111
| IIS Express | Use the [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package.
112112
| WebJobs in Azure App Service| Use the [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package.

articles/azure-monitor/app/configuration-with-applicationinsights-config.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ms.reviewer: casocha
1313

1414
The Application Insights .NET SDK consists of many NuGet packages. The [core package](https://www.nuget.org/packages/Microsoft.ApplicationInsights) provides the API for sending telemetry to the Application Insights. [More packages](https://www.nuget.org/packages?q=Microsoft.ApplicationInsights) provide telemetry *modules* and *initializers* for automatically tracking telemetry from your application and its context. By adjusting the configuration file, you can enable or disable telemetry modules and initializers. You can also set parameters for some of them.
1515

16-
The configuration file is named `ApplicationInsights.config` or `ApplicationInsights.xml`. The name depends on the type of your application. It's automatically added to your project when you [install most versions of the SDK][start]. By default, when you use the automated experience from the Visual Studio template projects that support **Add** > **Application Insights Telemetry**, the `ApplicationInsights.config` file is created in the project root folder. When it's compiled, it's copied to the bin folder. It's also added to a web app by [Status Monitor on an IIS server][redfield]. The configuration file is ignored if the [extension for Azure websites](azure-web-apps.md) or the [extension for Azure VMs and virtual machine scale sets](azure-vm-vmss-apps.md) is used.
16+
The configuration file is named `ApplicationInsights.config` or `ApplicationInsights.xml`. The name depends on the type of your application. It's automatically added to your project when you [install most versions of the SDK][start]. By default, when you use the automated experience from the Visual Studio template projects that support **Add** > **Application Insights Telemetry**, the `ApplicationInsights.config` file is created in the project root folder. When it's compiled, it's copied to the bin folder. It's also added to a web app by [Application Insights Agent on an IIS server][redfield]. The configuration file is ignored if the [extension for Azure websites](azure-web-apps.md) or the [extension for Azure VMs and virtual machine scale sets](azure-vm-vmss-apps.md) is used.
1717

1818
There isn't an equivalent file to control the [SDK in a webpage][client].
1919

@@ -30,7 +30,7 @@ There's a node in the configuration file for each module. To disable a module, d
3030

3131
### Dependency tracking
3232

33-
[Dependency tracking](./asp-net-dependencies.md) collects telemetry about calls your app makes to databases and external services and databases. To allow this module to work in an IIS server, you need to [install Status Monitor][redfield].
33+
[Dependency tracking](./asp-net-dependencies.md) collects telemetry about calls your app makes to databases and external services and databases. To allow this module to work in an IIS server, you need to [install Application Insights Agent][redfield].
3434

3535
You can also write your own dependency tracking code by using the [TrackDependency API](./api-custom-events-metrics.md#trackdependency).
3636

0 commit comments

Comments
 (0)