diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/CHANGELOG.md b/sdk/loganalytics/azure-resourcemanager-loganalytics/CHANGELOG.md
index 9b3c85a23bad3..b6102cd0a6324 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/CHANGELOG.md
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/CHANGELOG.md
@@ -1,7 +1,8 @@
 # Release History
 
-## 1.0.0-beta.3 (Unreleased)
+## 1.0.0-beta.1 (2022-04-08)
 
+- Azure Resource Manager LogAnalytics client library for Java. This package contains Microsoft Azure SDK for LogAnalytics Management SDK. Operational Insights Client. Package tag package-2022-02. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
 
 ## 1.0.0-beta.2 (2021-03-30)
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/README.md b/sdk/loganalytics/azure-resourcemanager-loganalytics/README.md
index 275123ad963cf..8960c23694d4d 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/README.md
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/README.md
@@ -2,7 +2,7 @@
 
 Azure Resource Manager LogAnalytics client library for Java.
 
-This package contains Microsoft Azure SDK for LogAnalytics Management SDK. Operational Insights Client. Package tag package-2020-08. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+This package contains Microsoft Azure SDK for LogAnalytics Management SDK. Operational Insights Client. Package tag package-2022-02. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
 
 ## We'd love to hear your feedback
 
@@ -32,7 +32,7 @@ Various documentation is available to help you get started
 <dependency>
     <groupId>com.azure.resourcemanager</groupId>
     <artifactId>azure-resourcemanager-loganalytics</artifactId>
-    <version>1.0.0-beta.2</version>
+    <version>1.0.0-beta.3</version>
 </dependency>
 ```
 [//]: # ({x-version-update-end})
@@ -74,6 +74,9 @@ See [API design][design] for general introduction on design and key concepts on
 
 ## Examples
 
+[Code snippets and samples](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/loganalytics/azure-resourcemanager-loganalytics/SAMPLE.md)
+
+
 ## Troubleshooting
 
 ## Next steps
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/SAMPLE.md b/sdk/loganalytics/azure-resourcemanager-loganalytics/SAMPLE.md
new file mode 100644
index 0000000000000..d09c13fdf8b61
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/SAMPLE.md
@@ -0,0 +1,2013 @@
+# Code snippets and samples
+
+
+## AvailableServiceTiers
+
+- [ListByWorkspace](#availableservicetiers_listbyworkspace)
+
+## Clusters
+
+- [CreateOrUpdate](#clusters_createorupdate)
+- [Delete](#clusters_delete)
+- [GetByResourceGroup](#clusters_getbyresourcegroup)
+- [List](#clusters_list)
+- [ListByResourceGroup](#clusters_listbyresourcegroup)
+- [Update](#clusters_update)
+
+## DataExports
+
+- [CreateOrUpdate](#dataexports_createorupdate)
+- [Delete](#dataexports_delete)
+- [Get](#dataexports_get)
+- [ListByWorkspace](#dataexports_listbyworkspace)
+
+## DataSources
+
+- [CreateOrUpdate](#datasources_createorupdate)
+- [Delete](#datasources_delete)
+- [Get](#datasources_get)
+- [ListByWorkspace](#datasources_listbyworkspace)
+
+## DeletedWorkspaces
+
+- [List](#deletedworkspaces_list)
+- [ListByResourceGroup](#deletedworkspaces_listbyresourcegroup)
+
+## Gateways
+
+- [Delete](#gateways_delete)
+
+## IntelligencePacks
+
+- [Disable](#intelligencepacks_disable)
+- [Enable](#intelligencepacks_enable)
+- [List](#intelligencepacks_list)
+
+## LinkedServices
+
+- [CreateOrUpdate](#linkedservices_createorupdate)
+- [Delete](#linkedservices_delete)
+- [Get](#linkedservices_get)
+- [ListByWorkspace](#linkedservices_listbyworkspace)
+
+## LinkedStorageAccounts
+
+- [CreateOrUpdate](#linkedstorageaccounts_createorupdate)
+- [Delete](#linkedstorageaccounts_delete)
+- [Get](#linkedstorageaccounts_get)
+- [ListByWorkspace](#linkedstorageaccounts_listbyworkspace)
+
+## ManagementGroups
+
+- [List](#managementgroups_list)
+
+## OperationStatuses
+
+- [Get](#operationstatuses_get)
+
+## Operations
+
+- [List](#operations_list)
+
+## Queries
+
+- [Delete](#queries_delete)
+- [Get](#queries_get)
+- [List](#queries_list)
+- [Put](#queries_put)
+- [Search](#queries_search)
+- [Update](#queries_update)
+
+## QueryPacks
+
+- [CreateOrUpdate](#querypacks_createorupdate)
+- [Delete](#querypacks_delete)
+- [GetByResourceGroup](#querypacks_getbyresourcegroup)
+- [List](#querypacks_list)
+- [ListByResourceGroup](#querypacks_listbyresourcegroup)
+- [UpdateTags](#querypacks_updatetags)
+
+## SavedSearches
+
+- [CreateOrUpdate](#savedsearches_createorupdate)
+- [Delete](#savedsearches_delete)
+- [Get](#savedsearches_get)
+- [ListByWorkspace](#savedsearches_listbyworkspace)
+
+## Schema
+
+- [Get](#schema_get)
+
+## SharedKeysOperation
+
+- [GetSharedKeys](#sharedkeysoperation_getsharedkeys)
+- [Regenerate](#sharedkeysoperation_regenerate)
+
+## StorageInsightConfigs
+
+- [CreateOrUpdate](#storageinsightconfigs_createorupdate)
+- [Delete](#storageinsightconfigs_delete)
+- [Get](#storageinsightconfigs_get)
+- [ListByWorkspace](#storageinsightconfigs_listbyworkspace)
+
+## Tables
+
+- [CreateOrUpdate](#tables_createorupdate)
+- [Delete](#tables_delete)
+- [Get](#tables_get)
+- [ListByWorkspace](#tables_listbyworkspace)
+- [Migrate](#tables_migrate)
+- [Update](#tables_update)
+
+## Usages
+
+- [List](#usages_list)
+
+## WorkspacePurge
+
+- [GetPurgeStatus](#workspacepurge_getpurgestatus)
+- [Purge](#workspacepurge_purge)
+
+## Workspaces
+
+- [CreateOrUpdate](#workspaces_createorupdate)
+- [Delete](#workspaces_delete)
+- [GetByResourceGroup](#workspaces_getbyresourcegroup)
+- [List](#workspaces_list)
+- [ListByResourceGroup](#workspaces_listbyresourcegroup)
+- [Update](#workspaces_update)
+### AvailableServiceTiers_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for AvailableServiceTiers ListByWorkspace. */
+public final class AvailableServiceTiersListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesAvailableServiceTiers.json
+     */
+    /**
+     * Sample code: AvailableServiceTiers.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void availableServiceTiers(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.availableServiceTiers().listByWorkspaceWithResponse("rg1", "workspace1", Context.NONE);
+    }
+}
+```
+
+### Clusters_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.Capacity;
+import com.azure.resourcemanager.loganalytics.models.ClusterSku;
+import com.azure.resourcemanager.loganalytics.models.ClusterSkuNameEnum;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Clusters CreateOrUpdate. */
+public final class ClustersCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersCreate.json
+     */
+    /**
+     * Sample code: ClustersCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .clusters()
+            .define("oiautorest6685")
+            .withRegion("australiasoutheast")
+            .withExistingResourceGroup("oiautorest6685")
+            .withTags(mapOf("tag1", "val1"))
+            .withSku(
+                new ClusterSku()
+                    .withCapacity(Capacity.ONE_ZERO_ZERO_ZERO)
+                    .withName(ClusterSkuNameEnum.CAPACITY_RESERVATION))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### Clusters_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Clusters Delete. */
+public final class ClustersDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersDelete.json
+     */
+    /**
+     * Sample code: ClustersDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().delete("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Clusters_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Clusters GetByResourceGroup. */
+public final class ClustersGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersGet.json
+     */
+    /**
+     * Sample code: ClustersGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Clusters_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Clusters List. */
+public final class ClustersListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersSubscriptionList.json
+     */
+    /**
+     * Sample code: ClustersSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().list(Context.NONE);
+    }
+}
+```
+
+### Clusters_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Clusters ListByResourceGroup. */
+public final class ClustersListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersListByResourceGroup.json
+     */
+    /**
+     * Sample code: ClustersGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Clusters_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Capacity;
+import com.azure.resourcemanager.loganalytics.models.Cluster;
+import com.azure.resourcemanager.loganalytics.models.ClusterSku;
+import com.azure.resourcemanager.loganalytics.models.ClusterSkuNameEnum;
+import com.azure.resourcemanager.loganalytics.models.Identity;
+import com.azure.resourcemanager.loganalytics.models.IdentityType;
+import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
+import com.azure.resourcemanager.loganalytics.models.UserIdentityProperties;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Clusters Update. */
+public final class ClustersUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersUpdate.json
+     */
+    /**
+     * Sample code: ClustersPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Cluster resource =
+            manager
+                .clusters()
+                .getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withTags(mapOf("tag1", "val1"))
+            .withIdentity(
+                new Identity()
+                    .withType(IdentityType.USER_ASSIGNED)
+                    .withUserAssignedIdentities(
+                        mapOf(
+                            "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/oiautorest6685/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity",
+                            new UserIdentityProperties())))
+            .withSku(
+                new ClusterSku()
+                    .withCapacity(Capacity.ONE_ZERO_ZERO_ZERO)
+                    .withName(ClusterSkuNameEnum.CAPACITY_RESERVATION))
+            .withKeyVaultProperties(
+                new KeyVaultProperties()
+                    .withKeyVaultUri("https://aztest2170.vault.azure.net")
+                    .withKeyName("aztest2170cert")
+                    .withKeyVersion("654ft6c4e63845cbb50fd6fg51540429")
+                    .withKeyRsaSize(1024))
+            .apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### DataExports_CreateOrUpdate
+
+```java
+import java.util.Arrays;
+
+/** Samples for DataExports CreateOrUpdate. */
+public final class DataExportsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportCreateOrUpdate.json
+     */
+    /**
+     * Sample code: DataExportCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .dataExports()
+            .define("export1")
+            .withExistingWorkspace("RgTest1", "DeWnTest1234")
+            .withTableNames(Arrays.asList("Heartbeat"))
+            .withResourceId(
+                "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test")
+            .create();
+    }
+}
+```
+
+### DataExports_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataExports Delete. */
+public final class DataExportsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportDelete.json
+     */
+    /**
+     * Sample code: DataExportDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().deleteWithResponse("RgTest1", "DeWnTest1234", "export1", Context.NONE);
+    }
+}
+```
+
+### DataExports_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataExports Get. */
+public final class DataExportsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportGet.json
+     */
+    /**
+     * Sample code: DataExportGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().getWithResponse("RgTest1", "DeWnTest1234", "export1", Context.NONE);
+    }
+}
+```
+
+### DataExports_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataExports ListByWorkspace. */
+public final class DataExportsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportListByWorkspace.json
+     */
+    /**
+     * Sample code: DataExportGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().listByWorkspace("RgTest1", "DeWnTest1234", Context.NONE);
+    }
+}
+```
+
+### DataSources_CreateOrUpdate
+
+```java
+import com.azure.core.management.serializer.SerializerFactory;
+import com.azure.core.util.serializer.SerializerEncoding;
+import com.azure.resourcemanager.loganalytics.models.DataSourceKind;
+import java.io.IOException;
+
+/** Samples for DataSources CreateOrUpdate. */
+public final class DataSourcesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesCreate.json
+     */
+    /**
+     * Sample code: DataSourcesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager)
+        throws IOException {
+        manager
+            .dataSources()
+            .define("AzTestDS774")
+            .withExistingWorkspace("OIAutoRest5123", "AzTest9724")
+            .withProperties(
+                SerializerFactory
+                    .createDefaultManagementSerializerAdapter()
+                    .deserialize(
+                        "{\"LinkedResourceId\":\"/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management\"}",
+                        Object.class,
+                        SerializerEncoding.JSON))
+            .withKind(DataSourceKind.AZURE_ACTIVITY_LOG)
+            .create();
+    }
+}
+```
+
+### DataSources_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataSources Delete. */
+public final class DataSourcesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesDelete.json
+     */
+    /**
+     * Sample code: DataSourcesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataSources().deleteWithResponse("OIAutoRest5123", "AzTest9724", "AzTestDS774", Context.NONE);
+    }
+}
+```
+
+### DataSources_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataSources Get. */
+public final class DataSourcesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesGet.json
+     */
+    /**
+     * Sample code: DataSourcesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataSources().getWithResponse("OIAutoRest5123", "AzTest9724", "AzTestDS774", Context.NONE);
+    }
+}
+```
+
+### DataSources_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DataSources ListByWorkspace. */
+public final class DataSourcesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesListByWorkspace.json
+     */
+    /**
+     * Sample code: DataSourcesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesListByWorkspace(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .dataSources()
+            .listByWorkspace("OIAutoRest5123", "AzTest9724", "kind='WindowsEvent'", null, Context.NONE);
+    }
+}
+```
+
+### DeletedWorkspaces_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DeletedWorkspaces List. */
+public final class DeletedWorkspacesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesSubscriptionList.json
+     */
+    /**
+     * Sample code: WorkspacesSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.deletedWorkspaces().list(Context.NONE);
+    }
+}
+```
+
+### DeletedWorkspaces_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for DeletedWorkspaces ListByResourceGroup. */
+public final class DeletedWorkspacesListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesListByResourceGroup.json
+     */
+    /**
+     * Sample code: WorkspacesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.deletedWorkspaces().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Gateways_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Gateways Delete. */
+public final class GatewaysDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesGatewaysDelete.json
+     */
+    /**
+     * Sample code: DeleteGateways.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void deleteGateways(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .gateways()
+            .deleteWithResponse("OIAutoRest5123", "aztest5048", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
+```
+
+### IntelligencePacks_Disable
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks Disable. */
+public final class IntelligencePacksDisableSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesDisableIntelligencePack.json
+     */
+    /**
+     * Sample code: IntelligencePacksDisable.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksDisable(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().disableWithResponse("rg1", "TestLinkWS", "ChangeTracking", Context.NONE);
+    }
+}
+```
+
+### IntelligencePacks_Enable
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks Enable. */
+public final class IntelligencePacksEnableSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesEnableIntelligencePack.json
+     */
+    /**
+     * Sample code: IntelligencePacksEnable.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksEnable(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().enableWithResponse("rg1", "TestLinkWS", "ChangeTracking", Context.NONE);
+    }
+}
+```
+
+### IntelligencePacks_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks List. */
+public final class IntelligencePacksListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListIntelligencePacks.json
+     */
+    /**
+     * Sample code: IntelligencePacksList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().listWithResponse("rg1", "TestLinkWS", Context.NONE);
+    }
+}
+```
+
+### LinkedServices_CreateOrUpdate
+
+```java
+/** Samples for LinkedServices CreateOrUpdate. */
+public final class LinkedServicesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesCreate.json
+     */
+    /**
+     * Sample code: LinkedServicesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedServices()
+            .define("Cluster")
+            .withExistingWorkspace("mms-eus", "TestLinkWS")
+            .withWriteAccessResourceId(
+                "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster")
+            .create();
+    }
+}
+```
+
+### LinkedServices_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices Delete. */
+public final class LinkedServicesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesDelete.json
+     */
+    /**
+     * Sample code: LinkedServicesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().delete("rg1", "TestLinkWS", "Cluster", Context.NONE);
+    }
+}
+```
+
+### LinkedServices_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices Get. */
+public final class LinkedServicesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesGet.json
+     */
+    /**
+     * Sample code: LinkedServicesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().getWithResponse("mms-eus", "TestLinkWS", "Cluster", Context.NONE);
+    }
+}
+```
+
+### LinkedServices_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices ListByWorkspace. */
+public final class LinkedServicesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesListByWorkspace.json
+     */
+    /**
+     * Sample code: LinkedServicesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesListByWorkspace(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().listByWorkspace("mms-eus", "TestLinkWS", Context.NONE);
+    }
+}
+```
+
+### LinkedStorageAccounts_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+import java.util.Arrays;
+
+/** Samples for LinkedStorageAccounts CreateOrUpdate. */
+public final class LinkedStorageAccountsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsCreate.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .define(DataSourceType.CUSTOM_LOGS)
+            .withExistingWorkspace("mms-eus", "testLinkStorageAccountsWS")
+            .withStorageAccountIds(
+                Arrays
+                    .asList(
+                        "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA",
+                        "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB"))
+            .create();
+    }
+}
+```
+
+### LinkedStorageAccounts_Delete
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+
+/** Samples for LinkedStorageAccounts Delete. */
+public final class LinkedStorageAccountsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsDelete.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .deleteWithResponse("mms-eus", "testLinkStorageAccountsWS", DataSourceType.CUSTOM_LOGS, Context.NONE);
+    }
+}
+```
+
+### LinkedStorageAccounts_Get
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+
+/** Samples for LinkedStorageAccounts Get. */
+public final class LinkedStorageAccountsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsGet.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .getWithResponse("mms-eus", "testLinkStorageAccountsWS", DataSourceType.CUSTOM_LOGS, Context.NONE);
+    }
+}
+```
+
+### LinkedStorageAccounts_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LinkedStorageAccounts ListByWorkspace. */
+public final class LinkedStorageAccountsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsListByWorkspace.json
+     */
+    /**
+     * Sample code: Gets list of linked storage accounts on a workspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getsListOfLinkedStorageAccountsOnAWorkspace(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedStorageAccounts().listByWorkspace("mms-eus", "testLinkStorageAccountsWS", Context.NONE);
+    }
+}
+```
+
+### ManagementGroups_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ManagementGroups List. */
+public final class ManagementGroupsListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListManagementGroups.json
+     */
+    /**
+     * Sample code: WorkspacesListManagementGroups.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesListManagementGroups(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.managementGroups().list("rg1", "TestLinkWS", Context.NONE);
+    }
+}
+```
+
+### OperationStatuses_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationStatuses Get. */
+public final class OperationStatusesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/OperationStatusesGet.json
+     */
+    /**
+     * Sample code: Get specific operation status.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getSpecificOperationStatus(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.operationStatuses().getWithResponse("West US", "713192d7-503f-477a-9cfe-4efc3ee2bd11", Context.NONE);
+    }
+}
+```
+
+### Operations_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Operations List. */
+public final class OperationsListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/OperationsListByTenant.json
+     */
+    /**
+     * Sample code: Get specific operation status.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getSpecificOperationStatus(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.operations().list(Context.NONE);
+    }
+}
+```
+
+### Queries_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Queries Delete. */
+public final class QueriesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesDelete.json
+     */
+    /**
+     * Sample code: QueryDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .deleteWithResponse(
+                "my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE);
+    }
+}
+```
+
+### Queries_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Queries Get. */
+public final class QueriesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesGet.json
+     */
+    /**
+     * Sample code: QueryGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .getWithResponse("my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE);
+    }
+}
+```
+
+### Queries_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Queries List. */
+public final class QueriesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesList.json
+     */
+    /**
+     * Sample code: QueryList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queries().list("my-resource-group", "my-querypack", null, true, null, Context.NONE);
+    }
+}
+```
+
+### Queries_Put
+
+```java
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Put. */
+public final class QueriesPutSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesPut.json
+     */
+    /**
+     * Sample code: QueryPut.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPut(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .define("a449f8af-8e64-4b3a-9b16-5a7165ff98c4")
+            .withExistingQueryPack("my-resource-group", "my-querypack")
+            .withTags(mapOf("my-label", Arrays.asList("label1"), "my-other-label", Arrays.asList("label2")))
+            .withDisplayName("Exceptions - New in the last 24 hours")
+            .withDescription("my description")
+            .withBody(
+                "let newExceptionsTimeRange = 1d;\n"
+                    + "let timeRangeToCheckBefore = 7d;\n"
+                    + "exceptions\n"
+                    + "| where timestamp < ago(timeRangeToCheckBefore)\n"
+                    + "| summarize count() by problemId\n"
+                    + "| join kind= rightanti (\n"
+                    + "exceptions\n"
+                    + "| where timestamp >= ago(newExceptionsTimeRange)\n"
+                    + "| extend stack = tostring(details[0].rawStack)\n"
+                    + "| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by"
+                    + " problemId  \n"
+                    + ") on problemId \n"
+                    + "| order by  count_ desc\n")
+            .withRelated(new LogAnalyticsQueryPackQueryPropertiesRelated().withCategories(Arrays.asList("analytics")))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### Queries_Search
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchProperties;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Search. */
+public final class QueriesSearchSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesSearch.json
+     */
+    /**
+     * Sample code: QuerySearch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void querySearch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .search(
+                "my-resource-group",
+                "my-querypack",
+                new LogAnalyticsQueryPackQuerySearchProperties()
+                    .withRelated(
+                        new LogAnalyticsQueryPackQuerySearchPropertiesRelated()
+                            .withCategories(Arrays.asList("other", "analytics")))
+                    .withTags(mapOf("my-label", Arrays.asList("label1"))),
+                3L,
+                true,
+                null,
+                Context.NONE);
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### Queries_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuery;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Update. */
+public final class QueriesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesUpdate.json
+     */
+    /**
+     * Sample code: QueryPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        LogAnalyticsQueryPackQuery resource =
+            manager
+                .queries()
+                .getWithResponse(
+                    "my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withTags(mapOf("my-label", Arrays.asList("label1"), "my-other-label", Arrays.asList("label2")))
+            .withDisplayName("Exceptions - New in the last 24 hours")
+            .withDescription("my description")
+            .withBody(
+                "let newExceptionsTimeRange = 1d;\n"
+                    + "let timeRangeToCheckBefore = 7d;\n"
+                    + "exceptions\n"
+                    + "| where timestamp < ago(timeRangeToCheckBefore)\n"
+                    + "| summarize count() by problemId\n"
+                    + "| join kind= rightanti (\n"
+                    + "exceptions\n"
+                    + "| where timestamp >= ago(newExceptionsTimeRange)\n"
+                    + "| extend stack = tostring(details[0].rawStack)\n"
+                    + "| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by"
+                    + " problemId  \n"
+                    + ") on problemId \n"
+                    + "| order by  count_ desc\n")
+            .withRelated(new LogAnalyticsQueryPackQueryPropertiesRelated().withCategories(Arrays.asList("analytics")))
+            .apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### QueryPacks_CreateOrUpdate
+
+```java
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for QueryPacks CreateOrUpdate. */
+public final class QueryPacksCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksCreate.json
+     */
+    /**
+     * Sample code: QueryPackCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queryPacks()
+            .define("my-querypack")
+            .withRegion("South Central US")
+            .withExistingResourceGroup("my-resource-group")
+            .create();
+    }
+
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksUpdate.json
+     */
+    /**
+     * Sample code: QueryPackUpdate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackUpdate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queryPacks()
+            .define("my-querypack")
+            .withRegion("South Central US")
+            .withExistingResourceGroup("my-resource-group")
+            .withTags(mapOf("Tag1", "Value1"))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### QueryPacks_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks Delete. */
+public final class QueryPacksDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksDelete.json
+     */
+    /**
+     * Sample code: QueryPacksDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPacksDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().deleteWithResponse("my-resource-group", "my-querypack", Context.NONE);
+    }
+}
+```
+
+### QueryPacks_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks GetByResourceGroup. */
+public final class QueryPacksGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksGet.json
+     */
+    /**
+     * Sample code: QueryPackGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().getByResourceGroupWithResponse("my-resource-group", "my-querypack", Context.NONE);
+    }
+}
+```
+
+### QueryPacks_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks List. */
+public final class QueryPacksListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksList.json
+     */
+    /**
+     * Sample code: QueryPacksList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPacksList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().list(Context.NONE);
+    }
+}
+```
+
+### QueryPacks_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks ListByResourceGroup. */
+public final class QueryPacksListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksListByResourceGroup.json
+     */
+    /**
+     * Sample code: QueryPackListByResourceGroup.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackListByResourceGroup(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().listByResourceGroup("my-resource-group", Context.NONE);
+    }
+}
+```
+
+### QueryPacks_UpdateTags
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPack;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for QueryPacks UpdateTags. */
+public final class QueryPacksUpdateTagsSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksUpdateTagsOnly.json
+     */
+    /**
+     * Sample code: QueryPackUpdateTagsOnly.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackUpdateTagsOnly(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        LogAnalyticsQueryPack resource =
+            manager
+                .queryPacks()
+                .getByResourceGroupWithResponse("my-resource-group", "my-querypack", Context.NONE)
+                .getValue();
+        resource.update().withTags(mapOf("Tag1", "Value1", "Tag2", "Value2")).apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### SavedSearches_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.Tag;
+import java.util.Arrays;
+
+/** Samples for SavedSearches CreateOrUpdate. */
+public final class SavedSearchesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesSavedSearchesCreateOrUpdate.json
+     */
+    /**
+     * Sample code: SavedSearchCreateOrUpdate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchCreateOrUpdate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .define("00000000-0000-0000-0000-00000000000")
+            .withExistingWorkspace("TestRG", "TestWS")
+            .withCategory("Saved Search Test Category")
+            .withDisplayName("Create or Update Saved Search Test")
+            .withQuery("Heartbeat | summarize Count() by Computer | take a")
+            .withTags(Arrays.asList(new Tag().withName("Group").withValue("Computer")))
+            .withFunctionAlias("heartbeat_func")
+            .withFunctionParameters("a:int=1")
+            .withVersion(2L)
+            .create();
+    }
+}
+```
+
+### SavedSearches_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches Delete. */
+public final class SavedSearchesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesDeleteSavedSearches.json
+     */
+    /**
+     * Sample code: SavedSearchesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .deleteWithResponse("TestRG", "TestWS", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
+```
+
+### SavedSearches_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches Get. */
+public final class SavedSearchesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesSavedSearchesGet.json
+     */
+    /**
+     * Sample code: SavedSearchesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .getWithResponse("TestRG", "TestWS", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
+```
+
+### SavedSearches_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches ListByWorkspace. */
+public final class SavedSearchesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/SavedSearchesListByWorkspace.json
+     */
+    /**
+     * Sample code: SavedSearchesList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.savedSearches().listByWorkspaceWithResponse("TestRG", "TestWS", Context.NONE);
+    }
+}
+```
+
+### Schema_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Schema Get. */
+public final class SchemaGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/SavedSearchesGetSchema.json
+     */
+    /**
+     * Sample code: WorkspacesGetSchema.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGetSchema(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.schemas().getWithResponse("mms-eus", "atlantisdemo", Context.NONE);
+    }
+}
+```
+
+### SharedKeysOperation_GetSharedKeys
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SharedKeysOperation GetSharedKeys. */
+public final class SharedKeysOperationGetSharedKeysSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesGetSharedKeys.json
+     */
+    /**
+     * Sample code: SharedKeysList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void sharedKeysList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.sharedKeysOperations().getSharedKeysWithResponse("rg1", "TestLinkWS", Context.NONE);
+    }
+}
+```
+
+### SharedKeysOperation_Regenerate
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SharedKeysOperation Regenerate. */
+public final class SharedKeysOperationRegenerateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesRegenerateSharedKeys.json
+     */
+    /**
+     * Sample code: RegenerateSharedKeys.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void regenerateSharedKeys(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.sharedKeysOperations().regenerateWithResponse("rg1", "workspace1", Context.NONE);
+    }
+}
+```
+
+### StorageInsightConfigs_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.StorageAccount;
+import java.util.Arrays;
+
+/** Samples for StorageInsightConfigs CreateOrUpdate. */
+public final class StorageInsightConfigsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsCreateOrUpdate.json
+     */
+    /**
+     * Sample code: StorageInsightsCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .storageInsightConfigs()
+            .define("AzTestSI1110")
+            .withExistingWorkspace("OIAutoRest5123", "aztest5048")
+            .withContainers(Arrays.asList("wad-iis-logfiles"))
+            .withTables(Arrays.asList("WADWindowsEventLogsTable", "LinuxSyslogVer2v0"))
+            .withStorageAccount(
+                new StorageAccount()
+                    .withId(
+                        "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945")
+                    .withKey("1234"))
+            .create();
+    }
+}
+```
+
+### StorageInsightConfigs_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs Delete. */
+public final class StorageInsightConfigsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsDelete.json
+     */
+    /**
+     * Sample code: StorageInsightsDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .storageInsightConfigs()
+            .deleteWithResponse("OIAutoRest5123", "aztest5048", "AzTestSI1110", Context.NONE);
+    }
+}
+```
+
+### StorageInsightConfigs_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs Get. */
+public final class StorageInsightConfigsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsGet.json
+     */
+    /**
+     * Sample code: StorageInsightsGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.storageInsightConfigs().getWithResponse("OIAutoRest5123", "aztest5048", "AzTestSI1110", Context.NONE);
+    }
+}
+```
+
+### StorageInsightConfigs_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs ListByWorkspace. */
+public final class StorageInsightConfigsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsListByWorkspace.json
+     */
+    /**
+     * Sample code: StorageInsightsList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.storageInsightConfigs().listByWorkspace("OIAutoRest5123", "aztest5048", Context.NONE);
+    }
+}
+```
+
+### Tables_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.Column;
+import com.azure.resourcemanager.loganalytics.models.ColumnTypeEnum;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import java.util.Arrays;
+
+/** Samples for Tables CreateOrUpdate. */
+public final class TablesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesUpsert.json
+     */
+    /**
+     * Sample code: TablesUpsert.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesUpsert(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .tables()
+            .define("AzureNetworkFlow")
+            .withExistingWorkspace("oiautorest6685", "oiautorest6685")
+            .withRetentionInDays(45)
+            .withTotalRetentionInDays(70)
+            .withSchema(
+                new Schema()
+                    .withName("AzureNetworkFlow")
+                    .withColumns(Arrays.asList(new Column().withName("MyNewColumn").withType(ColumnTypeEnum.GUID))))
+            .create();
+    }
+}
+```
+
+### Tables_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tables Delete. */
+public final class TablesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesDelete.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().delete("oiautorest6685", "oiautorest6685", "table1_CL", Context.NONE);
+    }
+}
+```
+
+### Tables_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tables Get. */
+public final class TablesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesGet.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().getWithResponse("oiautorest6685", "oiautorest6685", "table1_SRCH", Context.NONE);
+    }
+}
+```
+
+### Tables_ListByWorkspace
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tables ListByWorkspace. */
+public final class TablesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesList.json
+     */
+    /**
+     * Sample code: TablesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesListByWorkspace(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().listByWorkspace("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Tables_Migrate
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Tables Migrate. */
+public final class TablesMigrateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesMigrate.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().migrateWithResponse("oiautorest6685", "oiautorest6685", "table1_CL", Context.NONE);
+    }
+}
+```
+
+### Tables_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Column;
+import com.azure.resourcemanager.loganalytics.models.ColumnTypeEnum;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import com.azure.resourcemanager.loganalytics.models.Table;
+import java.util.Arrays;
+
+/** Samples for Tables Update. */
+public final class TablesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesUpsert.json
+     */
+    /**
+     * Sample code: TablesUpsert.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesUpsert(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Table resource =
+            manager
+                .tables()
+                .getWithResponse("oiautorest6685", "oiautorest6685", "AzureNetworkFlow", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withRetentionInDays(45)
+            .withTotalRetentionInDays(70)
+            .withSchema(
+                new Schema()
+                    .withName("AzureNetworkFlow")
+                    .withColumns(Arrays.asList(new Column().withName("MyNewColumn").withType(ColumnTypeEnum.GUID))))
+            .apply();
+    }
+}
+```
+
+### Usages_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Usages List. */
+public final class UsagesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListUsages.json
+     */
+    /**
+     * Sample code: UsagesList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void usagesList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.usages().list("rg1", "TestLinkWS", Context.NONE);
+    }
+}
+```
+
+### WorkspacePurge_GetPurgeStatus
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for WorkspacePurge GetPurgeStatus. */
+public final class WorkspacePurgeGetPurgeStatusSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesPurgeOperation.json
+     */
+    /**
+     * Sample code: WorkspacePurgeOperation.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacePurgeOperation(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspacePurges()
+            .getPurgeStatusWithResponse(
+                "OIAutoRest5123", "aztest5048", "purge-970318e7-b859-4edb-8903-83b1b54d0b74", Context.NONE);
+    }
+}
+```
+
+### WorkspacePurge_Purge
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.WorkspacePurgeBody;
+import com.azure.resourcemanager.loganalytics.models.WorkspacePurgeBodyFilters;
+import java.util.Arrays;
+
+/** Samples for WorkspacePurge Purge. */
+public final class WorkspacePurgePurgeSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesPurge.json
+     */
+    /**
+     * Sample code: WorkspacePurge.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacePurge(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspacePurges()
+            .purgeWithResponse(
+                "OIAutoRest5123",
+                "aztest5048",
+                new WorkspacePurgeBody()
+                    .withTable("Heartbeat")
+                    .withFilters(
+                        Arrays
+                            .asList(
+                                new WorkspacePurgeBodyFilters()
+                                    .withColumn("TimeGenerated")
+                                    .withOperator(">")
+                                    .withValue("2017-09-01T00:00:00"))),
+                Context.NONE);
+    }
+}
+```
+
+### Workspaces_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSkuNameEnum;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Workspaces CreateOrUpdate. */
+public final class WorkspacesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesCreate.json
+     */
+    /**
+     * Sample code: WorkspacesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspaces()
+            .define("oiautorest6685")
+            .withRegion("australiasoutheast")
+            .withExistingResourceGroup("oiautorest6685")
+            .withTags(mapOf("tag1", "val1"))
+            .withSku(new WorkspaceSku().withName(WorkspaceSkuNameEnum.PER_GB2018))
+            .withRetentionInDays(30)
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
+```
+
+### Workspaces_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces Delete. */
+public final class WorkspacesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesDelete.json
+     */
+    /**
+     * Sample code: WorkspacesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().delete("oiautorest6685", "oiautorest6685", null, Context.NONE);
+    }
+}
+```
+
+### Workspaces_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces GetByResourceGroup. */
+public final class WorkspacesGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesGet.json
+     */
+    /**
+     * Sample code: WorkspaceGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspaceGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Workspaces_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces List. */
+public final class WorkspacesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesSubscriptionList.json
+     */
+    /**
+     * Sample code: WorkspacesSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().list(Context.NONE);
+    }
+}
+```
+
+### Workspaces_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces ListByResourceGroup. */
+public final class WorkspacesListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesListByResourceGroup.json
+     */
+    /**
+     * Sample code: WorkspacesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
+```
+
+### Workspaces_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Workspace;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceCapping;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSkuNameEnum;
+
+/** Samples for Workspaces Update. */
+public final class WorkspacesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesUpdate.json
+     */
+    /**
+     * Sample code: WorkspacesPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Workspace resource =
+            manager
+                .workspaces()
+                .getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withSku(new WorkspaceSku().withName(WorkspaceSkuNameEnum.PER_GB2018))
+            .withRetentionInDays(30)
+            .withWorkspaceCapping(new WorkspaceCapping().withDailyQuotaGb(-1.0))
+            .apply();
+    }
+}
+```
+
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/pom.xml b/sdk/loganalytics/azure-resourcemanager-loganalytics/pom.xml
index cb7af704099cd..5329c7a17bcc3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/pom.xml
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/pom.xml
@@ -1,55 +1,55 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>com.azure</groupId>
-        <artifactId>azure-client-sdk-parent</artifactId>
-        <version>1.7.0</version> <!-- {x-version-update;com.azure:azure-client-sdk-parent;current} -->
-        <relativePath>../../parents/azure-client-sdk-parent</relativePath>
-    </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>com.azure</groupId>
+    <artifactId>azure-client-sdk-parent</artifactId>
+    <version>1.7.0</version> <!-- {x-version-update;com.azure:azure-client-sdk-parent;current} -->
+    <relativePath>../../parents/azure-client-sdk-parent</relativePath>
+  </parent>
 
-    <groupId>com.azure.resourcemanager</groupId>
-    <artifactId>azure-resourcemanager-loganalytics</artifactId>
-    <version>1.0.0-beta.3</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-loganalytics;current} -->
-    <packaging>jar</packaging>
+  <groupId>com.azure.resourcemanager</groupId>
+  <artifactId>azure-resourcemanager-loganalytics</artifactId>
+  <version>1.0.0-beta.3</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-loganalytics;current} -->
+  <packaging>jar</packaging>
 
-    <name>Microsoft Azure SDK for LogAnalytics Management</name>
-    <description>This package contains Microsoft Azure SDK for LogAnalytics Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Operational Insights Client. Package tag package-2020-08.</description>
-    <url>https://github.com/Azure/azure-sdk-for-java</url>
+  <name>Microsoft Azure SDK for LogAnalytics Management</name>
+  <description>This package contains Microsoft Azure SDK for LogAnalytics Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Operational Insights Client. Package tag package-2022-02.</description>
+  <url>https://github.com/Azure/azure-sdk-for-java</url>
 
-    <licenses>
-        <license>
-            <name>The MIT License (MIT)</name>
-            <url>http://opensource.org/licenses/MIT</url>
-            <distribution>repo</distribution>
-        </license>
-    </licenses>
+  <licenses>
+    <license>
+      <name>The MIT License (MIT)</name>
+      <url>http://opensource.org/licenses/MIT</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
 
-    <scm>
-        <url>https://github.com/Azure/azure-sdk-for-java</url>
-        <connection>scm:git:git@github.com:Azure/azure-sdk-for-java.git</connection>
-        <developerConnection>scm:git:git@github.com:Azure/azure-sdk-for-java.git</developerConnection>
-        <tag>HEAD</tag>
-    </scm>
-    <developers>
-        <developer>
-            <id>microsoft</id>
-            <name>Microsoft</name>
-        </developer>
-    </developers>
-    <properties>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <jacoco.skip>true</jacoco.skip>
-    </properties>
-    <dependencies>
-        <dependency>
-            <groupId>com.azure</groupId>
-            <artifactId>azure-core</artifactId>
-            <version>1.27.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
-        </dependency>
-        <dependency>
-            <groupId>com.azure</groupId>
-            <artifactId>azure-core-management</artifactId>
-            <version>1.5.4</version> <!-- {x-version-update;com.azure:azure-core-management;dependency} -->
-        </dependency>
-    </dependencies>
+  <scm>
+    <url>https://github.com/Azure/azure-sdk-for-java</url>
+    <connection>scm:git:git@github.com:Azure/azure-sdk-for-java.git</connection>
+    <developerConnection>scm:git:git@github.com:Azure/azure-sdk-for-java.git</developerConnection>
+    <tag>HEAD</tag>
+  </scm>
+  <developers>
+    <developer>
+      <id>microsoft</id>
+      <name>Microsoft</name>
+    </developer>
+  </developers>
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <jacoco.skip>true</jacoco.skip>
+  </properties>
+  <dependencies>
+    <dependency>
+      <groupId>com.azure</groupId>
+      <artifactId>azure-core</artifactId>
+      <version>1.27.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
+    </dependency>
+    <dependency>
+      <groupId>com.azure</groupId>
+      <artifactId>azure-core-management</artifactId>
+      <version>1.5.4</version> <!-- {x-version-update;com.azure:azure-core-management;dependency} -->
+    </dependency>
+  </dependencies>
 </project>
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/LogAnalyticsManager.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/LogAnalyticsManager.java
index 376975bad8cd4..f455cd5cb6a84 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/LogAnalyticsManager.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/LogAnalyticsManager.java
@@ -8,15 +8,18 @@
 import com.azure.core.http.HttpClient;
 import com.azure.core.http.HttpPipeline;
 import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
 import com.azure.core.http.policy.AddDatePolicy;
-import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
+import com.azure.core.http.policy.AddHeadersFromContextPolicy;
 import com.azure.core.http.policy.HttpLogOptions;
 import com.azure.core.http.policy.HttpLoggingPolicy;
 import com.azure.core.http.policy.HttpPipelinePolicy;
 import com.azure.core.http.policy.HttpPolicyProviders;
 import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryOptions;
 import com.azure.core.http.policy.RetryPolicy;
 import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
 import com.azure.core.management.profile.AzureProfile;
 import com.azure.core.util.Configuration;
 import com.azure.core.util.logging.ClientLogger;
@@ -34,6 +37,8 @@
 import com.azure.resourcemanager.loganalytics.implementation.OperationStatusesImpl;
 import com.azure.resourcemanager.loganalytics.implementation.OperationalInsightsManagementClientBuilder;
 import com.azure.resourcemanager.loganalytics.implementation.OperationsImpl;
+import com.azure.resourcemanager.loganalytics.implementation.QueriesImpl;
+import com.azure.resourcemanager.loganalytics.implementation.QueryPacksImpl;
 import com.azure.resourcemanager.loganalytics.implementation.SavedSearchesImpl;
 import com.azure.resourcemanager.loganalytics.implementation.SchemasImpl;
 import com.azure.resourcemanager.loganalytics.implementation.SharedKeysOperationsImpl;
@@ -54,6 +59,8 @@
 import com.azure.resourcemanager.loganalytics.models.ManagementGroups;
 import com.azure.resourcemanager.loganalytics.models.OperationStatuses;
 import com.azure.resourcemanager.loganalytics.models.Operations;
+import com.azure.resourcemanager.loganalytics.models.Queries;
+import com.azure.resourcemanager.loganalytics.models.QueryPacks;
 import com.azure.resourcemanager.loganalytics.models.SavedSearches;
 import com.azure.resourcemanager.loganalytics.models.Schemas;
 import com.azure.resourcemanager.loganalytics.models.SharedKeysOperations;
@@ -67,9 +74,14 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /** Entry point to LogAnalyticsManager. Operational Insights Client. */
 public final class LogAnalyticsManager {
+    private QueryPacks queryPacks;
+
+    private Queries queries;
+
     private DataExports dataExports;
 
     private DataSources dataSources;
@@ -82,20 +94,12 @@ public final class LogAnalyticsManager {
 
     private ManagementGroups managementGroups;
 
-    private Operations operations;
-
     private OperationStatuses operationStatuses;
 
     private SharedKeysOperations sharedKeysOperations;
 
     private Usages usages;
 
-    private Workspaces workspaces;
-
-    private DeletedWorkspaces deletedWorkspaces;
-
-    private Clusters clusters;
-
     private StorageInsightConfigs storageInsightConfigs;
 
     private SavedSearches savedSearches;
@@ -108,6 +112,14 @@ public final class LogAnalyticsManager {
 
     private WorkspacePurges workspacePurges;
 
+    private Clusters clusters;
+
+    private Operations operations;
+
+    private Workspaces workspaces;
+
+    private DeletedWorkspaces deletedWorkspaces;
+
     private Tables tables;
 
     private final OperationalInsightsManagementClient clientObject;
@@ -137,6 +149,19 @@ public static LogAnalyticsManager authenticate(TokenCredential credential, Azure
         return configure().authenticate(credential, profile);
     }
 
+    /**
+     * Creates an instance of LogAnalytics service API entry point.
+     *
+     * @param httpPipeline the {@link HttpPipeline} configured with Azure authentication credential.
+     * @param profile the Azure profile for client.
+     * @return the LogAnalytics service API instance.
+     */
+    public static LogAnalyticsManager authenticate(HttpPipeline httpPipeline, AzureProfile profile) {
+        Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
+        Objects.requireNonNull(profile, "'profile' cannot be null.");
+        return new LogAnalyticsManager(httpPipeline, profile, null);
+    }
+
     /**
      * Gets a Configurable instance that can be used to create LogAnalyticsManager with optional configuration.
      *
@@ -148,12 +173,14 @@ public static Configurable configure() {
 
     /** The Configurable allowing configurations to be set. */
     public static final class Configurable {
-        private final ClientLogger logger = new ClientLogger(Configurable.class);
+        private static final ClientLogger LOGGER = new ClientLogger(Configurable.class);
 
         private HttpClient httpClient;
         private HttpLogOptions httpLogOptions;
         private final List<HttpPipelinePolicy> policies = new ArrayList<>();
+        private final List<String> scopes = new ArrayList<>();
         private RetryPolicy retryPolicy;
+        private RetryOptions retryOptions;
         private Duration defaultPollInterval;
 
         private Configurable() {
@@ -192,6 +219,17 @@ public Configurable withPolicy(HttpPipelinePolicy policy) {
             return this;
         }
 
+        /**
+         * Adds the scope to permission sets.
+         *
+         * @param scope the scope.
+         * @return the configurable object itself.
+         */
+        public Configurable withScope(String scope) {
+            this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+            return this;
+        }
+
         /**
          * Sets the retry policy to the HTTP pipeline.
          *
@@ -203,6 +241,19 @@ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
             return this;
         }
 
+        /**
+         * Sets the retry options for the HTTP pipeline retry policy.
+         *
+         * <p>This setting has no effect, if retry policy is set via {@link #withRetryPolicy(RetryPolicy)}.
+         *
+         * @param retryOptions the retry options for the HTTP pipeline retry policy.
+         * @return the configurable object itself.
+         */
+        public Configurable withRetryOptions(RetryOptions retryOptions) {
+            this.retryOptions = Objects.requireNonNull(retryOptions, "'retryOptions' cannot be null.");
+            return this;
+        }
+
         /**
          * Sets the default poll interval, used when service does not provide "Retry-After" header.
          *
@@ -210,9 +261,11 @@ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
          * @return the configurable object itself.
          */
         public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
-            this.defaultPollInterval = Objects.requireNonNull(defaultPollInterval, "'retryPolicy' cannot be null.");
+            this.defaultPollInterval =
+                Objects.requireNonNull(defaultPollInterval, "'defaultPollInterval' cannot be null.");
             if (this.defaultPollInterval.isNegative()) {
-                throw logger.logExceptionAsError(new IllegalArgumentException("'httpPipeline' cannot be negative"));
+                throw LOGGER
+                    .logExceptionAsError(new IllegalArgumentException("'defaultPollInterval' cannot be negative"));
             }
             return this;
         }
@@ -234,7 +287,7 @@ public LogAnalyticsManager authenticate(TokenCredential credential, AzureProfile
                 .append("-")
                 .append("com.azure.resourcemanager.loganalytics")
                 .append("/")
-                .append("1.0.0-beta.2");
+                .append("1.0.0-beta.1");
             if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
                 userAgentBuilder
                     .append(" (")
@@ -248,19 +301,38 @@ public LogAnalyticsManager authenticate(TokenCredential credential, AzureProfile
                 userAgentBuilder.append(" (auto-generated)");
             }
 
+            if (scopes.isEmpty()) {
+                scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+            }
             if (retryPolicy == null) {
-                retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+                if (retryOptions != null) {
+                    retryPolicy = new RetryPolicy(retryOptions);
+                } else {
+                    retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+                }
             }
             List<HttpPipelinePolicy> policies = new ArrayList<>();
             policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+            policies.add(new AddHeadersFromContextPolicy());
             policies.add(new RequestIdPolicy());
+            policies
+                .addAll(
+                    this
+                        .policies
+                        .stream()
+                        .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+                        .collect(Collectors.toList()));
             HttpPolicyProviders.addBeforeRetryPolicies(policies);
             policies.add(retryPolicy);
             policies.add(new AddDatePolicy());
+            policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
             policies
-                .add(
-                    new BearerTokenAuthenticationPolicy(
-                        credential, profile.getEnvironment().getManagementEndpoint() + "/.default"));
+                .addAll(
+                    this
+                        .policies
+                        .stream()
+                        .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+                        .collect(Collectors.toList()));
             HttpPolicyProviders.addAfterRetryPolicies(policies);
             policies.add(new HttpLoggingPolicy(httpLogOptions));
             HttpPipeline httpPipeline =
@@ -272,6 +344,22 @@ public LogAnalyticsManager authenticate(TokenCredential credential, AzureProfile
         }
     }
 
+    /** @return Resource collection API of QueryPacks. */
+    public QueryPacks queryPacks() {
+        if (this.queryPacks == null) {
+            this.queryPacks = new QueryPacksImpl(clientObject.getQueryPacks(), this);
+        }
+        return queryPacks;
+    }
+
+    /** @return Resource collection API of Queries. */
+    public Queries queries() {
+        if (this.queries == null) {
+            this.queries = new QueriesImpl(clientObject.getQueries(), this);
+        }
+        return queries;
+    }
+
     /** @return Resource collection API of DataExports. */
     public DataExports dataExports() {
         if (this.dataExports == null) {
@@ -320,14 +408,6 @@ public ManagementGroups managementGroups() {
         return managementGroups;
     }
 
-    /** @return Resource collection API of Operations. */
-    public Operations operations() {
-        if (this.operations == null) {
-            this.operations = new OperationsImpl(clientObject.getOperations(), this);
-        }
-        return operations;
-    }
-
     /** @return Resource collection API of OperationStatuses. */
     public OperationStatuses operationStatuses() {
         if (this.operationStatuses == null) {
@@ -352,30 +432,6 @@ public Usages usages() {
         return usages;
     }
 
-    /** @return Resource collection API of Workspaces. */
-    public Workspaces workspaces() {
-        if (this.workspaces == null) {
-            this.workspaces = new WorkspacesImpl(clientObject.getWorkspaces(), this);
-        }
-        return workspaces;
-    }
-
-    /** @return Resource collection API of DeletedWorkspaces. */
-    public DeletedWorkspaces deletedWorkspaces() {
-        if (this.deletedWorkspaces == null) {
-            this.deletedWorkspaces = new DeletedWorkspacesImpl(clientObject.getDeletedWorkspaces(), this);
-        }
-        return deletedWorkspaces;
-    }
-
-    /** @return Resource collection API of Clusters. */
-    public Clusters clusters() {
-        if (this.clusters == null) {
-            this.clusters = new ClustersImpl(clientObject.getClusters(), this);
-        }
-        return clusters;
-    }
-
     /** @return Resource collection API of StorageInsightConfigs. */
     public StorageInsightConfigs storageInsightConfigs() {
         if (this.storageInsightConfigs == null) {
@@ -424,6 +480,38 @@ public WorkspacePurges workspacePurges() {
         return workspacePurges;
     }
 
+    /** @return Resource collection API of Clusters. */
+    public Clusters clusters() {
+        if (this.clusters == null) {
+            this.clusters = new ClustersImpl(clientObject.getClusters(), this);
+        }
+        return clusters;
+    }
+
+    /** @return Resource collection API of Operations. */
+    public Operations operations() {
+        if (this.operations == null) {
+            this.operations = new OperationsImpl(clientObject.getOperations(), this);
+        }
+        return operations;
+    }
+
+    /** @return Resource collection API of Workspaces. */
+    public Workspaces workspaces() {
+        if (this.workspaces == null) {
+            this.workspaces = new WorkspacesImpl(clientObject.getWorkspaces(), this);
+        }
+        return workspaces;
+    }
+
+    /** @return Resource collection API of DeletedWorkspaces. */
+    public DeletedWorkspaces deletedWorkspaces() {
+        if (this.deletedWorkspaces == null) {
+            this.deletedWorkspaces = new DeletedWorkspacesImpl(clientObject.getDeletedWorkspaces(), this);
+        }
+        return deletedWorkspaces;
+    }
+
     /** @return Resource collection API of Tables. */
     public Tables tables() {
         if (this.tables == null) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/AvailableServiceTiersClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/AvailableServiceTiersClient.java
index 87da77ea34182..c6120a4bb8f97 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/AvailableServiceTiersClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/AvailableServiceTiersClient.java
@@ -35,7 +35,7 @@ public interface AvailableServiceTiersClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<List<AvailableServiceTierInner>> listByWorkspaceWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ClustersClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ClustersClient.java
index ea21003519bd9..c7df2eb352fad 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ClustersClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ClustersClient.java
@@ -23,7 +23,7 @@ public interface ClustersClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName);
@@ -36,7 +36,7 @@ public interface ClustersClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName, Context context);
@@ -46,7 +46,7 @@ public interface ClustersClient {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ClusterInner> list();
@@ -58,7 +58,7 @@ public interface ClustersClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ClusterInner> list(Context context);
@@ -72,9 +72,9 @@ public interface ClustersClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
         String resourceGroupName, String clusterName, ClusterInner parameters);
 
@@ -88,9 +88,9 @@ SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
         String resourceGroupName, String clusterName, ClusterInner parameters, Context context);
 
@@ -131,9 +131,9 @@ SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName, String clusterName);
 
     /**
@@ -145,9 +145,9 @@ SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName, String clusterName, Context context);
 
     /**
@@ -197,12 +197,43 @@ SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<ClusterInner> getByResourceGroupWithResponse(
         String resourceGroupName, String clusterName, Context context);
 
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<ClusterInner>, ClusterInner> beginUpdate(
+        String resourceGroupName, String clusterName, ClusterPatch parameters);
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<ClusterInner>, ClusterInner> beginUpdate(
+        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context);
+
     /**
      * Updates a Log Analytics cluster.
      *
@@ -230,6 +261,5 @@ Response<ClusterInner> getByResourceGroupWithResponse(
      * @return the top level Log Analytics cluster resource container.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    Response<ClusterInner> updateWithResponse(
-        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context);
+    ClusterInner update(String resourceGroupName, String clusterName, ClusterPatch parameters, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataExportsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataExportsClient.java
index 909ceda84a3e1..94ec806731037 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataExportsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataExportsClient.java
@@ -21,7 +21,7 @@ public interface DataExportsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<DataExportInner> listByWorkspace(String resourceGroupName, String workspaceName);
@@ -35,7 +35,7 @@ public interface DataExportsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<DataExportInner> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
@@ -67,7 +67,7 @@ DataExportInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level data export resource container.
+     * @return the top level data export resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<DataExportInner> createOrUpdateWithResponse(
@@ -101,7 +101,7 @@ Response<DataExportInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<DataExportInner> getWithResponse(
@@ -130,7 +130,7 @@ Response<DataExportInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataSourcesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataSourcesClient.java
index 7136276001b8a..4971182048e54 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataSourcesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DataSourcesClient.java
@@ -40,7 +40,7 @@ DataSourceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return datasources under OMS Workspace.
+     * @return datasources under OMS Workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<DataSourceInner> createOrUpdateWithResponse(
@@ -73,7 +73,7 @@ Response<DataSourceInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
@@ -103,7 +103,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<DataSourceInner> getWithResponse(
@@ -118,7 +118,8 @@ Response<DataSourceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<DataSourceInner> listByWorkspace(String resourceGroupName, String workspaceName, String filter);
@@ -134,7 +135,8 @@ Response<DataSourceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<DataSourceInner> listByWorkspace(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DeletedWorkspacesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DeletedWorkspacesClient.java
index bfe3d7e6f65e6..0c0bfc73924b8 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DeletedWorkspacesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/DeletedWorkspacesClient.java
@@ -17,7 +17,8 @@ public interface DeletedWorkspacesClient {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> list();
@@ -29,7 +30,8 @@ public interface DeletedWorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> list(Context context);
@@ -41,7 +43,8 @@ public interface DeletedWorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName);
@@ -54,7 +57,8 @@ public interface DeletedWorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/GatewaysClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/GatewaysClient.java
index 67166742fd62a..0f1f4f4c17960 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/GatewaysClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/GatewaysClient.java
@@ -34,7 +34,7 @@ public interface GatewaysClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/IntelligencePacksClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/IntelligencePacksClient.java
index f9f450e40ec3f..68913d829b3c0 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/IntelligencePacksClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/IntelligencePacksClient.java
@@ -36,7 +36,7 @@ public interface IntelligencePacksClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> disableWithResponse(
@@ -65,7 +65,7 @@ Response<Void> disableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> enableWithResponse(
@@ -93,7 +93,7 @@ Response<Void> enableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<List<IntelligencePackInner>> listWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedServicesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedServicesClient.java
index 52d5ed5467598..b4d809df0fda5 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedServicesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedServicesClient.java
@@ -25,9 +25,9 @@ public interface LinkedServicesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, String linkedServiceName, LinkedServiceInner parameters);
 
@@ -42,9 +42,9 @@ SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpda
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdate(
         String resourceGroupName,
         String workspaceName,
@@ -98,9 +98,9 @@ LinkedServiceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelete(
         String resourceGroupName, String workspaceName, String linkedServiceName);
 
@@ -114,9 +114,9 @@ SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelete(
         String resourceGroupName, String workspaceName, String linkedServiceName, Context context);
 
@@ -174,7 +174,7 @@ LinkedServiceInner delete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<LinkedServiceInner> getWithResponse(
@@ -188,7 +188,7 @@ Response<LinkedServiceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<LinkedServiceInner> listByWorkspace(String resourceGroupName, String workspaceName);
@@ -202,7 +202,7 @@ Response<LinkedServiceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<LinkedServiceInner> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedStorageAccountsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedStorageAccountsClient.java
index db9567cfed526..a4a108f8a888d 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedStorageAccountsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/LinkedStorageAccountsClient.java
@@ -46,7 +46,7 @@ LinkedStorageAccountsResourceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return linked storage accounts top level resource container.
+     * @return linked storage accounts top level resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<LinkedStorageAccountsResourceInner> createOrUpdateWithResponse(
@@ -79,7 +79,7 @@ Response<LinkedStorageAccountsResourceInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
@@ -110,7 +110,8 @@ LinkedStorageAccountsResourceInner get(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<LinkedStorageAccountsResourceInner> getWithResponse(
@@ -126,7 +127,7 @@ Response<LinkedStorageAccountsResourceInner> getWithResponse(
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<LinkedStorageAccountsResourceInner> listByWorkspace(String resourceGroupName, String workspaceName);
@@ -142,7 +143,7 @@ Response<LinkedStorageAccountsResourceInner> getWithResponse(
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<LinkedStorageAccountsResourceInner> listByWorkspace(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ManagementGroupsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ManagementGroupsClient.java
index 827ffa2140649..70871d7802d87 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ManagementGroupsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/ManagementGroupsClient.java
@@ -20,7 +20,7 @@ public interface ManagementGroupsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ManagementGroupInner> list(String resourceGroupName, String workspaceName);
@@ -34,7 +34,7 @@ public interface ManagementGroupsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<ManagementGroupInner> list(String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationStatusesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationStatusesClient.java
index d28d2e6578780..63d4779ef512c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationStatusesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationStatusesClient.java
@@ -34,7 +34,7 @@ public interface OperationStatusesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<OperationStatusInner> getWithResponse(String location, String asyncOperationId, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationalInsightsManagementClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationalInsightsManagementClient.java
index ecb9e1ead6dc4..2f619df7c40dd 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationalInsightsManagementClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationalInsightsManagementClient.java
@@ -23,13 +23,6 @@ public interface OperationalInsightsManagementClient {
      */
     String getEndpoint();
 
-    /**
-     * Gets Api Version.
-     *
-     * @return the apiVersion value.
-     */
-    String getApiVersion();
-
     /**
      * Gets The HTTP pipeline to send requests through.
      *
@@ -44,6 +37,20 @@ public interface OperationalInsightsManagementClient {
      */
     Duration getDefaultPollInterval();
 
+    /**
+     * Gets the QueryPacksClient object to access its operations.
+     *
+     * @return the QueryPacksClient object.
+     */
+    QueryPacksClient getQueryPacks();
+
+    /**
+     * Gets the QueriesClient object to access its operations.
+     *
+     * @return the QueriesClient object.
+     */
+    QueriesClient getQueries();
+
     /**
      * Gets the DataExportsClient object to access its operations.
      *
@@ -86,13 +93,6 @@ public interface OperationalInsightsManagementClient {
      */
     ManagementGroupsClient getManagementGroups();
 
-    /**
-     * Gets the OperationsClient object to access its operations.
-     *
-     * @return the OperationsClient object.
-     */
-    OperationsClient getOperations();
-
     /**
      * Gets the OperationStatusesClient object to access its operations.
      *
@@ -114,27 +114,6 @@ public interface OperationalInsightsManagementClient {
      */
     UsagesClient getUsages();
 
-    /**
-     * Gets the WorkspacesClient object to access its operations.
-     *
-     * @return the WorkspacesClient object.
-     */
-    WorkspacesClient getWorkspaces();
-
-    /**
-     * Gets the DeletedWorkspacesClient object to access its operations.
-     *
-     * @return the DeletedWorkspacesClient object.
-     */
-    DeletedWorkspacesClient getDeletedWorkspaces();
-
-    /**
-     * Gets the ClustersClient object to access its operations.
-     *
-     * @return the ClustersClient object.
-     */
-    ClustersClient getClusters();
-
     /**
      * Gets the StorageInsightConfigsClient object to access its operations.
      *
@@ -177,6 +156,34 @@ public interface OperationalInsightsManagementClient {
      */
     WorkspacePurgesClient getWorkspacePurges();
 
+    /**
+     * Gets the ClustersClient object to access its operations.
+     *
+     * @return the ClustersClient object.
+     */
+    ClustersClient getClusters();
+
+    /**
+     * Gets the OperationsClient object to access its operations.
+     *
+     * @return the OperationsClient object.
+     */
+    OperationsClient getOperations();
+
+    /**
+     * Gets the WorkspacesClient object to access its operations.
+     *
+     * @return the WorkspacesClient object.
+     */
+    WorkspacesClient getWorkspaces();
+
+    /**
+     * Gets the DeletedWorkspacesClient object to access its operations.
+     *
+     * @return the DeletedWorkspacesClient object.
+     */
+    DeletedWorkspacesClient getDeletedWorkspaces();
+
     /**
      * Gets the TablesClient object to access its operations.
      *
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationsClient.java
index d96ce122c9e6a..64f88e37380c9 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/OperationsClient.java
@@ -17,7 +17,7 @@ public interface OperationsClient {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<OperationInner> list();
@@ -29,7 +29,7 @@ public interface OperationsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<OperationInner> list(Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueriesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueriesClient.java
new file mode 100644
index 0000000000000..b3a8a7f5966ae
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueriesClient.java
@@ -0,0 +1,236 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchProperties;
+
+/** An instance of this class provides access to all the operations defined in QueriesClient. */
+public interface QueriesClient {
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackQueryInner> list(String resourceGroupName, String queryPackName);
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackQueryInner> list(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context);
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackQueryInner> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties);
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackQueryInner> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackQueryInner get(String resourceGroupName, String queryPackName, String id);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackQueryInner> getWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context);
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackQueryInner put(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload);
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackQueryInner> putWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context);
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackQueryInner update(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload);
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackQueryInner> updateWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    void delete(String resourceGroupName, String queryPackName, String id);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, String id, Context context);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueryPacksClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueryPacksClient.java
new file mode 100644
index 0000000000000..69613037cf1d1
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/QueryPacksClient.java
@@ -0,0 +1,189 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import com.azure.resourcemanager.loganalytics.models.TagsResource;
+
+/** An instance of this class provides access to all the operations defined in QueryPacksClient. */
+public interface QueryPacksClient {
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackInner> list();
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackInner> list(Context context);
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackInner> listByResourceGroup(String resourceGroupName);
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    PagedIterable<LogAnalyticsQueryPackInner> listByResourceGroup(String resourceGroupName, Context context);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    void delete(String resourceGroupName, String queryPackName);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, Context context);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackInner getByResourceGroup(String resourceGroupName, String queryPackName);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackInner> getByResourceGroupWithResponse(
+        String resourceGroupName, String queryPackName, Context context);
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackInner createOrUpdate(
+        String resourceGroupName, String queryPackName, LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload);
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackInner> createOrUpdateWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload,
+        Context context);
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    LogAnalyticsQueryPackInner updateTags(String resourceGroupName, String queryPackName, TagsResource queryPackTags);
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<LogAnalyticsQueryPackInner> updateTagsWithResponse(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags, Context context);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SavedSearchesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SavedSearchesClient.java
index b0d762b2d209b..f57c5f69c0c47 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SavedSearchesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SavedSearchesClient.java
@@ -36,7 +36,7 @@ public interface SavedSearchesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
@@ -69,7 +69,7 @@ SavedSearchInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return value object for saved search results.
+     * @return value object for saved search results along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SavedSearchInner> createOrUpdateWithResponse(
@@ -103,7 +103,7 @@ Response<SavedSearchInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SavedSearchInner> getWithResponse(
@@ -131,7 +131,7 @@ Response<SavedSearchInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SavedSearchesListResultInner> listByWorkspaceWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SchemasClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SchemasClient.java
index d7470e311ab71..e08bdd6982348 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SchemasClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SchemasClient.java
@@ -34,7 +34,7 @@ public interface SchemasClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SearchGetSchemaResponseInner> getWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SharedKeysOperationsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SharedKeysOperationsClient.java
index 7cf8175233649..01fb6729182c3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SharedKeysOperationsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/SharedKeysOperationsClient.java
@@ -34,7 +34,7 @@ public interface SharedKeysOperationsClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SharedKeysInner> getSharedKeysWithResponse(
@@ -64,7 +64,7 @@ Response<SharedKeysInner> getSharedKeysWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<SharedKeysInner> regenerateWithResponse(String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/StorageInsightConfigsClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/StorageInsightConfigsClient.java
index acce922c504dc..8d5e32ecec199 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/StorageInsightConfigsClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/StorageInsightConfigsClient.java
@@ -40,7 +40,7 @@ StorageInsightInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level storage insight resource container.
+     * @return the top level storage insight resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<StorageInsightInner> createOrUpdateWithResponse(
@@ -74,7 +74,7 @@ Response<StorageInsightInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<StorageInsightInner> getWithResponse(
@@ -103,7 +103,7 @@ Response<StorageInsightInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<Void> deleteWithResponse(
@@ -117,7 +117,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<StorageInsightInner> listByWorkspace(String resourceGroupName, String workspaceName);
@@ -131,7 +131,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<StorageInsightInner> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/TablesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/TablesClient.java
index 0f784c4e5ca99..bb27c20458ed4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/TablesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/TablesClient.java
@@ -8,7 +8,9 @@
 import com.azure.core.annotation.ServiceMethod;
 import com.azure.core.http.rest.PagedIterable;
 import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
 import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
 
 /** An instance of this class provides access to all the operations defined in TablesClient. */
@@ -21,7 +23,8 @@ public interface TablesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<TableInner> listByWorkspace(String resourceGroupName, String workspaceName);
@@ -35,13 +38,112 @@ public interface TablesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<TableInner> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<TableInner>, TableInner> beginCreateOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters);
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<TableInner>, TableInner> beginCreateOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context);
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    TableInner createOrUpdate(String resourceGroupName, String workspaceName, String tableName, TableInner parameters);
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    TableInner createOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context);
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<TableInner>, TableInner> beginUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters);
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<TableInner>, TableInner> beginUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context);
+
+    /**
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -56,7 +158,7 @@ public interface TablesClient {
     TableInner update(String resourceGroupName, String workspaceName, String tableName, TableInner parameters);
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -69,7 +171,7 @@ public interface TablesClient {
      * @return workspace data table definition.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    Response<TableInner> updateWithResponse(
+    TableInner update(
         String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context);
 
     /**
@@ -96,9 +198,97 @@ Response<TableInner> updateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return a Log Analytics workspace table along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<TableInner> getWithResponse(
         String resourceGroupName, String workspaceName, String tableName, Context context);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName, String workspaceName, String tableName);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    SyncPoller<PollResult<Void>, Void> beginDelete(
+        String resourceGroupName, String workspaceName, String tableName, Context context);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    void delete(String resourceGroupName, String workspaceName, String tableName);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    void delete(String resourceGroupName, String workspaceName, String tableName, Context context);
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    void migrate(String resourceGroupName, String workspaceName, String tableName);
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    Response<Void> migrateWithResponse(
+        String resourceGroupName, String workspaceName, String tableName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/UsagesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/UsagesClient.java
index 17a73a511dc34..2fd82f76a963a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/UsagesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/UsagesClient.java
@@ -20,7 +20,7 @@ public interface UsagesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<UsageMetricInner> list(String resourceGroupName, String workspaceName);
@@ -34,7 +34,7 @@ public interface UsagesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<UsageMetricInner> list(String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacePurgesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacePurgesClient.java
index 38e33b4d26481..0da7cf343ac38 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacePurgesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacePurgesClient.java
@@ -79,7 +79,7 @@ WorkspacePurgesPurgeResponse purgeWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<WorkspacePurgeStatusResponseInner> getPurgeStatusWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacesClient.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacesClient.java
index e73903b64ee25..5fcad1925d476 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacesClient.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/WorkspacesClient.java
@@ -21,7 +21,7 @@ public interface WorkspacesClient {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> list();
@@ -33,7 +33,7 @@ public interface WorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> list(Context context);
@@ -45,7 +45,7 @@ public interface WorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName);
@@ -58,7 +58,7 @@ public interface WorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName, Context context);
@@ -72,9 +72,9 @@ public interface WorkspacesClient {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link SyncPoller} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters);
 
@@ -88,9 +88,9 @@ SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link SyncPoller} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters, Context context);
 
@@ -136,9 +136,9 @@ WorkspaceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName, String workspaceName, Boolean force);
 
     /**
@@ -154,9 +154,9 @@ WorkspaceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     SyncPoller<PollResult<Void>, Void> beginDelete(
         String resourceGroupName, String workspaceName, Boolean force, Context context);
 
@@ -229,7 +229,7 @@ SyncPoller<PollResult<Void>, Void> beginDelete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<WorkspaceInner> getByResourceGroupWithResponse(
@@ -259,7 +259,7 @@ Response<WorkspaceInner> getByResourceGroupWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     Response<WorkspaceInner> updateWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/AvailableServiceTierInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/AvailableServiceTierInner.java
index dfa21413205f6..4132fda7f6576 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/AvailableServiceTierInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/AvailableServiceTierInner.java
@@ -5,16 +5,12 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Immutable;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.SkuNameEnum;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Service Tier details. */
 @Immutable
 public final class AvailableServiceTierInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(AvailableServiceTierInner.class);
-
     /*
      * The name of the Service Tier.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterInner.java
index d5bc163290d33..ae700477cb0c4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterInner.java
@@ -5,23 +5,21 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.AssociatedWorkspace;
+import com.azure.resourcemanager.loganalytics.models.BillingType;
+import com.azure.resourcemanager.loganalytics.models.CapacityReservationProperties;
 import com.azure.resourcemanager.loganalytics.models.ClusterEntityStatus;
 import com.azure.resourcemanager.loganalytics.models.ClusterSku;
 import com.azure.resourcemanager.loganalytics.models.Identity;
 import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
 import java.util.Map;
 
 /** The top level Log Analytics cluster resource container. */
-@JsonFlatten
 @Fluent
-public class ClusterInner extends Resource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ClusterInner.class);
-
+public final class ClusterInner extends Resource {
     /*
      * The identity of the resource.
      */
@@ -35,28 +33,10 @@ public class ClusterInner extends Resource {
     private ClusterSku sku;
 
     /*
-     * The link used to get the next page of recommendations.
-     */
-    @JsonProperty(value = "properties.nextLink")
-    private String nextLink;
-
-    /*
-     * The ID associated with the cluster.
-     */
-    @JsonProperty(value = "properties.clusterId", access = JsonProperty.Access.WRITE_ONLY)
-    private String clusterId;
-
-    /*
-     * The provisioning state of the cluster.
+     * Log Analytics cluster properties.
      */
-    @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
-    private ClusterEntityStatus provisioningState;
-
-    /*
-     * The associated key properties.
-     */
-    @JsonProperty(value = "properties.keyVaultProperties")
-    private KeyVaultProperties keyVaultProperties;
+    @JsonProperty(value = "properties")
+    private ClusterProperties innerProperties;
 
     /**
      * Get the identity property: The identity of the resource.
@@ -99,22 +79,25 @@ public ClusterInner withSku(ClusterSku sku) {
     }
 
     /**
-     * Get the nextLink property: The link used to get the next page of recommendations.
+     * Get the innerProperties property: Log Analytics cluster properties.
      *
-     * @return the nextLink value.
+     * @return the innerProperties value.
      */
-    public String nextLink() {
-        return this.nextLink;
+    private ClusterProperties innerProperties() {
+        return this.innerProperties;
     }
 
-    /**
-     * Set the nextLink property: The link used to get the next page of recommendations.
-     *
-     * @param nextLink the nextLink value to set.
-     * @return the ClusterInner object itself.
-     */
-    public ClusterInner withNextLink(String nextLink) {
-        this.nextLink = nextLink;
+    /** {@inheritDoc} */
+    @Override
+    public ClusterInner withLocation(String location) {
+        super.withLocation(location);
+        return this;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public ClusterInner withTags(Map<String, String> tags) {
+        super.withTags(tags);
         return this;
     }
 
@@ -124,7 +107,7 @@ public ClusterInner withNextLink(String nextLink) {
      * @return the clusterId value.
      */
     public String clusterId() {
-        return this.clusterId;
+        return this.innerProperties() == null ? null : this.innerProperties().clusterId();
     }
 
     /**
@@ -133,7 +116,82 @@ public String clusterId() {
      * @return the provisioningState value.
      */
     public ClusterEntityStatus provisioningState() {
-        return this.provisioningState;
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+    }
+
+    /**
+     * Get the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption. This Property
+     * can not be modified after cluster creation. Default value is 'true'.
+     *
+     * @return the isDoubleEncryptionEnabled value.
+     */
+    public Boolean isDoubleEncryptionEnabled() {
+        return this.innerProperties() == null ? null : this.innerProperties().isDoubleEncryptionEnabled();
+    }
+
+    /**
+     * Set the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption. This Property
+     * can not be modified after cluster creation. Default value is 'true'.
+     *
+     * @param isDoubleEncryptionEnabled the isDoubleEncryptionEnabled value to set.
+     * @return the ClusterInner object itself.
+     */
+    public ClusterInner withIsDoubleEncryptionEnabled(Boolean isDoubleEncryptionEnabled) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withIsDoubleEncryptionEnabled(isDoubleEncryptionEnabled);
+        return this;
+    }
+
+    /**
+     * Get the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability zones. This can
+     * be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be
+     * modified after cluster creation. Default value is 'true' if region supports Availability Zones.
+     *
+     * @return the isAvailabilityZonesEnabled value.
+     */
+    public Boolean isAvailabilityZonesEnabled() {
+        return this.innerProperties() == null ? null : this.innerProperties().isAvailabilityZonesEnabled();
+    }
+
+    /**
+     * Set the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability zones. This can
+     * be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be
+     * modified after cluster creation. Default value is 'true' if region supports Availability Zones.
+     *
+     * @param isAvailabilityZonesEnabled the isAvailabilityZonesEnabled value to set.
+     * @return the ClusterInner object itself.
+     */
+    public ClusterInner withIsAvailabilityZonesEnabled(Boolean isAvailabilityZonesEnabled) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withIsAvailabilityZonesEnabled(isAvailabilityZonesEnabled);
+        return this;
+    }
+
+    /**
+     * Get the billingType property: The cluster's billing type.
+     *
+     * @return the billingType value.
+     */
+    public BillingType billingType() {
+        return this.innerProperties() == null ? null : this.innerProperties().billingType();
+    }
+
+    /**
+     * Set the billingType property: The cluster's billing type.
+     *
+     * @param billingType the billingType value to set.
+     * @return the ClusterInner object itself.
+     */
+    public ClusterInner withBillingType(BillingType billingType) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withBillingType(billingType);
+        return this;
     }
 
     /**
@@ -142,7 +200,7 @@ public ClusterEntityStatus provisioningState() {
      * @return the keyVaultProperties value.
      */
     public KeyVaultProperties keyVaultProperties() {
-        return this.keyVaultProperties;
+        return this.innerProperties() == null ? null : this.innerProperties().keyVaultProperties();
     }
 
     /**
@@ -152,21 +210,74 @@ public KeyVaultProperties keyVaultProperties() {
      * @return the ClusterInner object itself.
      */
     public ClusterInner withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
-        this.keyVaultProperties = keyVaultProperties;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withKeyVaultProperties(keyVaultProperties);
         return this;
     }
 
-    /** {@inheritDoc} */
-    @Override
-    public ClusterInner withLocation(String location) {
-        super.withLocation(location);
+    /**
+     * Get the lastModifiedDate property: The last time the cluster was updated.
+     *
+     * @return the lastModifiedDate value.
+     */
+    public String lastModifiedDate() {
+        return this.innerProperties() == null ? null : this.innerProperties().lastModifiedDate();
+    }
+
+    /**
+     * Get the createdDate property: The cluster creation time.
+     *
+     * @return the createdDate value.
+     */
+    public String createdDate() {
+        return this.innerProperties() == null ? null : this.innerProperties().createdDate();
+    }
+
+    /**
+     * Get the associatedWorkspaces property: The list of Log Analytics workspaces associated with the cluster.
+     *
+     * @return the associatedWorkspaces value.
+     */
+    public List<AssociatedWorkspace> associatedWorkspaces() {
+        return this.innerProperties() == null ? null : this.innerProperties().associatedWorkspaces();
+    }
+
+    /**
+     * Set the associatedWorkspaces property: The list of Log Analytics workspaces associated with the cluster.
+     *
+     * @param associatedWorkspaces the associatedWorkspaces value to set.
+     * @return the ClusterInner object itself.
+     */
+    public ClusterInner withAssociatedWorkspaces(List<AssociatedWorkspace> associatedWorkspaces) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withAssociatedWorkspaces(associatedWorkspaces);
         return this;
     }
 
-    /** {@inheritDoc} */
-    @Override
-    public ClusterInner withTags(Map<String, String> tags) {
-        super.withTags(tags);
+    /**
+     * Get the capacityReservationProperties property: Additional properties for capacity reservation.
+     *
+     * @return the capacityReservationProperties value.
+     */
+    public CapacityReservationProperties capacityReservationProperties() {
+        return this.innerProperties() == null ? null : this.innerProperties().capacityReservationProperties();
+    }
+
+    /**
+     * Set the capacityReservationProperties property: Additional properties for capacity reservation.
+     *
+     * @param capacityReservationProperties the capacityReservationProperties value to set.
+     * @return the ClusterInner object itself.
+     */
+    public ClusterInner withCapacityReservationProperties(CapacityReservationProperties capacityReservationProperties) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterProperties();
+        }
+        this.innerProperties().withCapacityReservationProperties(capacityReservationProperties);
         return this;
     }
 
@@ -182,8 +293,8 @@ public void validate() {
         if (sku() != null) {
             sku().validate();
         }
-        if (keyVaultProperties() != null) {
-            keyVaultProperties().validate();
+        if (innerProperties() != null) {
+            innerProperties().validate();
         }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterPatchProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterPatchProperties.java
new file mode 100644
index 0000000000000..f433e34253392
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterPatchProperties.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.BillingType;
+import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Log Analytics cluster patch properties. */
+@Fluent
+public final class ClusterPatchProperties {
+    /*
+     * The associated key properties.
+     */
+    @JsonProperty(value = "keyVaultProperties")
+    private KeyVaultProperties keyVaultProperties;
+
+    /*
+     * The cluster's billing type.
+     */
+    @JsonProperty(value = "billingType")
+    private BillingType billingType;
+
+    /**
+     * Get the keyVaultProperties property: The associated key properties.
+     *
+     * @return the keyVaultProperties value.
+     */
+    public KeyVaultProperties keyVaultProperties() {
+        return this.keyVaultProperties;
+    }
+
+    /**
+     * Set the keyVaultProperties property: The associated key properties.
+     *
+     * @param keyVaultProperties the keyVaultProperties value to set.
+     * @return the ClusterPatchProperties object itself.
+     */
+    public ClusterPatchProperties withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
+        this.keyVaultProperties = keyVaultProperties;
+        return this;
+    }
+
+    /**
+     * Get the billingType property: The cluster's billing type.
+     *
+     * @return the billingType value.
+     */
+    public BillingType billingType() {
+        return this.billingType;
+    }
+
+    /**
+     * Set the billingType property: The cluster's billing type.
+     *
+     * @param billingType the billingType value to set.
+     * @return the ClusterPatchProperties object itself.
+     */
+    public ClusterPatchProperties withBillingType(BillingType billingType) {
+        this.billingType = billingType;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (keyVaultProperties() != null) {
+            keyVaultProperties().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterProperties.java
new file mode 100644
index 0000000000000..8a7695d334300
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ClusterProperties.java
@@ -0,0 +1,262 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.AssociatedWorkspace;
+import com.azure.resourcemanager.loganalytics.models.BillingType;
+import com.azure.resourcemanager.loganalytics.models.CapacityReservationProperties;
+import com.azure.resourcemanager.loganalytics.models.ClusterEntityStatus;
+import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Cluster properties. */
+@Fluent
+public final class ClusterProperties {
+    /*
+     * The ID associated with the cluster.
+     */
+    @JsonProperty(value = "clusterId", access = JsonProperty.Access.WRITE_ONLY)
+    private String clusterId;
+
+    /*
+     * The provisioning state of the cluster.
+     */
+    @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+    private ClusterEntityStatus provisioningState;
+
+    /*
+     * Configures whether cluster will use double encryption. This Property can
+     * not be modified after cluster creation. Default value is 'true'
+     */
+    @JsonProperty(value = "isDoubleEncryptionEnabled")
+    private Boolean isDoubleEncryptionEnabled;
+
+    /*
+     * Sets whether the cluster will support availability zones. This can be
+     * set as true only in regions where Azure Data Explorer support
+     * Availability Zones. This Property can not be modified after cluster
+     * creation. Default value is 'true' if region supports Availability Zones.
+     */
+    @JsonProperty(value = "isAvailabilityZonesEnabled")
+    private Boolean isAvailabilityZonesEnabled;
+
+    /*
+     * The cluster's billing type.
+     */
+    @JsonProperty(value = "billingType")
+    private BillingType billingType;
+
+    /*
+     * The associated key properties.
+     */
+    @JsonProperty(value = "keyVaultProperties")
+    private KeyVaultProperties keyVaultProperties;
+
+    /*
+     * The last time the cluster was updated.
+     */
+    @JsonProperty(value = "lastModifiedDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String lastModifiedDate;
+
+    /*
+     * The cluster creation time
+     */
+    @JsonProperty(value = "createdDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String createdDate;
+
+    /*
+     * The list of Log Analytics workspaces associated with the cluster
+     */
+    @JsonProperty(value = "associatedWorkspaces")
+    private List<AssociatedWorkspace> associatedWorkspaces;
+
+    /*
+     * Additional properties for capacity reservation
+     */
+    @JsonProperty(value = "capacityReservationProperties")
+    private CapacityReservationProperties capacityReservationProperties;
+
+    /**
+     * Get the clusterId property: The ID associated with the cluster.
+     *
+     * @return the clusterId value.
+     */
+    public String clusterId() {
+        return this.clusterId;
+    }
+
+    /**
+     * Get the provisioningState property: The provisioning state of the cluster.
+     *
+     * @return the provisioningState value.
+     */
+    public ClusterEntityStatus provisioningState() {
+        return this.provisioningState;
+    }
+
+    /**
+     * Get the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption. This Property
+     * can not be modified after cluster creation. Default value is 'true'.
+     *
+     * @return the isDoubleEncryptionEnabled value.
+     */
+    public Boolean isDoubleEncryptionEnabled() {
+        return this.isDoubleEncryptionEnabled;
+    }
+
+    /**
+     * Set the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption. This Property
+     * can not be modified after cluster creation. Default value is 'true'.
+     *
+     * @param isDoubleEncryptionEnabled the isDoubleEncryptionEnabled value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withIsDoubleEncryptionEnabled(Boolean isDoubleEncryptionEnabled) {
+        this.isDoubleEncryptionEnabled = isDoubleEncryptionEnabled;
+        return this;
+    }
+
+    /**
+     * Get the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability zones. This can
+     * be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be
+     * modified after cluster creation. Default value is 'true' if region supports Availability Zones.
+     *
+     * @return the isAvailabilityZonesEnabled value.
+     */
+    public Boolean isAvailabilityZonesEnabled() {
+        return this.isAvailabilityZonesEnabled;
+    }
+
+    /**
+     * Set the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability zones. This can
+     * be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be
+     * modified after cluster creation. Default value is 'true' if region supports Availability Zones.
+     *
+     * @param isAvailabilityZonesEnabled the isAvailabilityZonesEnabled value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withIsAvailabilityZonesEnabled(Boolean isAvailabilityZonesEnabled) {
+        this.isAvailabilityZonesEnabled = isAvailabilityZonesEnabled;
+        return this;
+    }
+
+    /**
+     * Get the billingType property: The cluster's billing type.
+     *
+     * @return the billingType value.
+     */
+    public BillingType billingType() {
+        return this.billingType;
+    }
+
+    /**
+     * Set the billingType property: The cluster's billing type.
+     *
+     * @param billingType the billingType value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withBillingType(BillingType billingType) {
+        this.billingType = billingType;
+        return this;
+    }
+
+    /**
+     * Get the keyVaultProperties property: The associated key properties.
+     *
+     * @return the keyVaultProperties value.
+     */
+    public KeyVaultProperties keyVaultProperties() {
+        return this.keyVaultProperties;
+    }
+
+    /**
+     * Set the keyVaultProperties property: The associated key properties.
+     *
+     * @param keyVaultProperties the keyVaultProperties value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
+        this.keyVaultProperties = keyVaultProperties;
+        return this;
+    }
+
+    /**
+     * Get the lastModifiedDate property: The last time the cluster was updated.
+     *
+     * @return the lastModifiedDate value.
+     */
+    public String lastModifiedDate() {
+        return this.lastModifiedDate;
+    }
+
+    /**
+     * Get the createdDate property: The cluster creation time.
+     *
+     * @return the createdDate value.
+     */
+    public String createdDate() {
+        return this.createdDate;
+    }
+
+    /**
+     * Get the associatedWorkspaces property: The list of Log Analytics workspaces associated with the cluster.
+     *
+     * @return the associatedWorkspaces value.
+     */
+    public List<AssociatedWorkspace> associatedWorkspaces() {
+        return this.associatedWorkspaces;
+    }
+
+    /**
+     * Set the associatedWorkspaces property: The list of Log Analytics workspaces associated with the cluster.
+     *
+     * @param associatedWorkspaces the associatedWorkspaces value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withAssociatedWorkspaces(List<AssociatedWorkspace> associatedWorkspaces) {
+        this.associatedWorkspaces = associatedWorkspaces;
+        return this;
+    }
+
+    /**
+     * Get the capacityReservationProperties property: Additional properties for capacity reservation.
+     *
+     * @return the capacityReservationProperties value.
+     */
+    public CapacityReservationProperties capacityReservationProperties() {
+        return this.capacityReservationProperties;
+    }
+
+    /**
+     * Set the capacityReservationProperties property: Additional properties for capacity reservation.
+     *
+     * @param capacityReservationProperties the capacityReservationProperties value to set.
+     * @return the ClusterProperties object itself.
+     */
+    public ClusterProperties withCapacityReservationProperties(
+        CapacityReservationProperties capacityReservationProperties) {
+        this.capacityReservationProperties = capacityReservationProperties;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (keyVaultProperties() != null) {
+            keyVaultProperties().validate();
+        }
+        if (associatedWorkspaces() != null) {
+            associatedWorkspaces().forEach(e -> e.validate());
+        }
+        if (capacityReservationProperties() != null) {
+            capacityReservationProperties().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportInner.java
index 293aa39a13eab..ddca04c9f7671 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportInner.java
@@ -5,69 +5,28 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.Type;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The top level data export resource container. */
-@JsonFlatten
 @Fluent
-public class DataExportInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataExportInner.class);
-
-    /*
-     * The data export rule ID.
-     */
-    @JsonProperty(value = "properties.dataExportId")
-    private String dataExportId;
-
-    /*
-     * An array of tables to export, for example: [“Heartbeat, SecurityEvent”].
-     */
-    @JsonProperty(value = "properties.tableNames")
-    private List<String> tableNames;
-
-    /*
-     * Active when enabled.
-     */
-    @JsonProperty(value = "properties.enable")
-    private Boolean enable;
-
+public final class DataExportInner extends ProxyResource {
     /*
-     * The latest data export rule modification time.
+     * data export properties.
      */
-    @JsonProperty(value = "properties.createdDate")
-    private String createdDate;
+    @JsonProperty(value = "properties")
+    private DataExportProperties innerProperties;
 
-    /*
-     * Date and time when the export was last modified.
-     */
-    @JsonProperty(value = "properties.lastModifiedDate")
-    private String lastModifiedDate;
-
-    /*
-     * The destination resource ID. This can be copied from the Properties
-     * entry of the destination resource in Azure.
-     */
-    @JsonProperty(value = "properties.destination.resourceId")
-    private String resourceId;
-
-    /*
-     * The type of the destination resource
-     */
-    @JsonProperty(value = "properties.destination.type", access = JsonProperty.Access.WRITE_ONLY)
-    private Type typePropertiesDestinationType;
-
-    /*
-     * Optional. Allows to define an Event Hub name. Not applicable when
-     * destination is Storage Account.
+    /**
+     * Get the innerProperties property: data export properties.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.destination.metaData.eventHubName")
-    private String eventHubName;
+    private DataExportProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the dataExportId property: The data export rule ID.
@@ -75,7 +34,7 @@ public class DataExportInner extends ProxyResource {
      * @return the dataExportId value.
      */
     public String dataExportId() {
-        return this.dataExportId;
+        return this.innerProperties() == null ? null : this.innerProperties().dataExportId();
     }
 
     /**
@@ -85,7 +44,10 @@ public String dataExportId() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withDataExportId(String dataExportId) {
-        this.dataExportId = dataExportId;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withDataExportId(dataExportId);
         return this;
     }
 
@@ -95,7 +57,7 @@ public DataExportInner withDataExportId(String dataExportId) {
      * @return the tableNames value.
      */
     public List<String> tableNames() {
-        return this.tableNames;
+        return this.innerProperties() == null ? null : this.innerProperties().tableNames();
     }
 
     /**
@@ -105,7 +67,10 @@ public List<String> tableNames() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withTableNames(List<String> tableNames) {
-        this.tableNames = tableNames;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withTableNames(tableNames);
         return this;
     }
 
@@ -115,7 +80,7 @@ public DataExportInner withTableNames(List<String> tableNames) {
      * @return the enable value.
      */
     public Boolean enable() {
-        return this.enable;
+        return this.innerProperties() == null ? null : this.innerProperties().enable();
     }
 
     /**
@@ -125,7 +90,10 @@ public Boolean enable() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withEnable(Boolean enable) {
-        this.enable = enable;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withEnable(enable);
         return this;
     }
 
@@ -135,7 +103,7 @@ public DataExportInner withEnable(Boolean enable) {
      * @return the createdDate value.
      */
     public String createdDate() {
-        return this.createdDate;
+        return this.innerProperties() == null ? null : this.innerProperties().createdDate();
     }
 
     /**
@@ -145,7 +113,10 @@ public String createdDate() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withCreatedDate(String createdDate) {
-        this.createdDate = createdDate;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withCreatedDate(createdDate);
         return this;
     }
 
@@ -155,7 +126,7 @@ public DataExportInner withCreatedDate(String createdDate) {
      * @return the lastModifiedDate value.
      */
     public String lastModifiedDate() {
-        return this.lastModifiedDate;
+        return this.innerProperties() == null ? null : this.innerProperties().lastModifiedDate();
     }
 
     /**
@@ -165,7 +136,10 @@ public String lastModifiedDate() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withLastModifiedDate(String lastModifiedDate) {
-        this.lastModifiedDate = lastModifiedDate;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withLastModifiedDate(lastModifiedDate);
         return this;
     }
 
@@ -176,7 +150,7 @@ public DataExportInner withLastModifiedDate(String lastModifiedDate) {
      * @return the resourceId value.
      */
     public String resourceId() {
-        return this.resourceId;
+        return this.innerProperties() == null ? null : this.innerProperties().resourceId();
     }
 
     /**
@@ -187,17 +161,20 @@ public String resourceId() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withResourceId(String resourceId) {
-        this.resourceId = resourceId;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withResourceId(resourceId);
         return this;
     }
 
     /**
-     * Get the typePropertiesDestinationType property: The type of the destination resource.
+     * Get the type property: The type of the destination resource.
      *
-     * @return the typePropertiesDestinationType value.
+     * @return the type value.
      */
-    public Type typePropertiesDestinationType() {
-        return this.typePropertiesDestinationType;
+    public Type typePropertiesType() {
+        return this.innerProperties() == null ? null : this.innerProperties().type();
     }
 
     /**
@@ -207,7 +184,7 @@ public Type typePropertiesDestinationType() {
      * @return the eventHubName value.
      */
     public String eventHubName() {
-        return this.eventHubName;
+        return this.innerProperties() == null ? null : this.innerProperties().eventHubName();
     }
 
     /**
@@ -218,7 +195,10 @@ public String eventHubName() {
      * @return the DataExportInner object itself.
      */
     public DataExportInner withEventHubName(String eventHubName) {
-        this.eventHubName = eventHubName;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new DataExportProperties();
+        }
+        this.innerProperties().withEventHubName(eventHubName);
         return this;
     }
 
@@ -228,5 +208,8 @@ public DataExportInner withEventHubName(String eventHubName) {
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() != null) {
+            innerProperties().validate();
+        }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportProperties.java
new file mode 100644
index 0000000000000..96fff01a2a70f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataExportProperties.java
@@ -0,0 +1,237 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.Type;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Data Export properties. */
+@Fluent
+public final class DataExportProperties {
+    /*
+     * The data export rule ID.
+     */
+    @JsonProperty(value = "dataExportId")
+    private String dataExportId;
+
+    /*
+     * An array of tables to export, for example: [“Heartbeat, SecurityEvent”].
+     */
+    @JsonProperty(value = "tableNames", required = true)
+    private List<String> tableNames;
+
+    /*
+     * destination properties.
+     */
+    @JsonProperty(value = "destination")
+    private Destination innerDestination;
+
+    /*
+     * Active when enabled.
+     */
+    @JsonProperty(value = "enable")
+    private Boolean enable;
+
+    /*
+     * The latest data export rule modification time.
+     */
+    @JsonProperty(value = "createdDate")
+    private String createdDate;
+
+    /*
+     * Date and time when the export was last modified.
+     */
+    @JsonProperty(value = "lastModifiedDate")
+    private String lastModifiedDate;
+
+    /**
+     * Get the dataExportId property: The data export rule ID.
+     *
+     * @return the dataExportId value.
+     */
+    public String dataExportId() {
+        return this.dataExportId;
+    }
+
+    /**
+     * Set the dataExportId property: The data export rule ID.
+     *
+     * @param dataExportId the dataExportId value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withDataExportId(String dataExportId) {
+        this.dataExportId = dataExportId;
+        return this;
+    }
+
+    /**
+     * Get the tableNames property: An array of tables to export, for example: [“Heartbeat, SecurityEvent”].
+     *
+     * @return the tableNames value.
+     */
+    public List<String> tableNames() {
+        return this.tableNames;
+    }
+
+    /**
+     * Set the tableNames property: An array of tables to export, for example: [“Heartbeat, SecurityEvent”].
+     *
+     * @param tableNames the tableNames value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withTableNames(List<String> tableNames) {
+        this.tableNames = tableNames;
+        return this;
+    }
+
+    /**
+     * Get the innerDestination property: destination properties.
+     *
+     * @return the innerDestination value.
+     */
+    private Destination innerDestination() {
+        return this.innerDestination;
+    }
+
+    /**
+     * Get the enable property: Active when enabled.
+     *
+     * @return the enable value.
+     */
+    public Boolean enable() {
+        return this.enable;
+    }
+
+    /**
+     * Set the enable property: Active when enabled.
+     *
+     * @param enable the enable value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withEnable(Boolean enable) {
+        this.enable = enable;
+        return this;
+    }
+
+    /**
+     * Get the createdDate property: The latest data export rule modification time.
+     *
+     * @return the createdDate value.
+     */
+    public String createdDate() {
+        return this.createdDate;
+    }
+
+    /**
+     * Set the createdDate property: The latest data export rule modification time.
+     *
+     * @param createdDate the createdDate value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withCreatedDate(String createdDate) {
+        this.createdDate = createdDate;
+        return this;
+    }
+
+    /**
+     * Get the lastModifiedDate property: Date and time when the export was last modified.
+     *
+     * @return the lastModifiedDate value.
+     */
+    public String lastModifiedDate() {
+        return this.lastModifiedDate;
+    }
+
+    /**
+     * Set the lastModifiedDate property: Date and time when the export was last modified.
+     *
+     * @param lastModifiedDate the lastModifiedDate value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withLastModifiedDate(String lastModifiedDate) {
+        this.lastModifiedDate = lastModifiedDate;
+        return this;
+    }
+
+    /**
+     * Get the resourceId property: The destination resource ID. This can be copied from the Properties entry of the
+     * destination resource in Azure.
+     *
+     * @return the resourceId value.
+     */
+    public String resourceId() {
+        return this.innerDestination() == null ? null : this.innerDestination().resourceId();
+    }
+
+    /**
+     * Set the resourceId property: The destination resource ID. This can be copied from the Properties entry of the
+     * destination resource in Azure.
+     *
+     * @param resourceId the resourceId value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withResourceId(String resourceId) {
+        if (this.innerDestination() == null) {
+            this.innerDestination = new Destination();
+        }
+        this.innerDestination().withResourceId(resourceId);
+        return this;
+    }
+
+    /**
+     * Get the type property: The type of the destination resource.
+     *
+     * @return the type value.
+     */
+    public Type type() {
+        return this.innerDestination() == null ? null : this.innerDestination().type();
+    }
+
+    /**
+     * Get the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @return the eventHubName value.
+     */
+    public String eventHubName() {
+        return this.innerDestination() == null ? null : this.innerDestination().eventHubName();
+    }
+
+    /**
+     * Set the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @param eventHubName the eventHubName value to set.
+     * @return the DataExportProperties object itself.
+     */
+    public DataExportProperties withEventHubName(String eventHubName) {
+        if (this.innerDestination() == null) {
+            this.innerDestination = new Destination();
+        }
+        this.innerDestination().withEventHubName(eventHubName);
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (tableNames() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException("Missing required property tableNames in model DataExportProperties"));
+        }
+        if (innerDestination() != null) {
+            innerDestination().validate();
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(DataExportProperties.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataSourceInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataSourceInner.java
index df0abde01f4cd..ef09393faf1bc 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataSourceInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DataSourceInner.java
@@ -8,15 +8,13 @@
 import com.azure.core.management.ProxyResource;
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.DataSourceKind;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.Map;
 
 /** Datasources under OMS Workspace. */
 @Fluent
 public final class DataSourceInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataSourceInner.class);
-
     /*
      * The data source properties in raw json format, each kind of data source
      * have it's own schema.
@@ -40,6 +38,7 @@ public final class DataSourceInner extends ProxyResource {
      * Resource tags.
      */
     @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
     private Map<String, String> tags;
 
     /**
@@ -131,14 +130,16 @@ public DataSourceInner withTags(Map<String, String> tags) {
      */
     public void validate() {
         if (properties() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property properties in model DataSourceInner"));
         }
         if (kind() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property kind in model DataSourceInner"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(DataSourceInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/Destination.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/Destination.java
new file mode 100644
index 0000000000000..4ae7e6fabac39
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/Destination.java
@@ -0,0 +1,116 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.Type;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Destination properties. */
+@Fluent
+public final class Destination {
+    /*
+     * The destination resource ID. This can be copied from the Properties
+     * entry of the destination resource in Azure.
+     */
+    @JsonProperty(value = "resourceId", required = true)
+    private String resourceId;
+
+    /*
+     * The type of the destination resource
+     */
+    @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+    private Type type;
+
+    /*
+     * destination meta data.
+     */
+    @JsonProperty(value = "metaData")
+    private DestinationMetadata innerMetadata;
+
+    /**
+     * Get the resourceId property: The destination resource ID. This can be copied from the Properties entry of the
+     * destination resource in Azure.
+     *
+     * @return the resourceId value.
+     */
+    public String resourceId() {
+        return this.resourceId;
+    }
+
+    /**
+     * Set the resourceId property: The destination resource ID. This can be copied from the Properties entry of the
+     * destination resource in Azure.
+     *
+     * @param resourceId the resourceId value to set.
+     * @return the Destination object itself.
+     */
+    public Destination withResourceId(String resourceId) {
+        this.resourceId = resourceId;
+        return this;
+    }
+
+    /**
+     * Get the type property: The type of the destination resource.
+     *
+     * @return the type value.
+     */
+    public Type type() {
+        return this.type;
+    }
+
+    /**
+     * Get the innerMetadata property: destination meta data.
+     *
+     * @return the innerMetadata value.
+     */
+    private DestinationMetadata innerMetadata() {
+        return this.innerMetadata;
+    }
+
+    /**
+     * Get the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @return the eventHubName value.
+     */
+    public String eventHubName() {
+        return this.innerMetadata() == null ? null : this.innerMetadata().eventHubName();
+    }
+
+    /**
+     * Set the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @param eventHubName the eventHubName value to set.
+     * @return the Destination object itself.
+     */
+    public Destination withEventHubName(String eventHubName) {
+        if (this.innerMetadata() == null) {
+            this.innerMetadata = new DestinationMetadata();
+        }
+        this.innerMetadata().withEventHubName(eventHubName);
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (resourceId() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException("Missing required property resourceId in model Destination"));
+        }
+        if (innerMetadata() != null) {
+            innerMetadata().validate();
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(Destination.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DestinationMetadata.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DestinationMetadata.java
new file mode 100644
index 0000000000000..d7c0bbeb32963
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/DestinationMetadata.java
@@ -0,0 +1,49 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Destination meta data. */
+@Fluent
+public final class DestinationMetadata {
+    /*
+     * Optional. Allows to define an Event Hub name. Not applicable when
+     * destination is Storage Account.
+     */
+    @JsonProperty(value = "eventHubName")
+    private String eventHubName;
+
+    /**
+     * Get the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @return the eventHubName value.
+     */
+    public String eventHubName() {
+        return this.eventHubName;
+    }
+
+    /**
+     * Set the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
+     * Storage Account.
+     *
+     * @param eventHubName the eventHubName value to set.
+     * @return the DestinationMetadata object itself.
+     */
+    public DestinationMetadata withEventHubName(String eventHubName) {
+        this.eventHubName = eventHubName;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/IntelligencePackInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/IntelligencePackInner.java
index 21cbb135a612a..6c8601f08ee97 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/IntelligencePackInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/IntelligencePackInner.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Intelligence Pack containing a string name and boolean indicating if it's enabled. */
 @Fluent
 public final class IntelligencePackInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(IntelligencePackInner.class);
-
     /*
      * The name of the intelligence pack.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceInner.java
index 91c7206aaeba5..c8784c190106c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceInner.java
@@ -5,45 +5,37 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.LinkedServiceEntityStatus;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.Map;
 
 /** The top level Linked service resource container. */
-@JsonFlatten
 @Fluent
-public class LinkedServiceInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedServiceInner.class);
+public final class LinkedServiceInner extends ProxyResource {
+    /*
+     * The properties of the linked service.
+     */
+    @JsonProperty(value = "properties", required = true)
+    private LinkedServiceProperties innerProperties = new LinkedServiceProperties();
 
     /*
      * Resource tags.
      */
     @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
     private Map<String, String> tags;
 
-    /*
-     * The resource id of the resource that will be linked to the workspace.
-     * This should be used for linking resources which require read access
-     */
-    @JsonProperty(value = "properties.resourceId")
-    private String resourceId;
-
-    /*
-     * The resource id of the resource that will be linked to the workspace.
-     * This should be used for linking resources which require write access
-     */
-    @JsonProperty(value = "properties.writeAccessResourceId")
-    private String writeAccessResourceId;
-
-    /*
-     * The provisioning state of the linked service.
+    /**
+     * Get the innerProperties property: The properties of the linked service.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.provisioningState")
-    private LinkedServiceEntityStatus provisioningState;
+    private LinkedServiceProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the tags property: Resource tags.
@@ -72,7 +64,7 @@ public LinkedServiceInner withTags(Map<String, String> tags) {
      * @return the resourceId value.
      */
     public String resourceId() {
-        return this.resourceId;
+        return this.innerProperties() == null ? null : this.innerProperties().resourceId();
     }
 
     /**
@@ -83,7 +75,10 @@ public String resourceId() {
      * @return the LinkedServiceInner object itself.
      */
     public LinkedServiceInner withResourceId(String resourceId) {
-        this.resourceId = resourceId;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LinkedServiceProperties();
+        }
+        this.innerProperties().withResourceId(resourceId);
         return this;
     }
 
@@ -94,7 +89,7 @@ public LinkedServiceInner withResourceId(String resourceId) {
      * @return the writeAccessResourceId value.
      */
     public String writeAccessResourceId() {
-        return this.writeAccessResourceId;
+        return this.innerProperties() == null ? null : this.innerProperties().writeAccessResourceId();
     }
 
     /**
@@ -105,7 +100,10 @@ public String writeAccessResourceId() {
      * @return the LinkedServiceInner object itself.
      */
     public LinkedServiceInner withWriteAccessResourceId(String writeAccessResourceId) {
-        this.writeAccessResourceId = writeAccessResourceId;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LinkedServiceProperties();
+        }
+        this.innerProperties().withWriteAccessResourceId(writeAccessResourceId);
         return this;
     }
 
@@ -115,7 +113,7 @@ public LinkedServiceInner withWriteAccessResourceId(String writeAccessResourceId
      * @return the provisioningState value.
      */
     public LinkedServiceEntityStatus provisioningState() {
-        return this.provisioningState;
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
     }
 
     /**
@@ -125,7 +123,10 @@ public LinkedServiceEntityStatus provisioningState() {
      * @return the LinkedServiceInner object itself.
      */
     public LinkedServiceInner withProvisioningState(LinkedServiceEntityStatus provisioningState) {
-        this.provisioningState = provisioningState;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LinkedServiceProperties();
+        }
+        this.innerProperties().withProvisioningState(provisioningState);
         return this;
     }
 
@@ -135,5 +136,15 @@ public LinkedServiceInner withProvisioningState(LinkedServiceEntityStatus provis
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property innerProperties in model LinkedServiceInner"));
+        } else {
+            innerProperties().validate();
+        }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LinkedServiceInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceProperties.java
new file mode 100644
index 0000000000000..f04eb7c07045a
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedServiceProperties.java
@@ -0,0 +1,105 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.LinkedServiceEntityStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Linked service properties. */
+@Fluent
+public final class LinkedServiceProperties {
+    /*
+     * The resource id of the resource that will be linked to the workspace.
+     * This should be used for linking resources which require read access
+     */
+    @JsonProperty(value = "resourceId")
+    private String resourceId;
+
+    /*
+     * The resource id of the resource that will be linked to the workspace.
+     * This should be used for linking resources which require write access
+     */
+    @JsonProperty(value = "writeAccessResourceId")
+    private String writeAccessResourceId;
+
+    /*
+     * The provisioning state of the linked service.
+     */
+    @JsonProperty(value = "provisioningState")
+    private LinkedServiceEntityStatus provisioningState;
+
+    /**
+     * Get the resourceId property: The resource id of the resource that will be linked to the workspace. This should be
+     * used for linking resources which require read access.
+     *
+     * @return the resourceId value.
+     */
+    public String resourceId() {
+        return this.resourceId;
+    }
+
+    /**
+     * Set the resourceId property: The resource id of the resource that will be linked to the workspace. This should be
+     * used for linking resources which require read access.
+     *
+     * @param resourceId the resourceId value to set.
+     * @return the LinkedServiceProperties object itself.
+     */
+    public LinkedServiceProperties withResourceId(String resourceId) {
+        this.resourceId = resourceId;
+        return this;
+    }
+
+    /**
+     * Get the writeAccessResourceId property: The resource id of the resource that will be linked to the workspace.
+     * This should be used for linking resources which require write access.
+     *
+     * @return the writeAccessResourceId value.
+     */
+    public String writeAccessResourceId() {
+        return this.writeAccessResourceId;
+    }
+
+    /**
+     * Set the writeAccessResourceId property: The resource id of the resource that will be linked to the workspace.
+     * This should be used for linking resources which require write access.
+     *
+     * @param writeAccessResourceId the writeAccessResourceId value to set.
+     * @return the LinkedServiceProperties object itself.
+     */
+    public LinkedServiceProperties withWriteAccessResourceId(String writeAccessResourceId) {
+        this.writeAccessResourceId = writeAccessResourceId;
+        return this;
+    }
+
+    /**
+     * Get the provisioningState property: The provisioning state of the linked service.
+     *
+     * @return the provisioningState value.
+     */
+    public LinkedServiceEntityStatus provisioningState() {
+        return this.provisioningState;
+    }
+
+    /**
+     * Set the provisioningState property: The provisioning state of the linked service.
+     *
+     * @param provisioningState the provisioningState value to set.
+     * @return the LinkedServiceProperties object itself.
+     */
+    public LinkedServiceProperties withProvisioningState(LinkedServiceEntityStatus provisioningState) {
+        this.provisioningState = provisioningState;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsProperties.java
new file mode 100644
index 0000000000000..618daa0a2c8da
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsProperties.java
@@ -0,0 +1,63 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Linked storage accounts properties. */
+@Fluent
+public final class LinkedStorageAccountsProperties {
+    /*
+     * Linked storage accounts type.
+     */
+    @JsonProperty(value = "dataSourceType", access = JsonProperty.Access.WRITE_ONLY)
+    private DataSourceType dataSourceType;
+
+    /*
+     * Linked storage accounts resources ids.
+     */
+    @JsonProperty(value = "storageAccountIds")
+    private List<String> storageAccountIds;
+
+    /**
+     * Get the dataSourceType property: Linked storage accounts type.
+     *
+     * @return the dataSourceType value.
+     */
+    public DataSourceType dataSourceType() {
+        return this.dataSourceType;
+    }
+
+    /**
+     * Get the storageAccountIds property: Linked storage accounts resources ids.
+     *
+     * @return the storageAccountIds value.
+     */
+    public List<String> storageAccountIds() {
+        return this.storageAccountIds;
+    }
+
+    /**
+     * Set the storageAccountIds property: Linked storage accounts resources ids.
+     *
+     * @param storageAccountIds the storageAccountIds value to set.
+     * @return the LinkedStorageAccountsProperties object itself.
+     */
+    public LinkedStorageAccountsProperties withStorageAccountIds(List<String> storageAccountIds) {
+        this.storageAccountIds = storageAccountIds;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsResourceInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsResourceInner.java
index 01639e3857bc5..555598d1846f1 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsResourceInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LinkedStorageAccountsResourceInner.java
@@ -5,31 +5,29 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.DataSourceType;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Linked storage accounts top level resource container. */
-@JsonFlatten
 @Fluent
-public class LinkedStorageAccountsResourceInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedStorageAccountsResourceInner.class);
-
+public final class LinkedStorageAccountsResourceInner extends ProxyResource {
     /*
-     * Linked storage accounts type.
+     * Linked storage accounts properties.
      */
-    @JsonProperty(value = "properties.dataSourceType", access = JsonProperty.Access.WRITE_ONLY)
-    private DataSourceType dataSourceType;
+    @JsonProperty(value = "properties", required = true)
+    private LinkedStorageAccountsProperties innerProperties = new LinkedStorageAccountsProperties();
 
-    /*
-     * Linked storage accounts resources ids.
+    /**
+     * Get the innerProperties property: Linked storage accounts properties.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.storageAccountIds")
-    private List<String> storageAccountIds;
+    private LinkedStorageAccountsProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the dataSourceType property: Linked storage accounts type.
@@ -37,7 +35,7 @@ public class LinkedStorageAccountsResourceInner extends ProxyResource {
      * @return the dataSourceType value.
      */
     public DataSourceType dataSourceType() {
-        return this.dataSourceType;
+        return this.innerProperties() == null ? null : this.innerProperties().dataSourceType();
     }
 
     /**
@@ -46,7 +44,7 @@ public DataSourceType dataSourceType() {
      * @return the storageAccountIds value.
      */
     public List<String> storageAccountIds() {
-        return this.storageAccountIds;
+        return this.innerProperties() == null ? null : this.innerProperties().storageAccountIds();
     }
 
     /**
@@ -56,7 +54,10 @@ public List<String> storageAccountIds() {
      * @return the LinkedStorageAccountsResourceInner object itself.
      */
     public LinkedStorageAccountsResourceInner withStorageAccountIds(List<String> storageAccountIds) {
-        this.storageAccountIds = storageAccountIds;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LinkedStorageAccountsProperties();
+        }
+        this.innerProperties().withStorageAccountIds(storageAccountIds);
         return this;
     }
 
@@ -66,5 +67,15 @@ public LinkedStorageAccountsResourceInner withStorageAccountIds(List<String> sto
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property innerProperties in model LinkedStorageAccountsResourceInner"));
+        } else {
+            innerProperties().validate();
+        }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LinkedStorageAccountsResourceInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackInner.java
new file mode 100644
index 0000000000000..7d670653ab799
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackInner.java
@@ -0,0 +1,103 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.QueryPacksResource;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** An Log Analytics QueryPack definition. */
+@Fluent
+public final class LogAnalyticsQueryPackInner extends QueryPacksResource {
+    /*
+     * Properties that define a Log Analytics QueryPack resource.
+     */
+    @JsonProperty(value = "properties", required = true)
+    private LogAnalyticsQueryPackProperties innerProperties = new LogAnalyticsQueryPackProperties();
+
+    /**
+     * Get the innerProperties property: Properties that define a Log Analytics QueryPack resource.
+     *
+     * @return the innerProperties value.
+     */
+    private LogAnalyticsQueryPackProperties innerProperties() {
+        return this.innerProperties;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public LogAnalyticsQueryPackInner withLocation(String location) {
+        super.withLocation(location);
+        return this;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public LogAnalyticsQueryPackInner withTags(Map<String, String> tags) {
+        super.withTags(tags);
+        return this;
+    }
+
+    /**
+     * Get the queryPackId property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the queryPackId value.
+     */
+    public String queryPackId() {
+        return this.innerProperties() == null ? null : this.innerProperties().queryPackId();
+    }
+
+    /**
+     * Get the timeCreated property: Creation Date for the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    public OffsetDateTime timeCreated() {
+        return this.innerProperties() == null ? null : this.innerProperties().timeCreated();
+    }
+
+    /**
+     * Get the timeModified property: Last modified date of the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    public OffsetDateTime timeModified() {
+        return this.innerProperties() == null ? null : this.innerProperties().timeModified();
+    }
+
+    /**
+     * Get the provisioningState property: Current state of this QueryPack: whether or not is has been provisioned
+     * within the resource group it is defined. Users cannot change this value but are able to read from it. Values will
+     * include Succeeded, Deploying, Canceled, and Failed.
+     *
+     * @return the provisioningState value.
+     */
+    public String provisioningState() {
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    @Override
+    public void validate() {
+        super.validate();
+        if (innerProperties() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property innerProperties in model LogAnalyticsQueryPackInner"));
+        } else {
+            innerProperties().validate();
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LogAnalyticsQueryPackInner.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackProperties.java
new file mode 100644
index 0000000000000..d569862c247ec
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackProperties.java
@@ -0,0 +1,86 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Properties that define a Log Analytics QueryPack resource. */
+@Immutable
+public final class LogAnalyticsQueryPackProperties {
+    /*
+     * The unique ID of your application. This field cannot be changed.
+     */
+    @JsonProperty(value = "queryPackId", access = JsonProperty.Access.WRITE_ONLY)
+    private String queryPackId;
+
+    /*
+     * Creation Date for the Log Analytics QueryPack, in ISO 8601 format.
+     */
+    @JsonProperty(value = "timeCreated", access = JsonProperty.Access.WRITE_ONLY)
+    private OffsetDateTime timeCreated;
+
+    /*
+     * Last modified date of the Log Analytics QueryPack, in ISO 8601 format.
+     */
+    @JsonProperty(value = "timeModified", access = JsonProperty.Access.WRITE_ONLY)
+    private OffsetDateTime timeModified;
+
+    /*
+     * Current state of this QueryPack: whether or not is has been provisioned
+     * within the resource group it is defined. Users cannot change this value
+     * but are able to read from it. Values will include Succeeded, Deploying,
+     * Canceled, and Failed.
+     */
+    @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+    private String provisioningState;
+
+    /**
+     * Get the queryPackId property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the queryPackId value.
+     */
+    public String queryPackId() {
+        return this.queryPackId;
+    }
+
+    /**
+     * Get the timeCreated property: Creation Date for the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    public OffsetDateTime timeCreated() {
+        return this.timeCreated;
+    }
+
+    /**
+     * Get the timeModified property: Last modified date of the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    public OffsetDateTime timeModified() {
+        return this.timeModified;
+    }
+
+    /**
+     * Get the provisioningState property: Current state of this QueryPack: whether or not is has been provisioned
+     * within the resource group it is defined. Users cannot change this value but are able to read from it. Values will
+     * include Succeeded, Deploying, Canceled, and Failed.
+     *
+     * @return the provisioningState value.
+     */
+    public String provisioningState() {
+        return this.provisioningState;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryInner.java
new file mode 100644
index 0000000000000..74711b47452f6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryInner.java
@@ -0,0 +1,219 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.AzureResourceProperties;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/** A Log Analytics QueryPack-Query definition. */
+@Fluent
+public final class LogAnalyticsQueryPackQueryInner extends AzureResourceProperties {
+    /*
+     * Properties that define an Log Analytics QueryPack-Query resource.
+     */
+    @JsonProperty(value = "properties")
+    private LogAnalyticsQueryPackQueryProperties innerProperties;
+
+    /**
+     * Get the innerProperties property: Properties that define an Log Analytics QueryPack-Query resource.
+     *
+     * @return the innerProperties value.
+     */
+    private LogAnalyticsQueryPackQueryProperties innerProperties() {
+        return this.innerProperties;
+    }
+
+    /**
+     * Get the id property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the id value.
+     */
+    public String idPropertiesId() {
+        return this.innerProperties() == null ? null : this.innerProperties().id();
+    }
+
+    /**
+     * Get the displayName property: Unique display name for your query within the Query Pack.
+     *
+     * @return the displayName value.
+     */
+    public String displayName() {
+        return this.innerProperties() == null ? null : this.innerProperties().displayName();
+    }
+
+    /**
+     * Set the displayName property: Unique display name for your query within the Query Pack.
+     *
+     * @param displayName the displayName value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withDisplayName(String displayName) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withDisplayName(displayName);
+        return this;
+    }
+
+    /**
+     * Get the timeCreated property: Creation Date for the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    public OffsetDateTime timeCreated() {
+        return this.innerProperties() == null ? null : this.innerProperties().timeCreated();
+    }
+
+    /**
+     * Get the timeModified property: Last modified date of the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    public OffsetDateTime timeModified() {
+        return this.innerProperties() == null ? null : this.innerProperties().timeModified();
+    }
+
+    /**
+     * Get the author property: Object Id of user creating the query.
+     *
+     * @return the author value.
+     */
+    public String author() {
+        return this.innerProperties() == null ? null : this.innerProperties().author();
+    }
+
+    /**
+     * Get the description property: Description of the query.
+     *
+     * @return the description value.
+     */
+    public String description() {
+        return this.innerProperties() == null ? null : this.innerProperties().description();
+    }
+
+    /**
+     * Set the description property: Description of the query.
+     *
+     * @param description the description value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withDescription(String description) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withDescription(description);
+        return this;
+    }
+
+    /**
+     * Get the body property: Body of the query.
+     *
+     * @return the body value.
+     */
+    public String body() {
+        return this.innerProperties() == null ? null : this.innerProperties().body();
+    }
+
+    /**
+     * Set the body property: Body of the query.
+     *
+     * @param body the body value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withBody(String body) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withBody(body);
+        return this;
+    }
+
+    /**
+     * Get the related property: The related metadata items for the function.
+     *
+     * @return the related value.
+     */
+    public LogAnalyticsQueryPackQueryPropertiesRelated related() {
+        return this.innerProperties() == null ? null : this.innerProperties().related();
+    }
+
+    /**
+     * Set the related property: The related metadata items for the function.
+     *
+     * @param related the related value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withRelated(LogAnalyticsQueryPackQueryPropertiesRelated related) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withRelated(related);
+        return this;
+    }
+
+    /**
+     * Get the tags property: Tags associated with the query.
+     *
+     * @return the tags value.
+     */
+    public Map<String, List<String>> tags() {
+        return this.innerProperties() == null ? null : this.innerProperties().tags();
+    }
+
+    /**
+     * Set the tags property: Tags associated with the query.
+     *
+     * @param tags the tags value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withTags(Map<String, List<String>> tags) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withTags(tags);
+        return this;
+    }
+
+    /**
+     * Get the properties property: Additional properties that can be set for the query.
+     *
+     * @return the properties value.
+     */
+    public Object properties() {
+        return this.innerProperties() == null ? null : this.innerProperties().properties();
+    }
+
+    /**
+     * Set the properties property: Additional properties that can be set for the query.
+     *
+     * @param properties the properties value to set.
+     * @return the LogAnalyticsQueryPackQueryInner object itself.
+     */
+    public LogAnalyticsQueryPackQueryInner withProperties(Object properties) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new LogAnalyticsQueryPackQueryProperties();
+        }
+        this.innerProperties().withProperties(properties);
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    @Override
+    public void validate() {
+        super.validate();
+        if (innerProperties() != null) {
+            innerProperties().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryProperties.java
new file mode 100644
index 0000000000000..97579626b26df
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/LogAnalyticsQueryPackQueryProperties.java
@@ -0,0 +1,260 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/** Properties that define an Log Analytics QueryPack-Query resource. */
+@Fluent
+public final class LogAnalyticsQueryPackQueryProperties {
+    /*
+     * The unique ID of your application. This field cannot be changed.
+     */
+    @JsonProperty(value = "id", access = JsonProperty.Access.WRITE_ONLY)
+    private String id;
+
+    /*
+     * Unique display name for your query within the Query Pack.
+     */
+    @JsonProperty(value = "displayName", required = true)
+    private String displayName;
+
+    /*
+     * Creation Date for the Log Analytics Query, in ISO 8601 format.
+     */
+    @JsonProperty(value = "timeCreated", access = JsonProperty.Access.WRITE_ONLY)
+    private OffsetDateTime timeCreated;
+
+    /*
+     * Last modified date of the Log Analytics Query, in ISO 8601 format.
+     */
+    @JsonProperty(value = "timeModified", access = JsonProperty.Access.WRITE_ONLY)
+    private OffsetDateTime timeModified;
+
+    /*
+     * Object Id of user creating the query.
+     */
+    @JsonProperty(value = "author", access = JsonProperty.Access.WRITE_ONLY)
+    private String author;
+
+    /*
+     * Description of the query.
+     */
+    @JsonProperty(value = "description")
+    private String description;
+
+    /*
+     * Body of the query.
+     */
+    @JsonProperty(value = "body", required = true)
+    private String body;
+
+    /*
+     * The related metadata items for the function.
+     */
+    @JsonProperty(value = "related")
+    private LogAnalyticsQueryPackQueryPropertiesRelated related;
+
+    /*
+     * Tags associated with the query.
+     */
+    @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+    private Map<String, List<String>> tags;
+
+    /*
+     * Additional properties that can be set for the query.
+     */
+    @JsonProperty(value = "properties")
+    private Object properties;
+
+    /**
+     * Get the id property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the id value.
+     */
+    public String id() {
+        return this.id;
+    }
+
+    /**
+     * Get the displayName property: Unique display name for your query within the Query Pack.
+     *
+     * @return the displayName value.
+     */
+    public String displayName() {
+        return this.displayName;
+    }
+
+    /**
+     * Set the displayName property: Unique display name for your query within the Query Pack.
+     *
+     * @param displayName the displayName value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withDisplayName(String displayName) {
+        this.displayName = displayName;
+        return this;
+    }
+
+    /**
+     * Get the timeCreated property: Creation Date for the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    public OffsetDateTime timeCreated() {
+        return this.timeCreated;
+    }
+
+    /**
+     * Get the timeModified property: Last modified date of the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    public OffsetDateTime timeModified() {
+        return this.timeModified;
+    }
+
+    /**
+     * Get the author property: Object Id of user creating the query.
+     *
+     * @return the author value.
+     */
+    public String author() {
+        return this.author;
+    }
+
+    /**
+     * Get the description property: Description of the query.
+     *
+     * @return the description value.
+     */
+    public String description() {
+        return this.description;
+    }
+
+    /**
+     * Set the description property: Description of the query.
+     *
+     * @param description the description value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withDescription(String description) {
+        this.description = description;
+        return this;
+    }
+
+    /**
+     * Get the body property: Body of the query.
+     *
+     * @return the body value.
+     */
+    public String body() {
+        return this.body;
+    }
+
+    /**
+     * Set the body property: Body of the query.
+     *
+     * @param body the body value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withBody(String body) {
+        this.body = body;
+        return this;
+    }
+
+    /**
+     * Get the related property: The related metadata items for the function.
+     *
+     * @return the related value.
+     */
+    public LogAnalyticsQueryPackQueryPropertiesRelated related() {
+        return this.related;
+    }
+
+    /**
+     * Set the related property: The related metadata items for the function.
+     *
+     * @param related the related value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withRelated(LogAnalyticsQueryPackQueryPropertiesRelated related) {
+        this.related = related;
+        return this;
+    }
+
+    /**
+     * Get the tags property: Tags associated with the query.
+     *
+     * @return the tags value.
+     */
+    public Map<String, List<String>> tags() {
+        return this.tags;
+    }
+
+    /**
+     * Set the tags property: Tags associated with the query.
+     *
+     * @param tags the tags value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withTags(Map<String, List<String>> tags) {
+        this.tags = tags;
+        return this;
+    }
+
+    /**
+     * Get the properties property: Additional properties that can be set for the query.
+     *
+     * @return the properties value.
+     */
+    public Object properties() {
+        return this.properties;
+    }
+
+    /**
+     * Set the properties property: Additional properties that can be set for the query.
+     *
+     * @param properties the properties value to set.
+     * @return the LogAnalyticsQueryPackQueryProperties object itself.
+     */
+    public LogAnalyticsQueryPackQueryProperties withProperties(Object properties) {
+        this.properties = properties;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (displayName() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property displayName in model LogAnalyticsQueryPackQueryProperties"));
+        }
+        if (body() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property body in model LogAnalyticsQueryPackQueryProperties"));
+        }
+        if (related() != null) {
+            related().validate();
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LogAnalyticsQueryPackQueryProperties.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupInner.java
index 210342b8a60f4..6817f85dbcd3a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupInner.java
@@ -5,66 +5,26 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.time.OffsetDateTime;
 
 /** A management group that is connected to a workspace. */
-@JsonFlatten
 @Fluent
-public class ManagementGroupInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ManagementGroupInner.class);
-
-    /*
-     * The number of servers connected to the management group.
-     */
-    @JsonProperty(value = "properties.serverCount")
-    private Integer serverCount;
-
-    /*
-     * Gets or sets a value indicating whether the management group is a
-     * gateway.
-     */
-    @JsonProperty(value = "properties.isGateway")
-    private Boolean isGateway;
-
-    /*
-     * The name of the management group.
-     */
-    @JsonProperty(value = "properties.name")
-    private String name;
-
+public final class ManagementGroupInner {
     /*
-     * The unique ID of the management group.
+     * The properties of the management group.
      */
-    @JsonProperty(value = "properties.id")
-    private String id;
+    @JsonProperty(value = "properties")
+    private ManagementGroupProperties innerProperties;
 
-    /*
-     * The datetime that the management group was created.
-     */
-    @JsonProperty(value = "properties.created")
-    private OffsetDateTime created;
-
-    /*
-     * The last datetime that the management group received data.
-     */
-    @JsonProperty(value = "properties.dataReceived")
-    private OffsetDateTime dataReceived;
-
-    /*
-     * The version of System Center that is managing the management group.
-     */
-    @JsonProperty(value = "properties.version")
-    private String version;
-
-    /*
-     * The SKU of System Center that is managing the management group.
+    /**
+     * Get the innerProperties property: The properties of the management group.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.sku")
-    private String sku;
+    private ManagementGroupProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the serverCount property: The number of servers connected to the management group.
@@ -72,7 +32,7 @@ public class ManagementGroupInner {
      * @return the serverCount value.
      */
     public Integer serverCount() {
-        return this.serverCount;
+        return this.innerProperties() == null ? null : this.innerProperties().serverCount();
     }
 
     /**
@@ -82,7 +42,10 @@ public Integer serverCount() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withServerCount(Integer serverCount) {
-        this.serverCount = serverCount;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withServerCount(serverCount);
         return this;
     }
 
@@ -92,7 +55,7 @@ public ManagementGroupInner withServerCount(Integer serverCount) {
      * @return the isGateway value.
      */
     public Boolean isGateway() {
-        return this.isGateway;
+        return this.innerProperties() == null ? null : this.innerProperties().isGateway();
     }
 
     /**
@@ -102,7 +65,10 @@ public Boolean isGateway() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withIsGateway(Boolean isGateway) {
-        this.isGateway = isGateway;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withIsGateway(isGateway);
         return this;
     }
 
@@ -112,7 +78,7 @@ public ManagementGroupInner withIsGateway(Boolean isGateway) {
      * @return the name value.
      */
     public String name() {
-        return this.name;
+        return this.innerProperties() == null ? null : this.innerProperties().name();
     }
 
     /**
@@ -122,7 +88,10 @@ public String name() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withName(String name) {
-        this.name = name;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withName(name);
         return this;
     }
 
@@ -132,7 +101,7 @@ public ManagementGroupInner withName(String name) {
      * @return the id value.
      */
     public String id() {
-        return this.id;
+        return this.innerProperties() == null ? null : this.innerProperties().id();
     }
 
     /**
@@ -142,7 +111,10 @@ public String id() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withId(String id) {
-        this.id = id;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withId(id);
         return this;
     }
 
@@ -152,7 +124,7 @@ public ManagementGroupInner withId(String id) {
      * @return the created value.
      */
     public OffsetDateTime created() {
-        return this.created;
+        return this.innerProperties() == null ? null : this.innerProperties().created();
     }
 
     /**
@@ -162,7 +134,10 @@ public OffsetDateTime created() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withCreated(OffsetDateTime created) {
-        this.created = created;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withCreated(created);
         return this;
     }
 
@@ -172,7 +147,7 @@ public ManagementGroupInner withCreated(OffsetDateTime created) {
      * @return the dataReceived value.
      */
     public OffsetDateTime dataReceived() {
-        return this.dataReceived;
+        return this.innerProperties() == null ? null : this.innerProperties().dataReceived();
     }
 
     /**
@@ -182,7 +157,10 @@ public OffsetDateTime dataReceived() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withDataReceived(OffsetDateTime dataReceived) {
-        this.dataReceived = dataReceived;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withDataReceived(dataReceived);
         return this;
     }
 
@@ -192,7 +170,7 @@ public ManagementGroupInner withDataReceived(OffsetDateTime dataReceived) {
      * @return the version value.
      */
     public String version() {
-        return this.version;
+        return this.innerProperties() == null ? null : this.innerProperties().version();
     }
 
     /**
@@ -202,7 +180,10 @@ public String version() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withVersion(String version) {
-        this.version = version;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withVersion(version);
         return this;
     }
 
@@ -212,7 +193,7 @@ public ManagementGroupInner withVersion(String version) {
      * @return the sku value.
      */
     public String sku() {
-        return this.sku;
+        return this.innerProperties() == null ? null : this.innerProperties().sku();
     }
 
     /**
@@ -222,7 +203,10 @@ public String sku() {
      * @return the ManagementGroupInner object itself.
      */
     public ManagementGroupInner withSku(String sku) {
-        this.sku = sku;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ManagementGroupProperties();
+        }
+        this.innerProperties().withSku(sku);
         return this;
     }
 
@@ -232,5 +216,8 @@ public ManagementGroupInner withSku(String sku) {
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() != null) {
+            innerProperties().validate();
+        }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupProperties.java
new file mode 100644
index 0000000000000..f9f02fa9fa504
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/ManagementGroupProperties.java
@@ -0,0 +1,230 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Management group properties. */
+@Fluent
+public final class ManagementGroupProperties {
+    /*
+     * The number of servers connected to the management group.
+     */
+    @JsonProperty(value = "serverCount")
+    private Integer serverCount;
+
+    /*
+     * Gets or sets a value indicating whether the management group is a
+     * gateway.
+     */
+    @JsonProperty(value = "isGateway")
+    private Boolean isGateway;
+
+    /*
+     * The name of the management group.
+     */
+    @JsonProperty(value = "name")
+    private String name;
+
+    /*
+     * The unique ID of the management group.
+     */
+    @JsonProperty(value = "id")
+    private String id;
+
+    /*
+     * The datetime that the management group was created.
+     */
+    @JsonProperty(value = "created")
+    private OffsetDateTime created;
+
+    /*
+     * The last datetime that the management group received data.
+     */
+    @JsonProperty(value = "dataReceived")
+    private OffsetDateTime dataReceived;
+
+    /*
+     * The version of System Center that is managing the management group.
+     */
+    @JsonProperty(value = "version")
+    private String version;
+
+    /*
+     * The SKU of System Center that is managing the management group.
+     */
+    @JsonProperty(value = "sku")
+    private String sku;
+
+    /**
+     * Get the serverCount property: The number of servers connected to the management group.
+     *
+     * @return the serverCount value.
+     */
+    public Integer serverCount() {
+        return this.serverCount;
+    }
+
+    /**
+     * Set the serverCount property: The number of servers connected to the management group.
+     *
+     * @param serverCount the serverCount value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withServerCount(Integer serverCount) {
+        this.serverCount = serverCount;
+        return this;
+    }
+
+    /**
+     * Get the isGateway property: Gets or sets a value indicating whether the management group is a gateway.
+     *
+     * @return the isGateway value.
+     */
+    public Boolean isGateway() {
+        return this.isGateway;
+    }
+
+    /**
+     * Set the isGateway property: Gets or sets a value indicating whether the management group is a gateway.
+     *
+     * @param isGateway the isGateway value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withIsGateway(Boolean isGateway) {
+        this.isGateway = isGateway;
+        return this;
+    }
+
+    /**
+     * Get the name property: The name of the management group.
+     *
+     * @return the name value.
+     */
+    public String name() {
+        return this.name;
+    }
+
+    /**
+     * Set the name property: The name of the management group.
+     *
+     * @param name the name value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withName(String name) {
+        this.name = name;
+        return this;
+    }
+
+    /**
+     * Get the id property: The unique ID of the management group.
+     *
+     * @return the id value.
+     */
+    public String id() {
+        return this.id;
+    }
+
+    /**
+     * Set the id property: The unique ID of the management group.
+     *
+     * @param id the id value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withId(String id) {
+        this.id = id;
+        return this;
+    }
+
+    /**
+     * Get the created property: The datetime that the management group was created.
+     *
+     * @return the created value.
+     */
+    public OffsetDateTime created() {
+        return this.created;
+    }
+
+    /**
+     * Set the created property: The datetime that the management group was created.
+     *
+     * @param created the created value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withCreated(OffsetDateTime created) {
+        this.created = created;
+        return this;
+    }
+
+    /**
+     * Get the dataReceived property: The last datetime that the management group received data.
+     *
+     * @return the dataReceived value.
+     */
+    public OffsetDateTime dataReceived() {
+        return this.dataReceived;
+    }
+
+    /**
+     * Set the dataReceived property: The last datetime that the management group received data.
+     *
+     * @param dataReceived the dataReceived value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withDataReceived(OffsetDateTime dataReceived) {
+        this.dataReceived = dataReceived;
+        return this;
+    }
+
+    /**
+     * Get the version property: The version of System Center that is managing the management group.
+     *
+     * @return the version value.
+     */
+    public String version() {
+        return this.version;
+    }
+
+    /**
+     * Set the version property: The version of System Center that is managing the management group.
+     *
+     * @param version the version value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withVersion(String version) {
+        this.version = version;
+        return this;
+    }
+
+    /**
+     * Get the sku property: The SKU of System Center that is managing the management group.
+     *
+     * @return the sku value.
+     */
+    public String sku() {
+        return this.sku;
+    }
+
+    /**
+     * Set the sku property: The SKU of System Center that is managing the management group.
+     *
+     * @param sku the sku value to set.
+     * @return the ManagementGroupProperties object itself.
+     */
+    public ManagementGroupProperties withSku(String sku) {
+        this.sku = sku;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationInner.java
index d0cd3f670f0c4..2a2c31edd6339 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationInner.java
@@ -5,16 +5,12 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.OperationDisplay;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Supported operation of OperationalInsights resource provider. */
 @Fluent
 public final class OperationInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationInner.class);
-
     /*
      * Operation name: {provider}/{resource}/{operation}
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationStatusInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationStatusInner.java
index 39d0e82438aef..191eee031c035 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationStatusInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/OperationStatusInner.java
@@ -6,15 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.management.exception.ManagementError;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The status of operation. */
 @Fluent
 public final class OperationStatusInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationStatusInner.class);
-
     /*
      * The operation Id.
      */
@@ -46,7 +42,7 @@ public final class OperationStatusInner {
     private String status;
 
     /*
-     * The error detail of the operation if any.
+     * Error response The error detail of the operation if any.
      */
     @JsonProperty(value = "error")
     private ManagementError error;
@@ -152,7 +148,7 @@ public OperationStatusInner withStatus(String status) {
     }
 
     /**
-     * Get the error property: The error detail of the operation if any.
+     * Get the error property: Error response The error detail of the operation if any.
      *
      * @return the error value.
      */
@@ -161,7 +157,7 @@ public ManagementError error() {
     }
 
     /**
-     * Set the error property: The error detail of the operation if any.
+     * Set the error property: Error response The error detail of the operation if any.
      *
      * @param error the error value to set.
      * @return the OperationStatusInner object itself.
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchInner.java
index 69d58886efe69..3a6bd818875c2 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchInner.java
@@ -5,76 +5,31 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.Tag;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Value object for saved search results. */
-@JsonFlatten
 @Fluent
-public class SavedSearchInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SavedSearchInner.class);
-
+public final class SavedSearchInner extends ProxyResource {
     /*
-     * The ETag of the saved search.
+     * The ETag of the saved search. To override an existing saved search, use
+     * "*" or specify the current Etag
      */
     @JsonProperty(value = "etag")
     private String etag;
 
     /*
-     * The category of the saved search. This helps the user to find a saved
-     * search faster.
-     */
-    @JsonProperty(value = "properties.category", required = true)
-    private String category;
-
-    /*
-     * Saved search display name.
-     */
-    @JsonProperty(value = "properties.displayName", required = true)
-    private String displayName;
-
-    /*
-     * The query expression for the saved search.
-     */
-    @JsonProperty(value = "properties.query", required = true)
-    private String query;
-
-    /*
-     * The function alias if query serves as a function.
-     */
-    @JsonProperty(value = "properties.functionAlias")
-    private String functionAlias;
-
-    /*
-     * The optional function parameters if query serves as a function. Value
-     * should be in the following format: 'param-name1:type1 = default_value1,
-     * param-name2:type2 = default_value2'. For more examples and proper syntax
-     * please refer to
-     * https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions.
-     */
-    @JsonProperty(value = "properties.functionParameters")
-    private String functionParameters;
-
-    /*
-     * The version number of the query language. The current version is 2 and
-     * is the default.
-     */
-    @JsonProperty(value = "properties.version")
-    private Long version;
-
-    /*
-     * The tags attached to the saved search.
+     * The properties of the saved search.
      */
-    @JsonProperty(value = "properties.tags")
-    private List<Tag> tags;
+    @JsonProperty(value = "properties", required = true)
+    private SavedSearchProperties innerProperties = new SavedSearchProperties();
 
     /**
-     * Get the etag property: The ETag of the saved search.
+     * Get the etag property: The ETag of the saved search. To override an existing saved search, use "*" or specify the
+     * current Etag.
      *
      * @return the etag value.
      */
@@ -83,7 +38,8 @@ public String etag() {
     }
 
     /**
-     * Set the etag property: The ETag of the saved search.
+     * Set the etag property: The ETag of the saved search. To override an existing saved search, use "*" or specify the
+     * current Etag.
      *
      * @param etag the etag value to set.
      * @return the SavedSearchInner object itself.
@@ -93,13 +49,22 @@ public SavedSearchInner withEtag(String etag) {
         return this;
     }
 
+    /**
+     * Get the innerProperties property: The properties of the saved search.
+     *
+     * @return the innerProperties value.
+     */
+    private SavedSearchProperties innerProperties() {
+        return this.innerProperties;
+    }
+
     /**
      * Get the category property: The category of the saved search. This helps the user to find a saved search faster.
      *
      * @return the category value.
      */
     public String category() {
-        return this.category;
+        return this.innerProperties() == null ? null : this.innerProperties().category();
     }
 
     /**
@@ -109,7 +74,10 @@ public String category() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withCategory(String category) {
-        this.category = category;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withCategory(category);
         return this;
     }
 
@@ -119,7 +87,7 @@ public SavedSearchInner withCategory(String category) {
      * @return the displayName value.
      */
     public String displayName() {
-        return this.displayName;
+        return this.innerProperties() == null ? null : this.innerProperties().displayName();
     }
 
     /**
@@ -129,7 +97,10 @@ public String displayName() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withDisplayName(String displayName) {
-        this.displayName = displayName;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withDisplayName(displayName);
         return this;
     }
 
@@ -139,7 +110,7 @@ public SavedSearchInner withDisplayName(String displayName) {
      * @return the query value.
      */
     public String query() {
-        return this.query;
+        return this.innerProperties() == null ? null : this.innerProperties().query();
     }
 
     /**
@@ -149,7 +120,10 @@ public String query() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withQuery(String query) {
-        this.query = query;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withQuery(query);
         return this;
     }
 
@@ -159,7 +133,7 @@ public SavedSearchInner withQuery(String query) {
      * @return the functionAlias value.
      */
     public String functionAlias() {
-        return this.functionAlias;
+        return this.innerProperties() == null ? null : this.innerProperties().functionAlias();
     }
 
     /**
@@ -169,7 +143,10 @@ public String functionAlias() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withFunctionAlias(String functionAlias) {
-        this.functionAlias = functionAlias;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withFunctionAlias(functionAlias);
         return this;
     }
 
@@ -182,7 +159,7 @@ public SavedSearchInner withFunctionAlias(String functionAlias) {
      * @return the functionParameters value.
      */
     public String functionParameters() {
-        return this.functionParameters;
+        return this.innerProperties() == null ? null : this.innerProperties().functionParameters();
     }
 
     /**
@@ -195,7 +172,10 @@ public String functionParameters() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withFunctionParameters(String functionParameters) {
-        this.functionParameters = functionParameters;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withFunctionParameters(functionParameters);
         return this;
     }
 
@@ -205,7 +185,7 @@ public SavedSearchInner withFunctionParameters(String functionParameters) {
      * @return the version value.
      */
     public Long version() {
-        return this.version;
+        return this.innerProperties() == null ? null : this.innerProperties().version();
     }
 
     /**
@@ -215,7 +195,10 @@ public Long version() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withVersion(Long version) {
-        this.version = version;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withVersion(version);
         return this;
     }
 
@@ -225,7 +208,7 @@ public SavedSearchInner withVersion(Long version) {
      * @return the tags value.
      */
     public List<Tag> tags() {
-        return this.tags;
+        return this.innerProperties() == null ? null : this.innerProperties().tags();
     }
 
     /**
@@ -235,7 +218,10 @@ public List<Tag> tags() {
      * @return the SavedSearchInner object itself.
      */
     public SavedSearchInner withTags(List<Tag> tags) {
-        this.tags = tags;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new SavedSearchProperties();
+        }
+        this.innerProperties().withTags(tags);
         return this;
     }
 
@@ -245,23 +231,15 @@ public SavedSearchInner withTags(List<Tag> tags) {
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
-        if (category() == null) {
-            throw logger
-                .logExceptionAsError(
-                    new IllegalArgumentException("Missing required property category in model SavedSearchInner"));
-        }
-        if (displayName() == null) {
-            throw logger
+        if (innerProperties() == null) {
+            throw LOGGER
                 .logExceptionAsError(
-                    new IllegalArgumentException("Missing required property displayName in model SavedSearchInner"));
-        }
-        if (query() == null) {
-            throw logger
-                .logExceptionAsError(
-                    new IllegalArgumentException("Missing required property query in model SavedSearchInner"));
-        }
-        if (tags() != null) {
-            tags().forEach(e -> e.validate());
+                    new IllegalArgumentException(
+                        "Missing required property innerProperties in model SavedSearchInner"));
+        } else {
+            innerProperties().validate();
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(SavedSearchInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchProperties.java
new file mode 100644
index 0000000000000..5bf7644a8ee67
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchProperties.java
@@ -0,0 +1,238 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.Tag;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Value object for saved search results. */
+@Fluent
+public final class SavedSearchProperties {
+    /*
+     * The category of the saved search. This helps the user to find a saved
+     * search faster.
+     */
+    @JsonProperty(value = "category", required = true)
+    private String category;
+
+    /*
+     * Saved search display name.
+     */
+    @JsonProperty(value = "displayName", required = true)
+    private String displayName;
+
+    /*
+     * The query expression for the saved search.
+     */
+    @JsonProperty(value = "query", required = true)
+    private String query;
+
+    /*
+     * The function alias if query serves as a function.
+     */
+    @JsonProperty(value = "functionAlias")
+    private String functionAlias;
+
+    /*
+     * The optional function parameters if query serves as a function. Value
+     * should be in the following format: 'param-name1:type1 = default_value1,
+     * param-name2:type2 = default_value2'. For more examples and proper syntax
+     * please refer to
+     * https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions.
+     */
+    @JsonProperty(value = "functionParameters")
+    private String functionParameters;
+
+    /*
+     * The version number of the query language. The current version is 2 and
+     * is the default.
+     */
+    @JsonProperty(value = "version")
+    private Long version;
+
+    /*
+     * The tags attached to the saved search.
+     */
+    @JsonProperty(value = "tags")
+    private List<Tag> tags;
+
+    /**
+     * Get the category property: The category of the saved search. This helps the user to find a saved search faster.
+     *
+     * @return the category value.
+     */
+    public String category() {
+        return this.category;
+    }
+
+    /**
+     * Set the category property: The category of the saved search. This helps the user to find a saved search faster.
+     *
+     * @param category the category value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withCategory(String category) {
+        this.category = category;
+        return this;
+    }
+
+    /**
+     * Get the displayName property: Saved search display name.
+     *
+     * @return the displayName value.
+     */
+    public String displayName() {
+        return this.displayName;
+    }
+
+    /**
+     * Set the displayName property: Saved search display name.
+     *
+     * @param displayName the displayName value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withDisplayName(String displayName) {
+        this.displayName = displayName;
+        return this;
+    }
+
+    /**
+     * Get the query property: The query expression for the saved search.
+     *
+     * @return the query value.
+     */
+    public String query() {
+        return this.query;
+    }
+
+    /**
+     * Set the query property: The query expression for the saved search.
+     *
+     * @param query the query value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withQuery(String query) {
+        this.query = query;
+        return this;
+    }
+
+    /**
+     * Get the functionAlias property: The function alias if query serves as a function.
+     *
+     * @return the functionAlias value.
+     */
+    public String functionAlias() {
+        return this.functionAlias;
+    }
+
+    /**
+     * Set the functionAlias property: The function alias if query serves as a function.
+     *
+     * @param functionAlias the functionAlias value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withFunctionAlias(String functionAlias) {
+        this.functionAlias = functionAlias;
+        return this;
+    }
+
+    /**
+     * Get the functionParameters property: The optional function parameters if query serves as a function. Value should
+     * be in the following format: 'param-name1:type1 = default_value1, param-name2:type2 = default_value2'. For more
+     * examples and proper syntax please refer to
+     * https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions.
+     *
+     * @return the functionParameters value.
+     */
+    public String functionParameters() {
+        return this.functionParameters;
+    }
+
+    /**
+     * Set the functionParameters property: The optional function parameters if query serves as a function. Value should
+     * be in the following format: 'param-name1:type1 = default_value1, param-name2:type2 = default_value2'. For more
+     * examples and proper syntax please refer to
+     * https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions.
+     *
+     * @param functionParameters the functionParameters value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withFunctionParameters(String functionParameters) {
+        this.functionParameters = functionParameters;
+        return this;
+    }
+
+    /**
+     * Get the version property: The version number of the query language. The current version is 2 and is the default.
+     *
+     * @return the version value.
+     */
+    public Long version() {
+        return this.version;
+    }
+
+    /**
+     * Set the version property: The version number of the query language. The current version is 2 and is the default.
+     *
+     * @param version the version value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withVersion(Long version) {
+        this.version = version;
+        return this;
+    }
+
+    /**
+     * Get the tags property: The tags attached to the saved search.
+     *
+     * @return the tags value.
+     */
+    public List<Tag> tags() {
+        return this.tags;
+    }
+
+    /**
+     * Set the tags property: The tags attached to the saved search.
+     *
+     * @param tags the tags value to set.
+     * @return the SavedSearchProperties object itself.
+     */
+    public SavedSearchProperties withTags(List<Tag> tags) {
+        this.tags = tags;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (category() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException("Missing required property category in model SavedSearchProperties"));
+        }
+        if (displayName() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property displayName in model SavedSearchProperties"));
+        }
+        if (query() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException("Missing required property query in model SavedSearchProperties"));
+        }
+        if (tags() != null) {
+            tags().forEach(e -> e.validate());
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(SavedSearchProperties.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchesListResultInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchesListResultInner.java
index eab26be41e29e..32adb847cef14 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchesListResultInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SavedSearchesListResultInner.java
@@ -5,16 +5,12 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The saved search list operation response. */
 @Fluent
 public final class SavedSearchesListResultInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SavedSearchesListResultInner.class);
-
     /*
      * The array of result values.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SearchGetSchemaResponseInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SearchGetSchemaResponseInner.java
index 1f860762e99f2..7f4a2de486474 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SearchGetSchemaResponseInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SearchGetSchemaResponseInner.java
@@ -5,18 +5,14 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.SearchMetadata;
 import com.azure.resourcemanager.loganalytics.models.SearchSchemaValue;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The get schema operation response. */
 @Fluent
 public final class SearchGetSchemaResponseInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SearchGetSchemaResponseInner.class);
-
     /*
      * The metadata from search results.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SharedKeysInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SharedKeysInner.java
index f691605aad1bf..8409043f14660 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SharedKeysInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/SharedKeysInner.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The shared keys for a workspace. */
 @Fluent
 public final class SharedKeysInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SharedKeysInner.class);
-
     /*
      * The primary shared key of a workspace.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightInner.java
index 035a1a22ef073..ff67299ddb480 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightInner.java
@@ -5,21 +5,22 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.StorageAccount;
 import com.azure.resourcemanager.loganalytics.models.StorageInsightStatus;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 import java.util.Map;
 
 /** The top level storage insight resource container. */
-@JsonFlatten
 @Fluent
-public class StorageInsightInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(StorageInsightInner.class);
+public final class StorageInsightInner extends ProxyResource {
+    /*
+     * Storage insight properties.
+     */
+    @JsonProperty(value = "properties")
+    private StorageInsightProperties innerProperties;
 
     /*
      * The ETag of the storage insight.
@@ -31,31 +32,17 @@ public class StorageInsightInner extends ProxyResource {
      * Resource tags.
      */
     @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
     private Map<String, String> tags;
 
-    /*
-     * The names of the blob containers that the workspace should read
-     */
-    @JsonProperty(value = "properties.containers")
-    private List<String> containers;
-
-    /*
-     * The names of the Azure tables that the workspace should read
-     */
-    @JsonProperty(value = "properties.tables")
-    private List<String> tables;
-
-    /*
-     * The storage account connection details
-     */
-    @JsonProperty(value = "properties.storageAccount")
-    private StorageAccount storageAccount;
-
-    /*
-     * The status of the storage insight
+    /**
+     * Get the innerProperties property: Storage insight properties.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.status", access = JsonProperty.Access.WRITE_ONLY)
-    private StorageInsightStatus status;
+    private StorageInsightProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the etag property: The ETag of the storage insight.
@@ -103,7 +90,7 @@ public StorageInsightInner withTags(Map<String, String> tags) {
      * @return the containers value.
      */
     public List<String> containers() {
-        return this.containers;
+        return this.innerProperties() == null ? null : this.innerProperties().containers();
     }
 
     /**
@@ -113,7 +100,10 @@ public List<String> containers() {
      * @return the StorageInsightInner object itself.
      */
     public StorageInsightInner withContainers(List<String> containers) {
-        this.containers = containers;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new StorageInsightProperties();
+        }
+        this.innerProperties().withContainers(containers);
         return this;
     }
 
@@ -123,7 +113,7 @@ public StorageInsightInner withContainers(List<String> containers) {
      * @return the tables value.
      */
     public List<String> tables() {
-        return this.tables;
+        return this.innerProperties() == null ? null : this.innerProperties().tables();
     }
 
     /**
@@ -133,7 +123,10 @@ public List<String> tables() {
      * @return the StorageInsightInner object itself.
      */
     public StorageInsightInner withTables(List<String> tables) {
-        this.tables = tables;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new StorageInsightProperties();
+        }
+        this.innerProperties().withTables(tables);
         return this;
     }
 
@@ -143,7 +136,7 @@ public StorageInsightInner withTables(List<String> tables) {
      * @return the storageAccount value.
      */
     public StorageAccount storageAccount() {
-        return this.storageAccount;
+        return this.innerProperties() == null ? null : this.innerProperties().storageAccount();
     }
 
     /**
@@ -153,7 +146,10 @@ public StorageAccount storageAccount() {
      * @return the StorageInsightInner object itself.
      */
     public StorageInsightInner withStorageAccount(StorageAccount storageAccount) {
-        this.storageAccount = storageAccount;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new StorageInsightProperties();
+        }
+        this.innerProperties().withStorageAccount(storageAccount);
         return this;
     }
 
@@ -163,7 +159,7 @@ public StorageInsightInner withStorageAccount(StorageAccount storageAccount) {
      * @return the status value.
      */
     public StorageInsightStatus status() {
-        return this.status;
+        return this.innerProperties() == null ? null : this.innerProperties().status();
     }
 
     /**
@@ -172,11 +168,8 @@ public StorageInsightStatus status() {
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
-        if (storageAccount() != null) {
-            storageAccount().validate();
-        }
-        if (status() != null) {
-            status().validate();
+        if (innerProperties() != null) {
+            innerProperties().validate();
         }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightProperties.java
new file mode 100644
index 0000000000000..f3cf405b44c8f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/StorageInsightProperties.java
@@ -0,0 +1,130 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.models.StorageAccount;
+import com.azure.resourcemanager.loganalytics.models.StorageInsightStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Storage insight properties. */
+@Fluent
+public final class StorageInsightProperties {
+    /*
+     * The names of the blob containers that the workspace should read
+     */
+    @JsonProperty(value = "containers")
+    private List<String> containers;
+
+    /*
+     * The names of the Azure tables that the workspace should read
+     */
+    @JsonProperty(value = "tables")
+    private List<String> tables;
+
+    /*
+     * The storage account connection details
+     */
+    @JsonProperty(value = "storageAccount", required = true)
+    private StorageAccount storageAccount;
+
+    /*
+     * The status of the storage insight
+     */
+    @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+    private StorageInsightStatus status;
+
+    /**
+     * Get the containers property: The names of the blob containers that the workspace should read.
+     *
+     * @return the containers value.
+     */
+    public List<String> containers() {
+        return this.containers;
+    }
+
+    /**
+     * Set the containers property: The names of the blob containers that the workspace should read.
+     *
+     * @param containers the containers value to set.
+     * @return the StorageInsightProperties object itself.
+     */
+    public StorageInsightProperties withContainers(List<String> containers) {
+        this.containers = containers;
+        return this;
+    }
+
+    /**
+     * Get the tables property: The names of the Azure tables that the workspace should read.
+     *
+     * @return the tables value.
+     */
+    public List<String> tables() {
+        return this.tables;
+    }
+
+    /**
+     * Set the tables property: The names of the Azure tables that the workspace should read.
+     *
+     * @param tables the tables value to set.
+     * @return the StorageInsightProperties object itself.
+     */
+    public StorageInsightProperties withTables(List<String> tables) {
+        this.tables = tables;
+        return this;
+    }
+
+    /**
+     * Get the storageAccount property: The storage account connection details.
+     *
+     * @return the storageAccount value.
+     */
+    public StorageAccount storageAccount() {
+        return this.storageAccount;
+    }
+
+    /**
+     * Set the storageAccount property: The storage account connection details.
+     *
+     * @param storageAccount the storageAccount value to set.
+     * @return the StorageInsightProperties object itself.
+     */
+    public StorageInsightProperties withStorageAccount(StorageAccount storageAccount) {
+        this.storageAccount = storageAccount;
+        return this;
+    }
+
+    /**
+     * Get the status property: The status of the storage insight.
+     *
+     * @return the status value.
+     */
+    public StorageInsightStatus status() {
+        return this.status;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (storageAccount() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property storageAccount in model StorageInsightProperties"));
+        } else {
+            storageAccount().validate();
+        }
+        if (status() != null) {
+            status().validate();
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(StorageInsightProperties.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableInner.java
index 97f0a3960707e..c45415a51ff6b 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableInner.java
@@ -5,52 +5,255 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.ProxyResource;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.azure.resourcemanager.loganalytics.models.ProvisioningStateEnum;
+import com.azure.resourcemanager.loganalytics.models.RestoredLogs;
+import com.azure.resourcemanager.loganalytics.models.ResultStatistics;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import com.azure.resourcemanager.loganalytics.models.SearchResults;
+import com.azure.resourcemanager.loganalytics.models.SystemDataAutoGenerated;
+import com.azure.resourcemanager.loganalytics.models.TablePlanEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Workspace data table definition. */
-@JsonFlatten
 @Fluent
-public class TableInner extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(TableInner.class);
+public final class TableInner extends ProxyResource {
+    /*
+     * Table's properties.
+     */
+    @JsonProperty(value = "properties")
+    private TableProperties innerProperties;
 
     /*
-     * The data table data retention in days, between 30 and 730. Setting this
-     * property to null will default to the workspace retention.
+     * Metadata pertaining to creation and last modification of the resource.
      */
-    @JsonProperty(value = "properties.retentionInDays")
-    private Integer retentionInDays;
+    @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+    private SystemDataAutoGenerated systemData;
+
+    /**
+     * Get the innerProperties property: Table's properties.
+     *
+     * @return the innerProperties value.
+     */
+    private TableProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
-     * Get the retentionInDays property: The data table data retention in days, between 30 and 730. Setting this
-     * property to null will default to the workspace retention.
+     * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+     *
+     * @return the systemData value.
+     */
+    public SystemDataAutoGenerated systemData() {
+        return this.systemData;
+    }
+
+    /**
+     * Get the retentionInDays property: The table retention in days, between 4 and 730. Setting this property to -1
+     * will default to the workspace retention.
      *
      * @return the retentionInDays value.
      */
     public Integer retentionInDays() {
-        return this.retentionInDays;
+        return this.innerProperties() == null ? null : this.innerProperties().retentionInDays();
     }
 
     /**
-     * Set the retentionInDays property: The data table data retention in days, between 30 and 730. Setting this
-     * property to null will default to the workspace retention.
+     * Set the retentionInDays property: The table retention in days, between 4 and 730. Setting this property to -1
+     * will default to the workspace retention.
      *
      * @param retentionInDays the retentionInDays value to set.
      * @return the TableInner object itself.
      */
     public TableInner withRetentionInDays(Integer retentionInDays) {
-        this.retentionInDays = retentionInDays;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withRetentionInDays(retentionInDays);
+        return this;
+    }
+
+    /**
+     * Get the totalRetentionInDays property: The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     *
+     * @return the totalRetentionInDays value.
+     */
+    public Integer totalRetentionInDays() {
+        return this.innerProperties() == null ? null : this.innerProperties().totalRetentionInDays();
+    }
+
+    /**
+     * Set the totalRetentionInDays property: The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     *
+     * @param totalRetentionInDays the totalRetentionInDays value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withTotalRetentionInDays(Integer totalRetentionInDays) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withTotalRetentionInDays(totalRetentionInDays);
+        return this;
+    }
+
+    /**
+     * Get the archiveRetentionInDays property: The table data archive retention in days. Calculated as
+     * (totalRetentionInDays-retentionInDays).
+     *
+     * @return the archiveRetentionInDays value.
+     */
+    public Integer archiveRetentionInDays() {
+        return this.innerProperties() == null ? null : this.innerProperties().archiveRetentionInDays();
+    }
+
+    /**
+     * Get the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @return the searchResults value.
+     */
+    public SearchResults searchResults() {
+        return this.innerProperties() == null ? null : this.innerProperties().searchResults();
+    }
+
+    /**
+     * Set the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @param searchResults the searchResults value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withSearchResults(SearchResults searchResults) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withSearchResults(searchResults);
         return this;
     }
 
+    /**
+     * Get the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @return the restoredLogs value.
+     */
+    public RestoredLogs restoredLogs() {
+        return this.innerProperties() == null ? null : this.innerProperties().restoredLogs();
+    }
+
+    /**
+     * Set the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @param restoredLogs the restoredLogs value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withRestoredLogs(RestoredLogs restoredLogs) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withRestoredLogs(restoredLogs);
+        return this;
+    }
+
+    /**
+     * Get the resultStatistics property: Search job execution statistics.
+     *
+     * @return the resultStatistics value.
+     */
+    public ResultStatistics resultStatistics() {
+        return this.innerProperties() == null ? null : this.innerProperties().resultStatistics();
+    }
+
+    /**
+     * Set the resultStatistics property: Search job execution statistics.
+     *
+     * @param resultStatistics the resultStatistics value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withResultStatistics(ResultStatistics resultStatistics) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withResultStatistics(resultStatistics);
+        return this;
+    }
+
+    /**
+     * Get the plan property: Instruct the system how to handle and charge the logs ingested to this table.
+     *
+     * @return the plan value.
+     */
+    public TablePlanEnum plan() {
+        return this.innerProperties() == null ? null : this.innerProperties().plan();
+    }
+
+    /**
+     * Set the plan property: Instruct the system how to handle and charge the logs ingested to this table.
+     *
+     * @param plan the plan value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withPlan(TablePlanEnum plan) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withPlan(plan);
+        return this;
+    }
+
+    /**
+     * Get the lastPlanModifiedDate property: The timestamp that table plan was last modified (UTC).
+     *
+     * @return the lastPlanModifiedDate value.
+     */
+    public String lastPlanModifiedDate() {
+        return this.innerProperties() == null ? null : this.innerProperties().lastPlanModifiedDate();
+    }
+
+    /**
+     * Get the schema property: Table schema.
+     *
+     * @return the schema value.
+     */
+    public Schema schema() {
+        return this.innerProperties() == null ? null : this.innerProperties().schema();
+    }
+
+    /**
+     * Set the schema property: Table schema.
+     *
+     * @param schema the schema value to set.
+     * @return the TableInner object itself.
+     */
+    public TableInner withSchema(Schema schema) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new TableProperties();
+        }
+        this.innerProperties().withSchema(schema);
+        return this;
+    }
+
+    /**
+     * Get the provisioningState property: Table's current provisioning state. If set to 'updating', indicates a
+     * resource lock due to ongoing operation, forbidding any update to the table until the ongoing operation is
+     * concluded.
+     *
+     * @return the provisioningState value.
+     */
+    public ProvisioningStateEnum provisioningState() {
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+    }
+
     /**
      * Validates the instance.
      *
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() != null) {
+            innerProperties().validate();
+        }
+        if (systemData() != null) {
+            systemData().validate();
+        }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableProperties.java
new file mode 100644
index 0000000000000..cae44b73dc3de
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/TableProperties.java
@@ -0,0 +1,278 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.ProvisioningStateEnum;
+import com.azure.resourcemanager.loganalytics.models.RestoredLogs;
+import com.azure.resourcemanager.loganalytics.models.ResultStatistics;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import com.azure.resourcemanager.loganalytics.models.SearchResults;
+import com.azure.resourcemanager.loganalytics.models.TablePlanEnum;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Table properties. */
+@Fluent
+public final class TableProperties {
+    /*
+     * The table retention in days, between 4 and 730. Setting this property to
+     * -1 will default to the workspace retention.
+     */
+    @JsonProperty(value = "retentionInDays")
+    private Integer retentionInDays;
+
+    /*
+     * The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     */
+    @JsonProperty(value = "totalRetentionInDays")
+    private Integer totalRetentionInDays;
+
+    /*
+     * The table data archive retention in days. Calculated as
+     * (totalRetentionInDays-retentionInDays)
+     */
+    @JsonProperty(value = "archiveRetentionInDays", access = JsonProperty.Access.WRITE_ONLY)
+    private Integer archiveRetentionInDays;
+
+    /*
+     * Parameters of the search job that initiated this table.
+     */
+    @JsonProperty(value = "searchResults")
+    private SearchResults searchResults;
+
+    /*
+     * Parameters of the restore operation that initiated this table.
+     */
+    @JsonProperty(value = "restoredLogs")
+    private RestoredLogs restoredLogs;
+
+    /*
+     * Search job execution statistics.
+     */
+    @JsonProperty(value = "resultStatistics")
+    private ResultStatistics resultStatistics;
+
+    /*
+     * Instruct the system how to handle and charge the logs ingested to this
+     * table.
+     */
+    @JsonProperty(value = "plan")
+    private TablePlanEnum plan;
+
+    /*
+     * The timestamp that table plan was last modified (UTC).
+     */
+    @JsonProperty(value = "lastPlanModifiedDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String lastPlanModifiedDate;
+
+    /*
+     * Table schema.
+     */
+    @JsonProperty(value = "schema")
+    private Schema schema;
+
+    /*
+     * Table's current provisioning state. If set to 'updating', indicates a
+     * resource lock due to ongoing operation, forbidding any update to the
+     * table until the ongoing operation is concluded.
+     */
+    @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+    private ProvisioningStateEnum provisioningState;
+
+    /**
+     * Get the retentionInDays property: The table retention in days, between 4 and 730. Setting this property to -1
+     * will default to the workspace retention.
+     *
+     * @return the retentionInDays value.
+     */
+    public Integer retentionInDays() {
+        return this.retentionInDays;
+    }
+
+    /**
+     * Set the retentionInDays property: The table retention in days, between 4 and 730. Setting this property to -1
+     * will default to the workspace retention.
+     *
+     * @param retentionInDays the retentionInDays value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withRetentionInDays(Integer retentionInDays) {
+        this.retentionInDays = retentionInDays;
+        return this;
+    }
+
+    /**
+     * Get the totalRetentionInDays property: The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     *
+     * @return the totalRetentionInDays value.
+     */
+    public Integer totalRetentionInDays() {
+        return this.totalRetentionInDays;
+    }
+
+    /**
+     * Set the totalRetentionInDays property: The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     *
+     * @param totalRetentionInDays the totalRetentionInDays value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withTotalRetentionInDays(Integer totalRetentionInDays) {
+        this.totalRetentionInDays = totalRetentionInDays;
+        return this;
+    }
+
+    /**
+     * Get the archiveRetentionInDays property: The table data archive retention in days. Calculated as
+     * (totalRetentionInDays-retentionInDays).
+     *
+     * @return the archiveRetentionInDays value.
+     */
+    public Integer archiveRetentionInDays() {
+        return this.archiveRetentionInDays;
+    }
+
+    /**
+     * Get the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @return the searchResults value.
+     */
+    public SearchResults searchResults() {
+        return this.searchResults;
+    }
+
+    /**
+     * Set the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @param searchResults the searchResults value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withSearchResults(SearchResults searchResults) {
+        this.searchResults = searchResults;
+        return this;
+    }
+
+    /**
+     * Get the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @return the restoredLogs value.
+     */
+    public RestoredLogs restoredLogs() {
+        return this.restoredLogs;
+    }
+
+    /**
+     * Set the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @param restoredLogs the restoredLogs value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withRestoredLogs(RestoredLogs restoredLogs) {
+        this.restoredLogs = restoredLogs;
+        return this;
+    }
+
+    /**
+     * Get the resultStatistics property: Search job execution statistics.
+     *
+     * @return the resultStatistics value.
+     */
+    public ResultStatistics resultStatistics() {
+        return this.resultStatistics;
+    }
+
+    /**
+     * Set the resultStatistics property: Search job execution statistics.
+     *
+     * @param resultStatistics the resultStatistics value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withResultStatistics(ResultStatistics resultStatistics) {
+        this.resultStatistics = resultStatistics;
+        return this;
+    }
+
+    /**
+     * Get the plan property: Instruct the system how to handle and charge the logs ingested to this table.
+     *
+     * @return the plan value.
+     */
+    public TablePlanEnum plan() {
+        return this.plan;
+    }
+
+    /**
+     * Set the plan property: Instruct the system how to handle and charge the logs ingested to this table.
+     *
+     * @param plan the plan value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withPlan(TablePlanEnum plan) {
+        this.plan = plan;
+        return this;
+    }
+
+    /**
+     * Get the lastPlanModifiedDate property: The timestamp that table plan was last modified (UTC).
+     *
+     * @return the lastPlanModifiedDate value.
+     */
+    public String lastPlanModifiedDate() {
+        return this.lastPlanModifiedDate;
+    }
+
+    /**
+     * Get the schema property: Table schema.
+     *
+     * @return the schema value.
+     */
+    public Schema schema() {
+        return this.schema;
+    }
+
+    /**
+     * Set the schema property: Table schema.
+     *
+     * @param schema the schema value to set.
+     * @return the TableProperties object itself.
+     */
+    public TableProperties withSchema(Schema schema) {
+        this.schema = schema;
+        return this;
+    }
+
+    /**
+     * Get the provisioningState property: Table's current provisioning state. If set to 'updating', indicates a
+     * resource lock due to ongoing operation, forbidding any update to the table until the ongoing operation is
+     * concluded.
+     *
+     * @return the provisioningState value.
+     */
+    public ProvisioningStateEnum provisioningState() {
+        return this.provisioningState;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (searchResults() != null) {
+            searchResults().validate();
+        }
+        if (restoredLogs() != null) {
+            restoredLogs().validate();
+        }
+        if (resultStatistics() != null) {
+            resultStatistics().validate();
+        }
+        if (schema() != null) {
+            schema().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/UsageMetricInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/UsageMetricInner.java
index cfed6590e933b..2eaa34c2b61c8 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/UsageMetricInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/UsageMetricInner.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.MetricName;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.time.OffsetDateTime;
 
 /** A metric describing the usage of a resource. */
 @Fluent
 public final class UsageMetricInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(UsageMetricInner.class);
-
     /*
      * The name of the metric.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceInner.java
index ff5401ba2e353..67b245e380caf 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceInner.java
@@ -5,105 +5,56 @@
 package com.azure.resourcemanager.loganalytics.fluent.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
 import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.PrivateLinkScopedResource;
 import com.azure.resourcemanager.loganalytics.models.PublicNetworkAccessType;
+import com.azure.resourcemanager.loganalytics.models.SystemDataAutoGenerated;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceCapping;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceEntityStatus;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceFeatures;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 import java.util.Map;
 
 /** The top level Workspace resource container. */
-@JsonFlatten
 @Fluent
-public class WorkspaceInner extends Resource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceInner.class);
-
-    /*
-     * The ETag of the workspace.
-     */
-    @JsonProperty(value = "eTag")
-    private String etag;
-
-    /*
-     * The provisioning state of the workspace.
-     */
-    @JsonProperty(value = "properties.provisioningState")
-    private WorkspaceEntityStatus provisioningState;
-
-    /*
-     * This is a read-only property. Represents the ID associated with the
-     * workspace.
-     */
-    @JsonProperty(value = "properties.customerId", access = JsonProperty.Access.WRITE_ONLY)
-    private String customerId;
-
-    /*
-     * The SKU of the workspace.
-     */
-    @JsonProperty(value = "properties.sku")
-    private WorkspaceSku sku;
-
-    /*
-     * The workspace data retention in days. Allowed values are per pricing
-     * plan. See pricing tiers documentation for details.
-     */
-    @JsonProperty(value = "properties.retentionInDays")
-    private Integer retentionInDays;
-
-    /*
-     * The daily volume cap for ingestion.
-     */
-    @JsonProperty(value = "properties.workspaceCapping")
-    private WorkspaceCapping workspaceCapping;
-
+public final class WorkspaceInner extends Resource {
     /*
-     * Workspace creation date.
+     * Workspace properties.
      */
-    @JsonProperty(value = "properties.createdDate", access = JsonProperty.Access.WRITE_ONLY)
-    private String createdDate;
+    @JsonProperty(value = "properties")
+    private WorkspaceProperties innerProperties;
 
     /*
-     * Workspace modification date.
+     * Metadata pertaining to creation and last modification of the resource.
      */
-    @JsonProperty(value = "properties.modifiedDate", access = JsonProperty.Access.WRITE_ONLY)
-    private String modifiedDate;
+    @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+    private SystemDataAutoGenerated systemData;
 
     /*
-     * The network access type for accessing Log Analytics ingestion.
-     */
-    @JsonProperty(value = "properties.publicNetworkAccessForIngestion")
-    private PublicNetworkAccessType publicNetworkAccessForIngestion;
-
-    /*
-     * The network access type for accessing Log Analytics query.
-     */
-    @JsonProperty(value = "properties.publicNetworkAccessForQuery")
-    private PublicNetworkAccessType publicNetworkAccessForQuery;
-
-    /*
-     * Indicates whether customer managed storage is mandatory for query
-     * management.
+     * The ETag of the workspace.
      */
-    @JsonProperty(value = "properties.forceCmkForQuery")
-    private Boolean forceCmkForQuery;
+    @JsonProperty(value = "eTag")
+    private String etag;
 
-    /*
-     * List of linked private link scope resources.
+    /**
+     * Get the innerProperties property: Workspace properties.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.privateLinkScopedResources", access = JsonProperty.Access.WRITE_ONLY)
-    private List<PrivateLinkScopedResource> privateLinkScopedResources;
+    private WorkspaceProperties innerProperties() {
+        return this.innerProperties;
+    }
 
-    /*
-     * Workspace features.
+    /**
+     * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+     *
+     * @return the systemData value.
      */
-    @JsonProperty(value = "properties.features")
-    private Map<String, Object> features;
+    public SystemDataAutoGenerated systemData() {
+        return this.systemData;
+    }
 
     /**
      * Get the etag property: The ETag of the workspace.
@@ -125,24 +76,27 @@ public WorkspaceInner withEtag(String etag) {
         return this;
     }
 
+    /** {@inheritDoc} */
+    @Override
+    public WorkspaceInner withLocation(String location) {
+        super.withLocation(location);
+        return this;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public WorkspaceInner withTags(Map<String, String> tags) {
+        super.withTags(tags);
+        return this;
+    }
+
     /**
      * Get the provisioningState property: The provisioning state of the workspace.
      *
      * @return the provisioningState value.
      */
     public WorkspaceEntityStatus provisioningState() {
-        return this.provisioningState;
-    }
-
-    /**
-     * Set the provisioningState property: The provisioning state of the workspace.
-     *
-     * @param provisioningState the provisioningState value to set.
-     * @return the WorkspaceInner object itself.
-     */
-    public WorkspaceInner withProvisioningState(WorkspaceEntityStatus provisioningState) {
-        this.provisioningState = provisioningState;
-        return this;
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
     }
 
     /**
@@ -151,7 +105,7 @@ public WorkspaceInner withProvisioningState(WorkspaceEntityStatus provisioningSt
      * @return the customerId value.
      */
     public String customerId() {
-        return this.customerId;
+        return this.innerProperties() == null ? null : this.innerProperties().customerId();
     }
 
     /**
@@ -160,7 +114,7 @@ public String customerId() {
      * @return the sku value.
      */
     public WorkspaceSku sku() {
-        return this.sku;
+        return this.innerProperties() == null ? null : this.innerProperties().sku();
     }
 
     /**
@@ -170,7 +124,10 @@ public WorkspaceSku sku() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withSku(WorkspaceSku sku) {
-        this.sku = sku;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withSku(sku);
         return this;
     }
 
@@ -181,7 +138,7 @@ public WorkspaceInner withSku(WorkspaceSku sku) {
      * @return the retentionInDays value.
      */
     public Integer retentionInDays() {
-        return this.retentionInDays;
+        return this.innerProperties() == null ? null : this.innerProperties().retentionInDays();
     }
 
     /**
@@ -192,7 +149,10 @@ public Integer retentionInDays() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withRetentionInDays(Integer retentionInDays) {
-        this.retentionInDays = retentionInDays;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withRetentionInDays(retentionInDays);
         return this;
     }
 
@@ -202,7 +162,7 @@ public WorkspaceInner withRetentionInDays(Integer retentionInDays) {
      * @return the workspaceCapping value.
      */
     public WorkspaceCapping workspaceCapping() {
-        return this.workspaceCapping;
+        return this.innerProperties() == null ? null : this.innerProperties().workspaceCapping();
     }
 
     /**
@@ -212,7 +172,10 @@ public WorkspaceCapping workspaceCapping() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
-        this.workspaceCapping = workspaceCapping;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withWorkspaceCapping(workspaceCapping);
         return this;
     }
 
@@ -222,7 +185,7 @@ public WorkspaceInner withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
      * @return the createdDate value.
      */
     public String createdDate() {
-        return this.createdDate;
+        return this.innerProperties() == null ? null : this.innerProperties().createdDate();
     }
 
     /**
@@ -231,7 +194,7 @@ public String createdDate() {
      * @return the modifiedDate value.
      */
     public String modifiedDate() {
-        return this.modifiedDate;
+        return this.innerProperties() == null ? null : this.innerProperties().modifiedDate();
     }
 
     /**
@@ -240,7 +203,7 @@ public String modifiedDate() {
      * @return the publicNetworkAccessForIngestion value.
      */
     public PublicNetworkAccessType publicNetworkAccessForIngestion() {
-        return this.publicNetworkAccessForIngestion;
+        return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccessForIngestion();
     }
 
     /**
@@ -250,7 +213,10 @@ public PublicNetworkAccessType publicNetworkAccessForIngestion() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withPublicNetworkAccessForIngestion(PublicNetworkAccessType publicNetworkAccessForIngestion) {
-        this.publicNetworkAccessForIngestion = publicNetworkAccessForIngestion;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withPublicNetworkAccessForIngestion(publicNetworkAccessForIngestion);
         return this;
     }
 
@@ -260,7 +226,7 @@ public WorkspaceInner withPublicNetworkAccessForIngestion(PublicNetworkAccessTyp
      * @return the publicNetworkAccessForQuery value.
      */
     public PublicNetworkAccessType publicNetworkAccessForQuery() {
-        return this.publicNetworkAccessForQuery;
+        return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccessForQuery();
     }
 
     /**
@@ -270,7 +236,10 @@ public PublicNetworkAccessType publicNetworkAccessForQuery() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery) {
-        this.publicNetworkAccessForQuery = publicNetworkAccessForQuery;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withPublicNetworkAccessForQuery(publicNetworkAccessForQuery);
         return this;
     }
 
@@ -280,7 +249,7 @@ public WorkspaceInner withPublicNetworkAccessForQuery(PublicNetworkAccessType pu
      * @return the forceCmkForQuery value.
      */
     public Boolean forceCmkForQuery() {
-        return this.forceCmkForQuery;
+        return this.innerProperties() == null ? null : this.innerProperties().forceCmkForQuery();
     }
 
     /**
@@ -290,7 +259,10 @@ public Boolean forceCmkForQuery() {
      * @return the WorkspaceInner object itself.
      */
     public WorkspaceInner withForceCmkForQuery(Boolean forceCmkForQuery) {
-        this.forceCmkForQuery = forceCmkForQuery;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withForceCmkForQuery(forceCmkForQuery);
         return this;
     }
 
@@ -300,7 +272,7 @@ public WorkspaceInner withForceCmkForQuery(Boolean forceCmkForQuery) {
      * @return the privateLinkScopedResources value.
      */
     public List<PrivateLinkScopedResource> privateLinkScopedResources() {
-        return this.privateLinkScopedResources;
+        return this.innerProperties() == null ? null : this.innerProperties().privateLinkScopedResources();
     }
 
     /**
@@ -308,8 +280,8 @@ public List<PrivateLinkScopedResource> privateLinkScopedResources() {
      *
      * @return the features value.
      */
-    public Map<String, Object> features() {
-        return this.features;
+    public WorkspaceFeatures features() {
+        return this.innerProperties() == null ? null : this.innerProperties().features();
     }
 
     /**
@@ -318,22 +290,38 @@ public Map<String, Object> features() {
      * @param features the features value to set.
      * @return the WorkspaceInner object itself.
      */
-    public WorkspaceInner withFeatures(Map<String, Object> features) {
-        this.features = features;
+    public WorkspaceInner withFeatures(WorkspaceFeatures features) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withFeatures(features);
         return this;
     }
 
-    /** {@inheritDoc} */
-    @Override
-    public WorkspaceInner withLocation(String location) {
-        super.withLocation(location);
-        return this;
+    /**
+     * Get the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @return the defaultDataCollectionRuleResourceId value.
+     */
+    public String defaultDataCollectionRuleResourceId() {
+        return this.innerProperties() == null ? null : this.innerProperties().defaultDataCollectionRuleResourceId();
     }
 
-    /** {@inheritDoc} */
-    @Override
-    public WorkspaceInner withTags(Map<String, String> tags) {
-        super.withTags(tags);
+    /**
+     * Set the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @param defaultDataCollectionRuleResourceId the defaultDataCollectionRuleResourceId value to set.
+     * @return the WorkspaceInner object itself.
+     */
+    public WorkspaceInner withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withDefaultDataCollectionRuleResourceId(defaultDataCollectionRuleResourceId);
         return this;
     }
 
@@ -343,14 +331,11 @@ public WorkspaceInner withTags(Map<String, String> tags) {
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
-        if (sku() != null) {
-            sku().validate();
-        }
-        if (workspaceCapping() != null) {
-            workspaceCapping().validate();
+        if (innerProperties() != null) {
+            innerProperties().validate();
         }
-        if (privateLinkScopedResources() != null) {
-            privateLinkScopedResources().forEach(e -> e.validate());
+        if (systemData() != null) {
+            systemData().validate();
         }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceProperties.java
new file mode 100644
index 0000000000000..6891c10c0cc86
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspaceProperties.java
@@ -0,0 +1,334 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.loganalytics.models.PrivateLinkScopedResource;
+import com.azure.resourcemanager.loganalytics.models.PublicNetworkAccessType;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceCapping;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceEntityStatus;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceFeatures;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Workspace properties. */
+@Fluent
+public final class WorkspaceProperties {
+    /*
+     * The provisioning state of the workspace.
+     */
+    @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+    private WorkspaceEntityStatus provisioningState;
+
+    /*
+     * This is a read-only property. Represents the ID associated with the
+     * workspace.
+     */
+    @JsonProperty(value = "customerId", access = JsonProperty.Access.WRITE_ONLY)
+    private String customerId;
+
+    /*
+     * The SKU of the workspace.
+     */
+    @JsonProperty(value = "sku")
+    private WorkspaceSku sku;
+
+    /*
+     * The workspace data retention in days. Allowed values are per pricing
+     * plan. See pricing tiers documentation for details.
+     */
+    @JsonProperty(value = "retentionInDays")
+    private Integer retentionInDays;
+
+    /*
+     * The daily volume cap for ingestion.
+     */
+    @JsonProperty(value = "workspaceCapping")
+    private WorkspaceCapping workspaceCapping;
+
+    /*
+     * Workspace creation date.
+     */
+    @JsonProperty(value = "createdDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String createdDate;
+
+    /*
+     * Workspace modification date.
+     */
+    @JsonProperty(value = "modifiedDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String modifiedDate;
+
+    /*
+     * The network access type for accessing Log Analytics ingestion.
+     */
+    @JsonProperty(value = "publicNetworkAccessForIngestion")
+    private PublicNetworkAccessType publicNetworkAccessForIngestion;
+
+    /*
+     * The network access type for accessing Log Analytics query.
+     */
+    @JsonProperty(value = "publicNetworkAccessForQuery")
+    private PublicNetworkAccessType publicNetworkAccessForQuery;
+
+    /*
+     * Indicates whether customer managed storage is mandatory for query
+     * management.
+     */
+    @JsonProperty(value = "forceCmkForQuery")
+    private Boolean forceCmkForQuery;
+
+    /*
+     * List of linked private link scope resources.
+     */
+    @JsonProperty(value = "privateLinkScopedResources", access = JsonProperty.Access.WRITE_ONLY)
+    private List<PrivateLinkScopedResource> privateLinkScopedResources;
+
+    /*
+     * Workspace features.
+     */
+    @JsonProperty(value = "features")
+    private WorkspaceFeatures features;
+
+    /*
+     * The resource ID of the default Data Collection Rule to use for this
+     * workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     */
+    @JsonProperty(value = "defaultDataCollectionRuleResourceId")
+    private String defaultDataCollectionRuleResourceId;
+
+    /**
+     * Get the provisioningState property: The provisioning state of the workspace.
+     *
+     * @return the provisioningState value.
+     */
+    public WorkspaceEntityStatus provisioningState() {
+        return this.provisioningState;
+    }
+
+    /**
+     * Get the customerId property: This is a read-only property. Represents the ID associated with the workspace.
+     *
+     * @return the customerId value.
+     */
+    public String customerId() {
+        return this.customerId;
+    }
+
+    /**
+     * Get the sku property: The SKU of the workspace.
+     *
+     * @return the sku value.
+     */
+    public WorkspaceSku sku() {
+        return this.sku;
+    }
+
+    /**
+     * Set the sku property: The SKU of the workspace.
+     *
+     * @param sku the sku value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withSku(WorkspaceSku sku) {
+        this.sku = sku;
+        return this;
+    }
+
+    /**
+     * Get the retentionInDays property: The workspace data retention in days. Allowed values are per pricing plan. See
+     * pricing tiers documentation for details.
+     *
+     * @return the retentionInDays value.
+     */
+    public Integer retentionInDays() {
+        return this.retentionInDays;
+    }
+
+    /**
+     * Set the retentionInDays property: The workspace data retention in days. Allowed values are per pricing plan. See
+     * pricing tiers documentation for details.
+     *
+     * @param retentionInDays the retentionInDays value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withRetentionInDays(Integer retentionInDays) {
+        this.retentionInDays = retentionInDays;
+        return this;
+    }
+
+    /**
+     * Get the workspaceCapping property: The daily volume cap for ingestion.
+     *
+     * @return the workspaceCapping value.
+     */
+    public WorkspaceCapping workspaceCapping() {
+        return this.workspaceCapping;
+    }
+
+    /**
+     * Set the workspaceCapping property: The daily volume cap for ingestion.
+     *
+     * @param workspaceCapping the workspaceCapping value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
+        this.workspaceCapping = workspaceCapping;
+        return this;
+    }
+
+    /**
+     * Get the createdDate property: Workspace creation date.
+     *
+     * @return the createdDate value.
+     */
+    public String createdDate() {
+        return this.createdDate;
+    }
+
+    /**
+     * Get the modifiedDate property: Workspace modification date.
+     *
+     * @return the modifiedDate value.
+     */
+    public String modifiedDate() {
+        return this.modifiedDate;
+    }
+
+    /**
+     * Get the publicNetworkAccessForIngestion property: The network access type for accessing Log Analytics ingestion.
+     *
+     * @return the publicNetworkAccessForIngestion value.
+     */
+    public PublicNetworkAccessType publicNetworkAccessForIngestion() {
+        return this.publicNetworkAccessForIngestion;
+    }
+
+    /**
+     * Set the publicNetworkAccessForIngestion property: The network access type for accessing Log Analytics ingestion.
+     *
+     * @param publicNetworkAccessForIngestion the publicNetworkAccessForIngestion value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withPublicNetworkAccessForIngestion(
+        PublicNetworkAccessType publicNetworkAccessForIngestion) {
+        this.publicNetworkAccessForIngestion = publicNetworkAccessForIngestion;
+        return this;
+    }
+
+    /**
+     * Get the publicNetworkAccessForQuery property: The network access type for accessing Log Analytics query.
+     *
+     * @return the publicNetworkAccessForQuery value.
+     */
+    public PublicNetworkAccessType publicNetworkAccessForQuery() {
+        return this.publicNetworkAccessForQuery;
+    }
+
+    /**
+     * Set the publicNetworkAccessForQuery property: The network access type for accessing Log Analytics query.
+     *
+     * @param publicNetworkAccessForQuery the publicNetworkAccessForQuery value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery) {
+        this.publicNetworkAccessForQuery = publicNetworkAccessForQuery;
+        return this;
+    }
+
+    /**
+     * Get the forceCmkForQuery property: Indicates whether customer managed storage is mandatory for query management.
+     *
+     * @return the forceCmkForQuery value.
+     */
+    public Boolean forceCmkForQuery() {
+        return this.forceCmkForQuery;
+    }
+
+    /**
+     * Set the forceCmkForQuery property: Indicates whether customer managed storage is mandatory for query management.
+     *
+     * @param forceCmkForQuery the forceCmkForQuery value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withForceCmkForQuery(Boolean forceCmkForQuery) {
+        this.forceCmkForQuery = forceCmkForQuery;
+        return this;
+    }
+
+    /**
+     * Get the privateLinkScopedResources property: List of linked private link scope resources.
+     *
+     * @return the privateLinkScopedResources value.
+     */
+    public List<PrivateLinkScopedResource> privateLinkScopedResources() {
+        return this.privateLinkScopedResources;
+    }
+
+    /**
+     * Get the features property: Workspace features.
+     *
+     * @return the features value.
+     */
+    public WorkspaceFeatures features() {
+        return this.features;
+    }
+
+    /**
+     * Set the features property: Workspace features.
+     *
+     * @param features the features value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withFeatures(WorkspaceFeatures features) {
+        this.features = features;
+        return this;
+    }
+
+    /**
+     * Get the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @return the defaultDataCollectionRuleResourceId value.
+     */
+    public String defaultDataCollectionRuleResourceId() {
+        return this.defaultDataCollectionRuleResourceId;
+    }
+
+    /**
+     * Set the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @param defaultDataCollectionRuleResourceId the defaultDataCollectionRuleResourceId value to set.
+     * @return the WorkspaceProperties object itself.
+     */
+    public WorkspaceProperties withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId) {
+        this.defaultDataCollectionRuleResourceId = defaultDataCollectionRuleResourceId;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (sku() != null) {
+            sku().validate();
+        }
+        if (workspaceCapping() != null) {
+            workspaceCapping().validate();
+        }
+        if (privateLinkScopedResources() != null) {
+            privateLinkScopedResources().forEach(e -> e.validate());
+        }
+        if (features() != null) {
+            features().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeResponseInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeResponseInner.java
index 4e2c6552bc25b..6da7d07068342 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeResponseInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeResponseInner.java
@@ -6,14 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Response containing operationId for a specific purge action. */
 @Fluent
 public final class WorkspacePurgeResponseInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgeResponseInner.class);
-
     /*
      * Id to use when querying for status for a particular purge operation.
      */
@@ -47,10 +44,12 @@ public WorkspacePurgeResponseInner withOperationId(String operationId) {
      */
     public void validate() {
         if (operationId() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         "Missing required property operationId in model WorkspacePurgeResponseInner"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspacePurgeResponseInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeStatusResponseInner.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeStatusResponseInner.java
index f7890495f6e51..cb977373d8612 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeStatusResponseInner.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/fluent/models/WorkspacePurgeStatusResponseInner.java
@@ -7,14 +7,11 @@
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.models.PurgeState;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Response containing status for a specific purge operation. */
 @Fluent
 public final class WorkspacePurgeStatusResponseInner {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgeStatusResponseInner.class);
-
     /*
      * Status of the operation represented by the requested Id.
      */
@@ -48,10 +45,12 @@ public WorkspacePurgeStatusResponseInner withStatus(PurgeState status) {
      */
     public void validate() {
         if (status() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         "Missing required property status in model WorkspacePurgeStatusResponseInner"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspacePurgeStatusResponseInner.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersClientImpl.java
index 57f13aa48eeb6..198b411da98f5 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersClientImpl.java
@@ -21,7 +21,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.AvailableServiceTiersClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.AvailableServiceTierInner;
 import java.util.List;
@@ -29,8 +28,6 @@
 
 /** An instance of this class provides access to all the operations defined in AvailableServiceTiersClient. */
 public final class AvailableServiceTiersClientImpl implements AvailableServiceTiersClient {
-    private final ClientLogger logger = new ClientLogger(AvailableServiceTiersClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final AvailableServiceTiersService service;
 
@@ -80,7 +77,8 @@ Mono<Response<List<AvailableServiceTierInner>>> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithResponseAsync(
@@ -104,6 +102,7 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -114,7 +113,7 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -129,7 +128,8 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithResponseAsync(
@@ -153,6 +153,7 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -161,7 +162,7 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context);
     }
@@ -174,7 +175,7 @@ private Mono<Response<List<AvailableServiceTierInner>>> listByWorkspaceWithRespo
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<List<AvailableServiceTierInner>> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -213,7 +214,7 @@ public List<AvailableServiceTierInner> listByWorkspace(String resourceGroupName,
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<List<AvailableServiceTierInner>> listByWorkspaceWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersImpl.java
index 6366cf421e15a..42572aaa7e5fe 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/AvailableServiceTiersImpl.java
@@ -12,13 +12,12 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.AvailableServiceTierInner;
 import com.azure.resourcemanager.loganalytics.models.AvailableServiceTier;
 import com.azure.resourcemanager.loganalytics.models.AvailableServiceTiers;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
 
 public final class AvailableServiceTiersImpl implements AvailableServiceTiers {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(AvailableServiceTiersImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(AvailableServiceTiersImpl.class);
 
     private final AvailableServiceTiersClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClusterImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClusterImpl.java
index fdb30b0893996..4257dfae682d3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClusterImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClusterImpl.java
@@ -7,6 +7,9 @@
 import com.azure.core.management.Region;
 import com.azure.core.util.Context;
 import com.azure.resourcemanager.loganalytics.fluent.models.ClusterInner;
+import com.azure.resourcemanager.loganalytics.models.AssociatedWorkspace;
+import com.azure.resourcemanager.loganalytics.models.BillingType;
+import com.azure.resourcemanager.loganalytics.models.CapacityReservationProperties;
 import com.azure.resourcemanager.loganalytics.models.Cluster;
 import com.azure.resourcemanager.loganalytics.models.ClusterEntityStatus;
 import com.azure.resourcemanager.loganalytics.models.ClusterPatch;
@@ -14,6 +17,7 @@
 import com.azure.resourcemanager.loganalytics.models.Identity;
 import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
 import java.util.Collections;
+import java.util.List;
 import java.util.Map;
 
 public final class ClusterImpl implements Cluster, Cluster.Definition, Cluster.Update {
@@ -54,10 +58,6 @@ public ClusterSku sku() {
         return this.innerModel().sku();
     }
 
-    public String nextLink() {
-        return this.innerModel().nextLink();
-    }
-
     public String clusterId() {
         return this.innerModel().clusterId();
     }
@@ -66,10 +66,43 @@ public ClusterEntityStatus provisioningState() {
         return this.innerModel().provisioningState();
     }
 
+    public Boolean isDoubleEncryptionEnabled() {
+        return this.innerModel().isDoubleEncryptionEnabled();
+    }
+
+    public Boolean isAvailabilityZonesEnabled() {
+        return this.innerModel().isAvailabilityZonesEnabled();
+    }
+
+    public BillingType billingType() {
+        return this.innerModel().billingType();
+    }
+
     public KeyVaultProperties keyVaultProperties() {
         return this.innerModel().keyVaultProperties();
     }
 
+    public String lastModifiedDate() {
+        return this.innerModel().lastModifiedDate();
+    }
+
+    public String createdDate() {
+        return this.innerModel().createdDate();
+    }
+
+    public List<AssociatedWorkspace> associatedWorkspaces() {
+        List<AssociatedWorkspace> inner = this.innerModel().associatedWorkspaces();
+        if (inner != null) {
+            return Collections.unmodifiableList(inner);
+        } else {
+            return Collections.emptyList();
+        }
+    }
+
+    public CapacityReservationProperties capacityReservationProperties() {
+        return this.innerModel().capacityReservationProperties();
+    }
+
     public Region region() {
         return Region.fromName(this.regionName());
     }
@@ -131,8 +164,7 @@ public Cluster apply() {
             serviceManager
                 .serviceClient()
                 .getClusters()
-                .updateWithResponse(resourceGroupName, clusterName, updateParameters, Context.NONE)
-                .getValue();
+                .update(resourceGroupName, clusterName, updateParameters, Context.NONE);
         return this;
     }
 
@@ -141,8 +173,7 @@ public Cluster apply(Context context) {
             serviceManager
                 .serviceClient()
                 .getClusters()
-                .updateWithResponse(resourceGroupName, clusterName, updateParameters, context)
-                .getValue();
+                .update(resourceGroupName, clusterName, updateParameters, context);
         return this;
     }
 
@@ -194,8 +225,13 @@ public ClusterImpl withTags(Map<String, String> tags) {
     }
 
     public ClusterImpl withIdentity(Identity identity) {
-        this.innerModel().withIdentity(identity);
-        return this;
+        if (isInCreateMode()) {
+            this.innerModel().withIdentity(identity);
+            return this;
+        } else {
+            this.updateParameters.withIdentity(identity);
+            return this;
+        }
     }
 
     public ClusterImpl withSku(ClusterSku sku) {
@@ -208,11 +244,26 @@ public ClusterImpl withSku(ClusterSku sku) {
         }
     }
 
-    public ClusterImpl withNextLink(String nextLink) {
-        this.innerModel().withNextLink(nextLink);
+    public ClusterImpl withIsDoubleEncryptionEnabled(Boolean isDoubleEncryptionEnabled) {
+        this.innerModel().withIsDoubleEncryptionEnabled(isDoubleEncryptionEnabled);
         return this;
     }
 
+    public ClusterImpl withIsAvailabilityZonesEnabled(Boolean isAvailabilityZonesEnabled) {
+        this.innerModel().withIsAvailabilityZonesEnabled(isAvailabilityZonesEnabled);
+        return this;
+    }
+
+    public ClusterImpl withBillingType(BillingType billingType) {
+        if (isInCreateMode()) {
+            this.innerModel().withBillingType(billingType);
+            return this;
+        } else {
+            this.updateParameters.withBillingType(billingType);
+            return this;
+        }
+    }
+
     public ClusterImpl withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
         if (isInCreateMode()) {
             this.innerModel().withKeyVaultProperties(keyVaultProperties);
@@ -223,6 +274,16 @@ public ClusterImpl withKeyVaultProperties(KeyVaultProperties keyVaultProperties)
         }
     }
 
+    public ClusterImpl withAssociatedWorkspaces(List<AssociatedWorkspace> associatedWorkspaces) {
+        this.innerModel().withAssociatedWorkspaces(associatedWorkspaces);
+        return this;
+    }
+
+    public ClusterImpl withCapacityReservationProperties(CapacityReservationProperties capacityReservationProperties) {
+        this.innerModel().withCapacityReservationProperties(capacityReservationProperties);
+        return this;
+    }
+
     private boolean isInCreateMode() {
         return this.innerModel().id() == null;
     }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersClientImpl.java
index d9baac7013721..0843137d4f8b8 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersClientImpl.java
@@ -30,7 +30,6 @@
 import com.azure.core.management.polling.PollResult;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.core.util.polling.PollerFlux;
 import com.azure.core.util.polling.SyncPoller;
 import com.azure.resourcemanager.loganalytics.fluent.ClustersClient;
@@ -43,8 +42,6 @@
 
 /** An instance of this class provides access to all the operations defined in ClustersClient. */
 public final class ClustersClientImpl implements ClustersClient {
-    private final ClientLogger logger = new ClientLogger(ClustersClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final ClustersService service;
 
@@ -113,7 +110,7 @@ Mono<Response<Flux<ByteBuffer>>> createOrUpdate(
         @Delete(
             "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
                 + "/clusters/{clusterName}")
-        @ExpectedResponses({200, 204})
+        @ExpectedResponses({200, 202, 204})
         @UnexpectedResponseExceptionType(ManagementException.class)
         Mono<Response<Flux<ByteBuffer>>> delete(
             @HostParam("$host") String endpoint,
@@ -145,7 +142,7 @@ Mono<Response<ClusterInner>> getByResourceGroup(
                 + "/clusters/{clusterName}")
         @ExpectedResponses({200})
         @UnexpectedResponseExceptionType(ManagementException.class)
-        Mono<Response<ClusterInner>> update(
+        Mono<Response<Flux<ByteBuffer>>> update(
             @HostParam("$host") String endpoint,
             @PathParam("resourceGroupName") String resourceGroupName,
             @PathParam("clusterName") String clusterName,
@@ -183,7 +180,8 @@ Mono<Response<ClusterListResult>> listNext(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(String resourceGroupName) {
@@ -203,6 +201,7 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(Str
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -211,7 +210,7 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(Str
                         .listByResourceGroup(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -235,7 +234,8 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(Str
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(
@@ -256,13 +256,14 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .listByResourceGroup(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -284,7 +285,7 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ClusterInner> listByResourceGroupAsync(String resourceGroupName) {
@@ -301,7 +302,7 @@ private PagedFlux<ClusterInner> listByResourceGroupAsync(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ClusterInner> listByResourceGroupAsync(String resourceGroupName, Context context) {
@@ -317,7 +318,7 @@ private PagedFlux<ClusterInner> listByResourceGroupAsync(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName) {
@@ -332,7 +333,7 @@ public PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName)
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName, Context context) {
@@ -344,7 +345,8 @@ public PagedIterable<ClusterInner> listByResourceGroup(String resourceGroupName,
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listSinglePageAsync() {
@@ -360,17 +362,13 @@ private Mono<PagedResponse<ClusterInner>> listSinglePageAsync() {
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
                 context ->
                     service
-                        .list(
-                            this.client.getEndpoint(),
-                            this.client.getApiVersion(),
-                            this.client.getSubscriptionId(),
-                            accept,
-                            context))
+                        .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context))
             .<PagedResponse<ClusterInner>>map(
                 res ->
                     new PagedResponseBase<>(
@@ -390,7 +388,8 @@ private Mono<PagedResponse<ClusterInner>> listSinglePageAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listSinglePageAsync(Context context) {
@@ -406,15 +405,11 @@ private Mono<PagedResponse<ClusterInner>> listSinglePageAsync(Context context) {
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .list(
-                this.client.getEndpoint(),
-                this.client.getApiVersion(),
-                this.client.getSubscriptionId(),
-                accept,
-                context)
+            .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
             .map(
                 res ->
                     new PagedResponseBase<>(
@@ -431,7 +426,7 @@ private Mono<PagedResponse<ClusterInner>> listSinglePageAsync(Context context) {
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ClusterInner> listAsync() {
@@ -445,7 +440,7 @@ private PagedFlux<ClusterInner> listAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ClusterInner> listAsync(Context context) {
@@ -458,7 +453,7 @@ private PagedFlux<ClusterInner> listAsync(Context context) {
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ClusterInner> list() {
@@ -472,7 +467,7 @@ public PagedIterable<ClusterInner> list() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ClusterInner> list(Context context) {
@@ -488,7 +483,8 @@ public PagedIterable<ClusterInner> list(Context context) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -517,6 +513,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -525,7 +522,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
                         .createOrUpdate(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             clusterName,
                             parameters,
@@ -544,7 +541,8 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -573,13 +571,14 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .createOrUpdate(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 clusterName,
                 parameters,
@@ -596,9 +595,9 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link PollerFlux} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdateAsync(
         String resourceGroupName, String clusterName, ClusterInner parameters) {
         Mono<Response<Flux<ByteBuffer>>> mono =
@@ -606,7 +605,7 @@ private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdateAs
         return this
             .client
             .<ClusterInner, ClusterInner>getLroResult(
-                mono, this.client.getHttpPipeline(), ClusterInner.class, ClusterInner.class, Context.NONE);
+                mono, this.client.getHttpPipeline(), ClusterInner.class, ClusterInner.class, this.client.getContext());
     }
 
     /**
@@ -619,9 +618,9 @@ private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdateAs
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link PollerFlux} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdateAsync(
         String resourceGroupName, String clusterName, ClusterInner parameters, Context context) {
         context = this.client.mergeContext(context);
@@ -642,9 +641,9 @@ private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdateAs
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
         String resourceGroupName, String clusterName, ClusterInner parameters) {
         return beginCreateOrUpdateAsync(resourceGroupName, clusterName, parameters).getSyncPoller();
@@ -660,9 +659,9 @@ public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
         String resourceGroupName, String clusterName, ClusterInner parameters, Context context) {
         return beginCreateOrUpdateAsync(resourceGroupName, clusterName, parameters, context).getSyncPoller();
@@ -677,7 +676,7 @@ public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginCreateOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<ClusterInner> createOrUpdateAsync(
@@ -697,7 +696,7 @@ private Mono<ClusterInner> createOrUpdateAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<ClusterInner> createOrUpdateAsync(
@@ -749,7 +748,7 @@ public ClusterInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(String resourceGroupName, String clusterName) {
@@ -772,6 +771,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(String resource
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -781,7 +781,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(String resource
                             this.client.getEndpoint(),
                             resourceGroupName,
                             clusterName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -797,7 +797,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(String resource
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
@@ -821,6 +821,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -828,7 +829,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 clusterName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -842,14 +843,15 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link PollerFlux} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(String resourceGroupName, String clusterName) {
         Mono<Response<Flux<ByteBuffer>>> mono = deleteWithResponseAsync(resourceGroupName, clusterName);
         return this
             .client
-            .<Void, Void>getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
+            .<Void, Void>getLroResult(
+                mono, this.client.getHttpPipeline(), Void.class, Void.class, this.client.getContext());
     }
 
     /**
@@ -861,9 +863,9 @@ private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(String resourceGroup
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link PollerFlux} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
         String resourceGroupName, String clusterName, Context context) {
         context = this.client.mergeContext(context);
@@ -881,9 +883,9 @@ private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName, String clusterName) {
         return beginDeleteAsync(resourceGroupName, clusterName).getSyncPoller();
     }
@@ -897,9 +899,9 @@ public SyncPoller<PollResult<Void>, Void> beginDelete(String resourceGroupName,
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<Void>, Void> beginDelete(
         String resourceGroupName, String clusterName, Context context) {
         return beginDeleteAsync(resourceGroupName, clusterName, context).getSyncPoller();
@@ -913,7 +915,7 @@ public SyncPoller<PollResult<Void>, Void> beginDelete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String clusterName) {
@@ -929,7 +931,7 @@ private Mono<Void> deleteAsync(String resourceGroupName, String clusterName) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String clusterName, Context context) {
@@ -975,7 +977,7 @@ public void delete(String resourceGroupName, String clusterName, Context context
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
@@ -999,6 +1001,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
         if (clusterName == null) {
             return Mono.error(new IllegalArgumentException("Parameter clusterName is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -1008,7 +1011,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
                             this.client.getEndpoint(),
                             this.client.getSubscriptionId(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             clusterName,
                             accept,
                             context))
@@ -1024,7 +1027,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
@@ -1048,6 +1051,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
         if (clusterName == null) {
             return Mono.error(new IllegalArgumentException("Parameter clusterName is required and cannot be null."));
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -1055,7 +1059,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
                 this.client.getEndpoint(),
                 this.client.getSubscriptionId(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 clusterName,
                 accept,
                 context);
@@ -1069,7 +1073,7 @@ private Mono<Response<ClusterInner>> getByResourceGroupWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<ClusterInner> getByResourceGroupAsync(String resourceGroupName, String clusterName) {
@@ -1108,7 +1112,7 @@ public ClusterInner getByResourceGroup(String resourceGroupName, String clusterN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<ClusterInner> getByResourceGroupWithResponse(
@@ -1125,10 +1129,11 @@ public Response<ClusterInner> getByResourceGroupWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<ClusterInner>> updateWithResponseAsync(
+    private Mono<Response<Flux<ByteBuffer>>> updateWithResponseAsync(
         String resourceGroupName, String clusterName, ClusterPatch parameters) {
         if (this.client.getEndpoint() == null) {
             return Mono
@@ -1154,6 +1159,7 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -1163,7 +1169,7 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             clusterName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             parameters,
                             accept,
@@ -1181,10 +1187,11 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the top level Log Analytics cluster resource container along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<ClusterInner>> updateWithResponseAsync(
+    private Mono<Response<Flux<ByteBuffer>>> updateWithResponseAsync(
         String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
         if (this.client.getEndpoint() == null) {
             return Mono
@@ -1210,6 +1217,7 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-06-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -1217,7 +1225,7 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 clusterName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 parameters,
                 accept,
@@ -1233,19 +1241,113 @@ private Mono<Response<ClusterInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Log Analytics cluster resource container.
+     * @return the {@link PollerFlux} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginUpdateAsync(
+        String resourceGroupName, String clusterName, ClusterPatch parameters) {
+        Mono<Response<Flux<ByteBuffer>>> mono = updateWithResponseAsync(resourceGroupName, clusterName, parameters);
+        return this
+            .client
+            .<ClusterInner, ClusterInner>getLroResult(
+                mono, this.client.getHttpPipeline(), ClusterInner.class, ClusterInner.class, this.client.getContext());
+    }
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link PollerFlux} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<ClusterInner>, ClusterInner> beginUpdateAsync(
+        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
+        context = this.client.mergeContext(context);
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            updateWithResponseAsync(resourceGroupName, clusterName, parameters, context);
+        return this
+            .client
+            .<ClusterInner, ClusterInner>getLroResult(
+                mono, this.client.getHttpPipeline(), ClusterInner.class, ClusterInner.class, context);
+    }
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginUpdate(
+        String resourceGroupName, String clusterName, ClusterPatch parameters) {
+        return beginUpdateAsync(resourceGroupName, clusterName, parameters).getSyncPoller();
+    }
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of the top level Log Analytics cluster resource container.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<ClusterInner>, ClusterInner> beginUpdate(
+        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
+        return beginUpdateAsync(resourceGroupName, clusterName, parameters, context).getSyncPoller();
+    }
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the top level Log Analytics cluster resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<ClusterInner> updateAsync(String resourceGroupName, String clusterName, ClusterPatch parameters) {
-        return updateWithResponseAsync(resourceGroupName, clusterName, parameters)
-            .flatMap(
-                (Response<ClusterInner> res) -> {
-                    if (res.getValue() != null) {
-                        return Mono.just(res.getValue());
-                    } else {
-                        return Mono.empty();
-                    }
-                });
+        return beginUpdateAsync(resourceGroupName, clusterName, parameters)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
+    }
+
+    /**
+     * Updates a Log Analytics cluster.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param clusterName Name of the Log Analytics Cluster.
+     * @param parameters The parameters required to patch a Log Analytics cluster.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the top level Log Analytics cluster resource container on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<ClusterInner> updateAsync(
+        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
+        return beginUpdateAsync(resourceGroupName, clusterName, parameters, context)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
     }
 
     /**
@@ -1277,9 +1379,8 @@ public ClusterInner update(String resourceGroupName, String clusterName, Cluster
      * @return the top level Log Analytics cluster resource container.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    public Response<ClusterInner> updateWithResponse(
-        String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
-        return updateWithResponseAsync(resourceGroupName, clusterName, parameters, context).block();
+    public ClusterInner update(String resourceGroupName, String clusterName, ClusterPatch parameters, Context context) {
+        return updateAsync(resourceGroupName, clusterName, parameters, context).block();
     }
 
     /**
@@ -1289,7 +1390,8 @@ public Response<ClusterInner> updateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list clusters operation response.
+     * @return the list clusters operation response along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listByResourceGroupNextSinglePageAsync(String nextLink) {
@@ -1326,7 +1428,8 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupNextSinglePageAsync
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list clusters operation response.
+     * @return the list clusters operation response along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listByResourceGroupNextSinglePageAsync(String nextLink, Context context) {
@@ -1361,7 +1464,8 @@ private Mono<PagedResponse<ClusterInner>> listByResourceGroupNextSinglePageAsync
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list clusters operation response.
+     * @return the list clusters operation response along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listNextSinglePageAsync(String nextLink) {
@@ -1397,7 +1501,8 @@ private Mono<PagedResponse<ClusterInner>> listNextSinglePageAsync(String nextLin
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list clusters operation response.
+     * @return the list clusters operation response along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ClusterInner>> listNextSinglePageAsync(String nextLink, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersImpl.java
index f7c506806ef08..5ff0cdf56838d 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ClustersImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.ClusterInner;
 import com.azure.resourcemanager.loganalytics.models.Cluster;
 import com.azure.resourcemanager.loganalytics.models.Clusters;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class ClustersImpl implements Clusters {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ClustersImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(ClustersImpl.class);
 
     private final ClustersClient innerClient;
 
@@ -83,7 +82,7 @@ public Response<Cluster> getByResourceGroupWithResponse(
     public Cluster getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -91,7 +90,7 @@ public Cluster getById(String id) {
         }
         String clusterName = Utils.getValueFromIdByName(id, "clusters");
         if (clusterName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'clusters'.", id)));
@@ -102,7 +101,7 @@ public Cluster getById(String id) {
     public Response<Cluster> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -110,7 +109,7 @@ public Response<Cluster> getByIdWithResponse(String id, Context context) {
         }
         String clusterName = Utils.getValueFromIdByName(id, "clusters");
         if (clusterName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'clusters'.", id)));
@@ -121,7 +120,7 @@ public Response<Cluster> getByIdWithResponse(String id, Context context) {
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -129,7 +128,7 @@ public void deleteById(String id) {
         }
         String clusterName = Utils.getValueFromIdByName(id, "clusters");
         if (clusterName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'clusters'.", id)));
@@ -140,7 +139,7 @@ public void deleteById(String id) {
     public void deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -148,7 +147,7 @@ public void deleteByIdWithResponse(String id, Context context) {
         }
         String clusterName = Utils.getValueFromIdByName(id, "clusters");
         if (clusterName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'clusters'.", id)));
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportImpl.java
index 81903e6c10e84..44d21cb051204 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportImpl.java
@@ -57,8 +57,8 @@ public String resourceId() {
         return this.innerModel().resourceId();
     }
 
-    public Type typePropertiesDestinationType() {
-        return this.innerModel().typePropertiesDestinationType();
+    public Type typePropertiesType() {
+        return this.innerModel().typePropertiesType();
     }
 
     public String eventHubName() {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsClientImpl.java
index e50eb7f34eb3f..aee9218c91c4d 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsClientImpl.java
@@ -28,7 +28,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.DataExportsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.DataExportInner;
 import com.azure.resourcemanager.loganalytics.models.DataExportListResult;
@@ -36,8 +35,6 @@
 
 /** An instance of this class provides access to all the operations defined in DataExportsClient. */
 public final class DataExportsClientImpl implements DataExportsClient {
-    private final ClientLogger logger = new ClientLogger(DataExportsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final DataExportsService service;
 
@@ -135,7 +132,8 @@ Mono<Response<Void>> delete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
@@ -159,6 +157,7 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -169,7 +168,7 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .<PagedResponse<DataExportInner>>map(
@@ -188,7 +187,8 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
@@ -212,6 +212,7 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -220,7 +221,7 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context)
             .map(
@@ -237,7 +238,7 @@ private Mono<PagedResponse<DataExportInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<DataExportInner> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -253,7 +254,7 @@ private PagedFlux<DataExportInner> listByWorkspaceAsync(String resourceGroupName
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<DataExportInner> listByWorkspaceAsync(
@@ -269,7 +270,7 @@ private PagedFlux<DataExportInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<DataExportInner> listByWorkspace(String resourceGroupName, String workspaceName) {
@@ -285,7 +286,7 @@ public PagedIterable<DataExportInner> listByWorkspace(String resourceGroupName,
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<DataExportInner> listByWorkspace(
@@ -303,7 +304,8 @@ public PagedIterable<DataExportInner> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level data export resource container.
+     * @return the top level data export resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
@@ -335,6 +337,7 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -346,7 +349,7 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataExportName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             parameters,
                             accept,
                             context))
@@ -364,7 +367,8 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level data export resource container.
+     * @return the top level data export resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
@@ -400,6 +404,7 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -409,7 +414,7 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataExportName,
-                this.client.getApiVersion(),
+                apiVersion,
                 parameters,
                 accept,
                 context);
@@ -425,7 +430,7 @@ private Mono<Response<DataExportInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level data export resource container.
+     * @return the top level data export resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<DataExportInner> createOrUpdateAsync(
@@ -470,7 +475,7 @@ public DataExportInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level data export resource container.
+     * @return the top level data export resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<DataExportInner> createOrUpdateWithResponse(
@@ -492,7 +497,7 @@ public Response<DataExportInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataExportInner>> getWithResponseAsync(
@@ -519,6 +524,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
         if (dataExportName == null) {
             return Mono.error(new IllegalArgumentException("Parameter dataExportName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -530,7 +536,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataExportName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -546,7 +552,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataExportInner>> getWithResponseAsync(
@@ -573,6 +579,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
         if (dataExportName == null) {
             return Mono.error(new IllegalArgumentException("Parameter dataExportName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -582,7 +589,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataExportName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context);
     }
@@ -596,7 +603,7 @@ private Mono<Response<DataExportInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<DataExportInner> getAsync(String resourceGroupName, String workspaceName, String dataExportName) {
@@ -637,7 +644,7 @@ public DataExportInner get(String resourceGroupName, String workspaceName, Strin
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<DataExportInner> getWithResponse(
@@ -654,7 +661,7 @@ public Response<DataExportInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -681,6 +688,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (dataExportName == null) {
             return Mono.error(new IllegalArgumentException("Parameter dataExportName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -692,7 +700,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataExportName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -708,7 +716,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -735,6 +743,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (dataExportName == null) {
             return Mono.error(new IllegalArgumentException("Parameter dataExportName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -744,7 +753,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataExportName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context);
     }
@@ -758,7 +767,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String dataExportName) {
@@ -791,7 +800,7 @@ public void delete(String resourceGroupName, String workspaceName, String dataEx
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsImpl.java
index 1d2769218ab32..4dd71cdbc75e8 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataExportsImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.DataExportInner;
 import com.azure.resourcemanager.loganalytics.models.DataExport;
 import com.azure.resourcemanager.loganalytics.models.DataExports;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class DataExportsImpl implements DataExports {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataExportsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(DataExportsImpl.class);
 
     private final DataExportsClient innerClient;
 
@@ -75,7 +74,7 @@ public Response<Void> deleteWithResponse(
     public DataExport getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -83,14 +82,14 @@ public DataExport getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataExportName = Utils.getValueFromIdByName(id, "dataExports");
         if (dataExportName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataExports'.", id)));
@@ -101,7 +100,7 @@ public DataExport getById(String id) {
     public Response<DataExport> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -109,14 +108,14 @@ public Response<DataExport> getByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataExportName = Utils.getValueFromIdByName(id, "dataExports");
         if (dataExportName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataExports'.", id)));
@@ -127,7 +126,7 @@ public Response<DataExport> getByIdWithResponse(String id, Context context) {
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -135,25 +134,25 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataExportName = Utils.getValueFromIdByName(id, "dataExports");
         if (dataExportName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataExports'.", id)));
         }
-        this.deleteWithResponse(resourceGroupName, workspaceName, dataExportName, Context.NONE).getValue();
+        this.deleteWithResponse(resourceGroupName, workspaceName, dataExportName, Context.NONE);
     }
 
     public Response<Void> deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -161,14 +160,14 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataExportName = Utils.getValueFromIdByName(id, "dataExports");
         if (dataExportName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataExports'.", id)));
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesClientImpl.java
index e62dbb1122913..bc5bf310d5a71 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesClientImpl.java
@@ -28,7 +28,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.DataSourcesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.DataSourceInner;
 import com.azure.resourcemanager.loganalytics.models.DataSourceListResult;
@@ -36,8 +35,6 @@
 
 /** An instance of this class provides access to all the operations defined in DataSourcesClient. */
 public final class DataSourcesClientImpl implements DataSourcesClient {
-    private final ClientLogger logger = new ClientLogger(DataSourcesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final DataSourcesService service;
 
@@ -148,7 +145,7 @@ Mono<Response<DataSourceListResult>> listByWorkspaceNext(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return datasources under OMS Workspace.
+     * @return datasources under OMS Workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
@@ -180,6 +177,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -190,7 +188,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataSourceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             parameters,
                             accept,
@@ -209,7 +207,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return datasources under OMS Workspace.
+     * @return datasources under OMS Workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
@@ -245,6 +243,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -253,7 +252,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataSourceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 parameters,
                 accept,
@@ -270,7 +269,7 @@ private Mono<Response<DataSourceInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return datasources under OMS Workspace.
+     * @return datasources under OMS Workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<DataSourceInner> createOrUpdateAsync(
@@ -315,7 +314,7 @@ public DataSourceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return datasources under OMS Workspace.
+     * @return datasources under OMS Workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<DataSourceInner> createOrUpdateWithResponse(
@@ -337,7 +336,7 @@ public Response<DataSourceInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -364,6 +363,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -373,7 +373,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataSourceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -389,7 +389,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -416,6 +416,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .delete(
@@ -423,7 +424,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataSourceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 context);
     }
@@ -437,7 +438,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String dataSourceName) {
@@ -470,7 +471,7 @@ public void delete(String resourceGroupName, String workspaceName, String dataSo
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
@@ -487,7 +488,7 @@ public Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataSourceInner>> getWithResponseAsync(
@@ -514,6 +515,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -524,7 +526,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataSourceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -541,7 +543,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<DataSourceInner>> getWithResponseAsync(
@@ -568,6 +570,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -576,7 +579,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataSourceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -591,7 +594,7 @@ private Mono<Response<DataSourceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<DataSourceInner> getAsync(String resourceGroupName, String workspaceName, String dataSourceName) {
@@ -632,7 +635,7 @@ public DataSourceInner get(String resourceGroupName, String workspaceName, Strin
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<DataSourceInner> getWithResponse(
@@ -650,7 +653,8 @@ public Response<DataSourceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page along with {@link
+     *     PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
@@ -677,6 +681,7 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -688,7 +693,7 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
                             workspaceName,
                             filter,
                             skiptoken,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -715,7 +720,8 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page along with {@link
+     *     PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
@@ -742,6 +748,7 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -751,7 +758,7 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
                 workspaceName,
                 filter,
                 skiptoken,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -776,7 +783,8 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<DataSourceInner> listByWorkspaceAsync(
@@ -795,7 +803,8 @@ private PagedFlux<DataSourceInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<DataSourceInner> listByWorkspaceAsync(
@@ -817,7 +826,8 @@ private PagedFlux<DataSourceInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<DataSourceInner> listByWorkspaceAsync(
@@ -836,7 +846,8 @@ private PagedFlux<DataSourceInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<DataSourceInner> listByWorkspace(
@@ -856,7 +867,8 @@ public PagedIterable<DataSourceInner> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<DataSourceInner> listByWorkspace(
@@ -871,7 +883,8 @@ public PagedIterable<DataSourceInner> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list data source by workspace operation response.
+     * @return the list data source by workspace operation response along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataSourceInner>> listByWorkspaceNextSinglePageAsync(String nextLink) {
@@ -907,7 +920,8 @@ private Mono<PagedResponse<DataSourceInner>> listByWorkspaceNextSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list data source by workspace operation response.
+     * @return the list data source by workspace operation response along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<DataSourceInner>> listByWorkspaceNextSinglePageAsync(String nextLink, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesImpl.java
index 0844fbc2c76fa..35598f6b96fd6 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DataSourcesImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.DataSourceInner;
 import com.azure.resourcemanager.loganalytics.models.DataSource;
 import com.azure.resourcemanager.loganalytics.models.DataSources;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class DataSourcesImpl implements DataSources {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataSourcesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(DataSourcesImpl.class);
 
     private final DataSourcesClient innerClient;
 
@@ -77,7 +76,7 @@ public PagedIterable<DataSource> listByWorkspace(
     public DataSource getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -85,14 +84,14 @@ public DataSource getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataSourceName = Utils.getValueFromIdByName(id, "dataSources");
         if (dataSourceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataSources'.", id)));
@@ -103,7 +102,7 @@ public DataSource getById(String id) {
     public Response<DataSource> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -111,14 +110,14 @@ public Response<DataSource> getByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataSourceName = Utils.getValueFromIdByName(id, "dataSources");
         if (dataSourceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataSources'.", id)));
@@ -129,7 +128,7 @@ public Response<DataSource> getByIdWithResponse(String id, Context context) {
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -137,25 +136,25 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataSourceName = Utils.getValueFromIdByName(id, "dataSources");
         if (dataSourceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataSources'.", id)));
         }
-        this.deleteWithResponse(resourceGroupName, workspaceName, dataSourceName, Context.NONE).getValue();
+        this.deleteWithResponse(resourceGroupName, workspaceName, dataSourceName, Context.NONE);
     }
 
     public Response<Void> deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -163,14 +162,14 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String dataSourceName = Utils.getValueFromIdByName(id, "dataSources");
         if (dataSourceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'dataSources'.", id)));
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesClientImpl.java
index 6d95f1fc33508..173adfd4c54ac 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesClientImpl.java
@@ -25,7 +25,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.DeletedWorkspacesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceInner;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceListResult;
@@ -33,8 +32,6 @@
 
 /** An instance of this class provides access to all the operations defined in DeletedWorkspacesClient. */
 public final class DeletedWorkspacesClientImpl implements DeletedWorkspacesClient {
-    private final ClientLogger logger = new ClientLogger(DeletedWorkspacesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final DeletedWorkspacesService service;
 
@@ -90,7 +87,8 @@ Mono<Response<WorkspaceListResult>> listByResourceGroup(
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
@@ -106,17 +104,13 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
                 context ->
                     service
-                        .list(
-                            this.client.getEndpoint(),
-                            this.client.getApiVersion(),
-                            this.client.getSubscriptionId(),
-                            accept,
-                            context))
+                        .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context))
             .<PagedResponse<WorkspaceInner>>map(
                 res ->
                     new PagedResponseBase<>(
@@ -131,7 +125,8 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context) {
@@ -147,15 +142,11 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context)
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .list(
-                this.client.getEndpoint(),
-                this.client.getApiVersion(),
-                this.client.getSubscriptionId(),
-                accept,
-                context)
+            .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
             .map(
                 res ->
                     new PagedResponseBase<>(
@@ -167,7 +158,8 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context)
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listAsync() {
@@ -181,7 +173,8 @@ private PagedFlux<WorkspaceInner> listAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listAsync(Context context) {
@@ -193,7 +186,8 @@ private PagedFlux<WorkspaceInner> listAsync(Context context) {
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> list() {
@@ -207,7 +201,8 @@ public PagedIterable<WorkspaceInner> list() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> list(Context context) {
@@ -221,7 +216,8 @@ public PagedIterable<WorkspaceInner> list(Context context) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery along with {@link PagedResponse}
+     *     on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(String resourceGroupName) {
@@ -241,6 +237,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -249,7 +246,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
                         .listByResourceGroup(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -268,7 +265,8 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery along with {@link PagedResponse}
+     *     on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
@@ -289,13 +287,14 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .listByResourceGroup(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -312,7 +311,8 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupName) {
@@ -327,7 +327,8 @@ private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupName, Context context) {
@@ -341,7 +342,8 @@ private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName) {
@@ -356,7 +358,8 @@ public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesImpl.java
index 5621841863e11..9f289abaaeaf6 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/DeletedWorkspacesImpl.java
@@ -11,10 +11,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceInner;
 import com.azure.resourcemanager.loganalytics.models.DeletedWorkspaces;
 import com.azure.resourcemanager.loganalytics.models.Workspace;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class DeletedWorkspacesImpl implements DeletedWorkspaces {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DeletedWorkspacesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(DeletedWorkspacesImpl.class);
 
     private final DeletedWorkspacesClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysClientImpl.java
index dbfa15e3aa390..6ba9fa8d4262a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysClientImpl.java
@@ -20,14 +20,11 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.GatewaysClient;
 import reactor.core.publisher.Mono;
 
 /** An instance of this class provides access to all the operations defined in GatewaysClient. */
 public final class GatewaysClientImpl implements GatewaysClient {
-    private final ClientLogger logger = new ClientLogger(GatewaysClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final GatewaysService service;
 
@@ -76,7 +73,7 @@ Mono<Response<Void>> delete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -103,6 +100,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (gatewayId == null) {
             return Mono.error(new IllegalArgumentException("Parameter gatewayId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -113,7 +111,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             gatewayId,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
     }
@@ -128,7 +126,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -155,6 +153,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (gatewayId == null) {
             return Mono.error(new IllegalArgumentException("Parameter gatewayId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .delete(
@@ -163,7 +162,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 gatewayId,
-                this.client.getApiVersion(),
+                apiVersion,
                 context);
     }
 
@@ -176,7 +175,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String gatewayId) {
@@ -209,7 +208,7 @@ public void delete(String resourceGroupName, String workspaceName, String gatewa
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysImpl.java
index aff9b3e9ba839..3c553b69f09af 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/GatewaysImpl.java
@@ -9,10 +9,9 @@
 import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.GatewaysClient;
 import com.azure.resourcemanager.loganalytics.models.Gateways;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class GatewaysImpl implements Gateways {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(GatewaysImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(GatewaysImpl.class);
 
     private final GatewaysClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksClientImpl.java
index 594a76ca050ff..ed5ffcff8bc31 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksClientImpl.java
@@ -22,7 +22,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.IntelligencePacksClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.IntelligencePackInner;
 import java.util.List;
@@ -30,8 +29,6 @@
 
 /** An instance of this class provides access to all the operations defined in IntelligencePacksClient. */
 public final class IntelligencePacksClientImpl implements IntelligencePacksClient {
-    private final ClientLogger logger = new ClientLogger(IntelligencePacksClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final IntelligencePacksService service;
 
@@ -111,7 +108,7 @@ Mono<Response<List<IntelligencePackInner>>> list(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> disableWithResponseAsync(
@@ -139,6 +136,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -148,7 +146,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             intelligencePackName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -164,7 +162,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> disableWithResponseAsync(
@@ -192,6 +190,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .disable(
@@ -199,7 +198,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 intelligencePackName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 context);
     }
@@ -213,7 +212,7 @@ private Mono<Response<Void>> disableWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> disableAsync(String resourceGroupName, String workspaceName, String intelligencePackName) {
@@ -246,7 +245,7 @@ public void disable(String resourceGroupName, String workspaceName, String intel
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> disableWithResponse(
@@ -263,7 +262,7 @@ public Response<Void> disableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> enableWithResponseAsync(
@@ -291,6 +290,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -300,7 +300,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             intelligencePackName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -316,7 +316,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> enableWithResponseAsync(
@@ -344,6 +344,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .enable(
@@ -351,7 +352,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 intelligencePackName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 context);
     }
@@ -365,7 +366,7 @@ private Mono<Response<Void>> enableWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> enableAsync(String resourceGroupName, String workspaceName, String intelligencePackName) {
@@ -398,7 +399,7 @@ public void enable(String resourceGroupName, String workspaceName, String intell
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> enableWithResponse(
@@ -414,7 +415,7 @@ public Response<Void> enableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
@@ -438,6 +439,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -447,7 +449,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -463,7 +465,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
@@ -487,6 +489,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -494,7 +497,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -508,7 +511,7 @@ private Mono<Response<List<IntelligencePackInner>>> listWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<List<IntelligencePackInner>> listAsync(String resourceGroupName, String workspaceName) {
@@ -547,7 +550,7 @@ public List<IntelligencePackInner> list(String resourceGroupName, String workspa
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<List<IntelligencePackInner>> listWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksImpl.java
index 2baa8f233e574..98ab039e04fab 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/IntelligencePacksImpl.java
@@ -12,13 +12,12 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.IntelligencePackInner;
 import com.azure.resourcemanager.loganalytics.models.IntelligencePack;
 import com.azure.resourcemanager.loganalytics.models.IntelligencePacks;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
 
 public final class IntelligencePacksImpl implements IntelligencePacks {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(IntelligencePacksImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(IntelligencePacksImpl.class);
 
     private final IntelligencePacksClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesClientImpl.java
index 2f90f6a77b0d9..01f5057fe0d86 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesClientImpl.java
@@ -29,7 +29,6 @@
 import com.azure.core.management.polling.PollResult;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.core.util.polling.PollerFlux;
 import com.azure.core.util.polling.SyncPoller;
 import com.azure.resourcemanager.loganalytics.fluent.LinkedServicesClient;
@@ -41,8 +40,6 @@
 
 /** An instance of this class provides access to all the operations defined in LinkedServicesClient. */
 public final class LinkedServicesClientImpl implements LinkedServicesClient {
-    private final ClientLogger logger = new ClientLogger(LinkedServicesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final LinkedServicesService service;
 
@@ -71,7 +68,7 @@ private interface LinkedServicesService {
         @Put(
             "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
                 + "/workspaces/{workspaceName}/linkedServices/{linkedServiceName}")
-        @ExpectedResponses({200, 201})
+        @ExpectedResponses({200, 201, 202})
         @UnexpectedResponseExceptionType(ManagementException.class)
         Mono<Response<Flux<ByteBuffer>>> createOrUpdate(
             @HostParam("$host") String endpoint,
@@ -88,7 +85,7 @@ Mono<Response<Flux<ByteBuffer>>> createOrUpdate(
         @Delete(
             "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
                 + "/workspaces/{workspaceName}/linkedServices/{linkedServiceName}")
-        @ExpectedResponses({200, 204})
+        @ExpectedResponses({200, 202, 204})
         @UnexpectedResponseExceptionType(ManagementException.class)
         Mono<Response<Flux<ByteBuffer>>> delete(
             @HostParam("$host") String endpoint,
@@ -142,7 +139,8 @@ Mono<Response<LinkedServiceListResult>> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -175,6 +173,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -186,7 +185,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
                             workspaceName,
                             linkedServiceName,
                             this.client.getSubscriptionId(),
-                            this.client.getApiVersion(),
+                            apiVersion,
                             parameters,
                             accept,
                             context))
@@ -204,7 +203,8 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -241,6 +241,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -250,7 +251,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
                 workspaceName,
                 linkedServiceName,
                 this.client.getSubscriptionId(),
-                this.client.getApiVersion(),
+                apiVersion,
                 parameters,
                 accept,
                 context);
@@ -266,9 +267,9 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link PollerFlux} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdateAsync(
         String resourceGroupName, String workspaceName, String linkedServiceName, LinkedServiceInner parameters) {
         Mono<Response<Flux<ByteBuffer>>> mono =
@@ -276,7 +277,11 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCrea
         return this
             .client
             .<LinkedServiceInner, LinkedServiceInner>getLroResult(
-                mono, this.client.getHttpPipeline(), LinkedServiceInner.class, LinkedServiceInner.class, Context.NONE);
+                mono,
+                this.client.getHttpPipeline(),
+                LinkedServiceInner.class,
+                LinkedServiceInner.class,
+                this.client.getContext());
     }
 
     /**
@@ -290,9 +295,9 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCrea
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link PollerFlux} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdateAsync(
         String resourceGroupName,
         String workspaceName,
@@ -318,9 +323,9 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCrea
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, String linkedServiceName, LinkedServiceInner parameters) {
         return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, linkedServiceName, parameters)
@@ -338,9 +343,9 @@ public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreat
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreateOrUpdate(
         String resourceGroupName,
         String workspaceName,
@@ -361,7 +366,7 @@ public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginCreat
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedServiceInner> createOrUpdateAsync(
@@ -382,7 +387,7 @@ private Mono<LinkedServiceInner> createOrUpdateAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedServiceInner> createOrUpdateAsync(
@@ -446,7 +451,8 @@ public LinkedServiceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
@@ -474,6 +480,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -484,7 +491,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             linkedServiceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -501,7 +508,8 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
@@ -529,6 +537,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -537,7 +546,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 linkedServiceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -552,9 +561,9 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link PollerFlux} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDeleteAsync(
         String resourceGroupName, String workspaceName, String linkedServiceName) {
         Mono<Response<Flux<ByteBuffer>>> mono =
@@ -562,7 +571,11 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDele
         return this
             .client
             .<LinkedServiceInner, LinkedServiceInner>getLroResult(
-                mono, this.client.getHttpPipeline(), LinkedServiceInner.class, LinkedServiceInner.class, Context.NONE);
+                mono,
+                this.client.getHttpPipeline(),
+                LinkedServiceInner.class,
+                LinkedServiceInner.class,
+                this.client.getContext());
     }
 
     /**
@@ -575,9 +588,9 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDele
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link PollerFlux} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDeleteAsync(
         String resourceGroupName, String workspaceName, String linkedServiceName, Context context) {
         context = this.client.mergeContext(context);
@@ -598,9 +611,9 @@ private PollerFlux<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDele
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelete(
         String resourceGroupName, String workspaceName, String linkedServiceName) {
         return beginDeleteAsync(resourceGroupName, workspaceName, linkedServiceName).getSyncPoller();
@@ -616,9 +629,9 @@ public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelet
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the {@link SyncPoller} for polling of the top level Linked service resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelete(
         String resourceGroupName, String workspaceName, String linkedServiceName, Context context) {
         return beginDeleteAsync(resourceGroupName, workspaceName, linkedServiceName, context).getSyncPoller();
@@ -633,7 +646,7 @@ public SyncPoller<PollResult<LinkedServiceInner>, LinkedServiceInner> beginDelet
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedServiceInner> deleteAsync(
@@ -653,7 +666,7 @@ private Mono<LinkedServiceInner> deleteAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Linked service resource container.
+     * @return the top level Linked service resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedServiceInner> deleteAsync(
@@ -706,7 +719,7 @@ public LinkedServiceInner delete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
@@ -734,6 +747,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -744,7 +758,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             linkedServiceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -761,7 +775,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
@@ -789,6 +803,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -797,7 +812,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 linkedServiceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -812,7 +827,7 @@ private Mono<Response<LinkedServiceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedServiceInner> getAsync(
@@ -854,7 +869,7 @@ public LinkedServiceInner get(String resourceGroupName, String workspaceName, St
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<LinkedServiceInner> getWithResponse(
@@ -870,7 +885,8 @@ public Response<LinkedServiceInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
@@ -894,6 +910,7 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -903,7 +920,7 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -923,7 +940,8 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
@@ -947,6 +965,7 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -954,7 +973,7 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -972,7 +991,7 @@ private Mono<PagedResponse<LinkedServiceInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<LinkedServiceInner> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -988,7 +1007,7 @@ private PagedFlux<LinkedServiceInner> listByWorkspaceAsync(String resourceGroupN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<LinkedServiceInner> listByWorkspaceAsync(
@@ -1004,7 +1023,7 @@ private PagedFlux<LinkedServiceInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<LinkedServiceInner> listByWorkspace(String resourceGroupName, String workspaceName) {
@@ -1020,7 +1039,7 @@ public PagedIterable<LinkedServiceInner> listByWorkspace(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<LinkedServiceInner> listByWorkspace(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesImpl.java
index 869b4d26c64de..d73159139a972 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedServicesImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.LinkedServiceInner;
 import com.azure.resourcemanager.loganalytics.models.LinkedService;
 import com.azure.resourcemanager.loganalytics.models.LinkedServices;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class LinkedServicesImpl implements LinkedServices {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedServicesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(LinkedServicesImpl.class);
 
     private final LinkedServicesClient innerClient;
 
@@ -88,7 +87,7 @@ public PagedIterable<LinkedService> listByWorkspace(
     public LinkedService getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -96,14 +95,14 @@ public LinkedService getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String linkedServiceName = Utils.getValueFromIdByName(id, "linkedServices");
         if (linkedServiceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -115,7 +114,7 @@ public LinkedService getById(String id) {
     public Response<LinkedService> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -123,14 +122,14 @@ public Response<LinkedService> getByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String linkedServiceName = Utils.getValueFromIdByName(id, "linkedServices");
         if (linkedServiceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -142,7 +141,7 @@ public Response<LinkedService> getByIdWithResponse(String id, Context context) {
     public LinkedService deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -150,14 +149,14 @@ public LinkedService deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String linkedServiceName = Utils.getValueFromIdByName(id, "linkedServices");
         if (linkedServiceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -169,7 +168,7 @@ public LinkedService deleteById(String id) {
     public LinkedService deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -177,14 +176,14 @@ public LinkedService deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String linkedServiceName = Utils.getValueFromIdByName(id, "linkedServices");
         if (linkedServiceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsClientImpl.java
index 09b7f5548f2a5..29eb2c4f70ef5 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsClientImpl.java
@@ -28,7 +28,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.LinkedStorageAccountsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.LinkedStorageAccountsResourceInner;
 import com.azure.resourcemanager.loganalytics.models.DataSourceType;
@@ -37,8 +36,6 @@
 
 /** An instance of this class provides access to all the operations defined in LinkedStorageAccountsClient. */
 public final class LinkedStorageAccountsClientImpl implements LinkedStorageAccountsClient {
-    private final ClientLogger logger = new ClientLogger(LinkedStorageAccountsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final LinkedStorageAccountsService service;
 
@@ -139,7 +136,8 @@ Mono<Response<LinkedStorageAccountsListResult>> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return linked storage accounts top level resource container.
+     * @return linked storage accounts top level resource container along with {@link Response} on successful completion
+     *     of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithResponseAsync(
@@ -174,6 +172,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -185,7 +184,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
                             workspaceName,
                             dataSourceType,
                             this.client.getSubscriptionId(),
-                            this.client.getApiVersion(),
+                            apiVersion,
                             parameters,
                             accept,
                             context))
@@ -204,7 +203,8 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return linked storage accounts top level resource container.
+     * @return linked storage accounts top level resource container along with {@link Response} on successful completion
+     *     of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithResponseAsync(
@@ -240,6 +240,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -249,7 +250,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
                 workspaceName,
                 dataSourceType,
                 this.client.getSubscriptionId(),
-                this.client.getApiVersion(),
+                apiVersion,
                 parameters,
                 accept,
                 context);
@@ -266,7 +267,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> createOrUpdateWithRes
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return linked storage accounts top level resource container.
+     * @return linked storage accounts top level resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedStorageAccountsResourceInner> createOrUpdateAsync(
@@ -319,7 +320,7 @@ public LinkedStorageAccountsResourceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return linked storage accounts top level resource container.
+     * @return linked storage accounts top level resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<LinkedStorageAccountsResourceInner> createOrUpdateWithResponse(
@@ -341,7 +342,7 @@ public Response<LinkedStorageAccountsResourceInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -368,6 +369,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -377,7 +379,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataSourceType,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -393,7 +395,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -420,6 +422,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .delete(
@@ -427,7 +430,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataSourceType,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 context);
     }
@@ -441,7 +444,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, DataSourceType dataSourceType) {
@@ -474,7 +477,7 @@ public void delete(String resourceGroupName, String workspaceName, DataSourceTyp
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
@@ -491,7 +494,8 @@ public Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
@@ -518,6 +522,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -528,7 +533,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             dataSourceType,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -545,7 +550,8 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
@@ -572,6 +578,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -580,7 +587,7 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 dataSourceType,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -595,7 +602,8 @@ private Mono<Response<LinkedStorageAccountsResourceInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace on
+     *     successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<LinkedStorageAccountsResourceInner> getAsync(
@@ -638,7 +646,8 @@ public LinkedStorageAccountsResourceInner get(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<LinkedStorageAccountsResourceInner> getWithResponse(
@@ -656,7 +665,7 @@ public Response<LinkedStorageAccountsResourceInner> getWithResponse(
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type along with {@link PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceSinglePageAsync(
@@ -680,6 +689,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -689,7 +699,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
                             this.client.getEndpoint(),
                             this.client.getSubscriptionId(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             workspaceName,
                             accept,
                             context))
@@ -711,7 +721,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type along with {@link PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceSinglePageAsync(
@@ -735,6 +745,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -742,7 +753,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
                 this.client.getEndpoint(),
                 this.client.getSubscriptionId(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 workspaceName,
                 accept,
                 context)
@@ -762,7 +773,7 @@ private Mono<PagedResponse<LinkedStorageAccountsResourceInner>> listByWorkspaceS
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<LinkedStorageAccountsResourceInner> listByWorkspaceAsync(
@@ -781,7 +792,7 @@ private PagedFlux<LinkedStorageAccountsResourceInner> listByWorkspaceAsync(
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<LinkedStorageAccountsResourceInner> listByWorkspaceAsync(
@@ -799,7 +810,7 @@ private PagedFlux<LinkedStorageAccountsResourceInner> listByWorkspaceAsync(
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<LinkedStorageAccountsResourceInner> listByWorkspace(
@@ -818,7 +829,7 @@ public PagedIterable<LinkedStorageAccountsResourceInner> listByWorkspace(
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<LinkedStorageAccountsResourceInner> listByWorkspace(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsImpl.java
index 1b4b999a6846c..51e986a614e14 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LinkedStorageAccountsImpl.java
@@ -14,10 +14,9 @@
 import com.azure.resourcemanager.loganalytics.models.DataSourceType;
 import com.azure.resourcemanager.loganalytics.models.LinkedStorageAccounts;
 import com.azure.resourcemanager.loganalytics.models.LinkedStorageAccountsResource;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class LinkedStorageAccountsImpl implements LinkedStorageAccounts {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedStorageAccountsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(LinkedStorageAccountsImpl.class);
 
     private final LinkedStorageAccountsClient innerClient;
 
@@ -82,7 +81,7 @@ public PagedIterable<LinkedStorageAccountsResource> listByWorkspace(
     public LinkedStorageAccountsResource getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -90,7 +89,7 @@ public LinkedStorageAccountsResource getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -98,7 +97,7 @@ public LinkedStorageAccountsResource getById(String id) {
         DataSourceType dataSourceType =
             DataSourceType.fromString(Utils.getValueFromIdByName(id, "linkedStorageAccounts"));
         if (dataSourceType == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -112,7 +111,7 @@ public LinkedStorageAccountsResource getById(String id) {
     public Response<LinkedStorageAccountsResource> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -120,7 +119,7 @@ public Response<LinkedStorageAccountsResource> getByIdWithResponse(String id, Co
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -128,7 +127,7 @@ public Response<LinkedStorageAccountsResource> getByIdWithResponse(String id, Co
         DataSourceType dataSourceType =
             DataSourceType.fromString(Utils.getValueFromIdByName(id, "linkedStorageAccounts"));
         if (dataSourceType == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -142,7 +141,7 @@ public Response<LinkedStorageAccountsResource> getByIdWithResponse(String id, Co
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -150,7 +149,7 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -158,7 +157,7 @@ public void deleteById(String id) {
         DataSourceType dataSourceType =
             DataSourceType.fromString(Utils.getValueFromIdByName(id, "linkedStorageAccounts"));
         if (dataSourceType == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -166,13 +165,13 @@ public void deleteById(String id) {
                                 "The resource ID '%s' is not valid. Missing path segment 'linkedStorageAccounts'.",
                                 id)));
         }
-        this.deleteWithResponse(resourceGroupName, workspaceName, dataSourceType, Context.NONE).getValue();
+        this.deleteWithResponse(resourceGroupName, workspaceName, dataSourceType, Context.NONE);
     }
 
     public Response<Void> deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -180,7 +179,7 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -188,7 +187,7 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         DataSourceType dataSourceType =
             DataSourceType.fromString(Utils.getValueFromIdByName(id, "linkedStorageAccounts"));
         if (dataSourceType == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackImpl.java
new file mode 100644
index 0000000000000..c829b2c817da5
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackImpl.java
@@ -0,0 +1,193 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.management.Region;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPack;
+import com.azure.resourcemanager.loganalytics.models.TagsResource;
+import java.time.OffsetDateTime;
+import java.util.Collections;
+import java.util.Map;
+
+public final class LogAnalyticsQueryPackImpl
+    implements LogAnalyticsQueryPack, LogAnalyticsQueryPack.Definition, LogAnalyticsQueryPack.Update {
+    private LogAnalyticsQueryPackInner innerObject;
+
+    private final com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager;
+
+    public String id() {
+        return this.innerModel().id();
+    }
+
+    public String name() {
+        return this.innerModel().name();
+    }
+
+    public String type() {
+        return this.innerModel().type();
+    }
+
+    public String location() {
+        return this.innerModel().location();
+    }
+
+    public Map<String, String> tags() {
+        Map<String, String> inner = this.innerModel().tags();
+        if (inner != null) {
+            return Collections.unmodifiableMap(inner);
+        } else {
+            return Collections.emptyMap();
+        }
+    }
+
+    public String queryPackId() {
+        return this.innerModel().queryPackId();
+    }
+
+    public OffsetDateTime timeCreated() {
+        return this.innerModel().timeCreated();
+    }
+
+    public OffsetDateTime timeModified() {
+        return this.innerModel().timeModified();
+    }
+
+    public String provisioningState() {
+        return this.innerModel().provisioningState();
+    }
+
+    public Region region() {
+        return Region.fromName(this.regionName());
+    }
+
+    public String regionName() {
+        return this.location();
+    }
+
+    public LogAnalyticsQueryPackInner innerModel() {
+        return this.innerObject;
+    }
+
+    private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
+        return this.serviceManager;
+    }
+
+    private String resourceGroupName;
+
+    private String queryPackName;
+
+    private TagsResource updateQueryPackTags;
+
+    public LogAnalyticsQueryPackImpl withExistingResourceGroup(String resourceGroupName) {
+        this.resourceGroupName = resourceGroupName;
+        return this;
+    }
+
+    public LogAnalyticsQueryPack create() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .createOrUpdateWithResponse(resourceGroupName, queryPackName, this.innerModel(), Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPack create(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .createOrUpdateWithResponse(resourceGroupName, queryPackName, this.innerModel(), context)
+                .getValue();
+        return this;
+    }
+
+    LogAnalyticsQueryPackImpl(String name, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = new LogAnalyticsQueryPackInner();
+        this.serviceManager = serviceManager;
+        this.queryPackName = name;
+    }
+
+    public LogAnalyticsQueryPackImpl update() {
+        this.updateQueryPackTags = new TagsResource();
+        return this;
+    }
+
+    public LogAnalyticsQueryPack apply() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .updateTagsWithResponse(resourceGroupName, queryPackName, updateQueryPackTags, Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPack apply(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .updateTagsWithResponse(resourceGroupName, queryPackName, updateQueryPackTags, context)
+                .getValue();
+        return this;
+    }
+
+    LogAnalyticsQueryPackImpl(
+        LogAnalyticsQueryPackInner innerObject,
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = innerObject;
+        this.serviceManager = serviceManager;
+        this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+        this.queryPackName = Utils.getValueFromIdByName(innerObject.id(), "queryPacks");
+    }
+
+    public LogAnalyticsQueryPack refresh() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .getByResourceGroupWithResponse(resourceGroupName, queryPackName, Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPack refresh(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueryPacks()
+                .getByResourceGroupWithResponse(resourceGroupName, queryPackName, context)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPackImpl withRegion(Region location) {
+        this.innerModel().withLocation(location.toString());
+        return this;
+    }
+
+    public LogAnalyticsQueryPackImpl withRegion(String location) {
+        this.innerModel().withLocation(location);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackImpl withTags(Map<String, String> tags) {
+        if (isInCreateMode()) {
+            this.innerModel().withTags(tags);
+            return this;
+        } else {
+            this.updateQueryPackTags.withTags(tags);
+            return this;
+        }
+    }
+
+    private boolean isInCreateMode() {
+        return this.innerModel().id() == null;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackQueryImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackQueryImpl.java
new file mode 100644
index 0000000000000..104483919b9cb
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/LogAnalyticsQueryPackQueryImpl.java
@@ -0,0 +1,214 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.management.SystemData;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuery;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import java.time.OffsetDateTime;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+public final class LogAnalyticsQueryPackQueryImpl
+    implements LogAnalyticsQueryPackQuery, LogAnalyticsQueryPackQuery.Definition, LogAnalyticsQueryPackQuery.Update {
+    private LogAnalyticsQueryPackQueryInner innerObject;
+
+    private final com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager;
+
+    public String id() {
+        return this.innerModel().id();
+    }
+
+    public String name() {
+        return this.innerModel().name();
+    }
+
+    public String type() {
+        return this.innerModel().type();
+    }
+
+    public SystemData systemData() {
+        return this.innerModel().systemData();
+    }
+
+    public String idPropertiesId() {
+        return this.innerModel().idPropertiesId();
+    }
+
+    public String displayName() {
+        return this.innerModel().displayName();
+    }
+
+    public OffsetDateTime timeCreated() {
+        return this.innerModel().timeCreated();
+    }
+
+    public OffsetDateTime timeModified() {
+        return this.innerModel().timeModified();
+    }
+
+    public String author() {
+        return this.innerModel().author();
+    }
+
+    public String description() {
+        return this.innerModel().description();
+    }
+
+    public String body() {
+        return this.innerModel().body();
+    }
+
+    public LogAnalyticsQueryPackQueryPropertiesRelated related() {
+        return this.innerModel().related();
+    }
+
+    public Map<String, List<String>> tags() {
+        Map<String, List<String>> inner = this.innerModel().tags();
+        if (inner != null) {
+            return Collections.unmodifiableMap(inner);
+        } else {
+            return Collections.emptyMap();
+        }
+    }
+
+    public Object properties() {
+        return this.innerModel().properties();
+    }
+
+    public LogAnalyticsQueryPackQueryInner innerModel() {
+        return this.innerObject;
+    }
+
+    private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
+        return this.serviceManager;
+    }
+
+    private String resourceGroupName;
+
+    private String queryPackName;
+
+    private String id;
+
+    public LogAnalyticsQueryPackQueryImpl withExistingQueryPack(String resourceGroupName, String queryPackName) {
+        this.resourceGroupName = resourceGroupName;
+        this.queryPackName = queryPackName;
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQuery create() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .putWithResponse(resourceGroupName, queryPackName, id, this.innerModel(), Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQuery create(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .putWithResponse(resourceGroupName, queryPackName, id, this.innerModel(), context)
+                .getValue();
+        return this;
+    }
+
+    LogAnalyticsQueryPackQueryImpl(
+        String name, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = new LogAnalyticsQueryPackQueryInner();
+        this.serviceManager = serviceManager;
+        this.id = name;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl update() {
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQuery apply() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .updateWithResponse(resourceGroupName, queryPackName, id, this.innerModel(), Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQuery apply(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .updateWithResponse(resourceGroupName, queryPackName, id, this.innerModel(), context)
+                .getValue();
+        return this;
+    }
+
+    LogAnalyticsQueryPackQueryImpl(
+        LogAnalyticsQueryPackQueryInner innerObject,
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = innerObject;
+        this.serviceManager = serviceManager;
+        this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+        this.queryPackName = Utils.getValueFromIdByName(innerObject.id(), "queryPacks");
+        this.id = Utils.getValueFromIdByName(innerObject.id(), "queries");
+    }
+
+    public LogAnalyticsQueryPackQuery refresh() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .getWithResponse(resourceGroupName, queryPackName, id, Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQuery refresh(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getQueries()
+                .getWithResponse(resourceGroupName, queryPackName, id, context)
+                .getValue();
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withTags(Map<String, List<String>> tags) {
+        this.innerModel().withTags(tags);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withDisplayName(String displayName) {
+        this.innerModel().withDisplayName(displayName);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withDescription(String description) {
+        this.innerModel().withDescription(description);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withBody(String body) {
+        this.innerModel().withBody(body);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withRelated(LogAnalyticsQueryPackQueryPropertiesRelated related) {
+        this.innerModel().withRelated(related);
+        return this;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl withProperties(Object properties) {
+        this.innerModel().withProperties(properties);
+        return this;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsClientImpl.java
index 0b0fa63bfc39e..1ce366640bca6 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsClientImpl.java
@@ -25,7 +25,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.ManagementGroupsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.ManagementGroupInner;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceListManagementGroupsResult;
@@ -33,8 +32,6 @@
 
 /** An instance of this class provides access to all the operations defined in ManagementGroupsClient. */
 public final class ManagementGroupsClientImpl implements ManagementGroupsClient {
-    private final ClientLogger logger = new ClientLogger(ManagementGroupsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final ManagementGroupsService service;
 
@@ -83,7 +80,8 @@ Mono<Response<WorkspaceListManagementGroupsResult>> list(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
@@ -107,6 +105,7 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -116,7 +115,7 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -136,7 +135,8 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
@@ -160,6 +160,7 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -167,7 +168,7 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -185,7 +186,7 @@ private Mono<PagedResponse<ManagementGroupInner>> listSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ManagementGroupInner> listAsync(String resourceGroupName, String workspaceName) {
@@ -201,7 +202,7 @@ private PagedFlux<ManagementGroupInner> listAsync(String resourceGroupName, Stri
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<ManagementGroupInner> listAsync(String resourceGroupName, String workspaceName, Context context) {
@@ -216,7 +217,7 @@ private PagedFlux<ManagementGroupInner> listAsync(String resourceGroupName, Stri
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ManagementGroupInner> list(String resourceGroupName, String workspaceName) {
@@ -232,7 +233,7 @@ public PagedIterable<ManagementGroupInner> list(String resourceGroupName, String
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<ManagementGroupInner> list(String resourceGroupName, String workspaceName, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsImpl.java
index 2e189c97e8452..d3288ff67af17 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/ManagementGroupsImpl.java
@@ -11,10 +11,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.ManagementGroupInner;
 import com.azure.resourcemanager.loganalytics.models.ManagementGroup;
 import com.azure.resourcemanager.loganalytics.models.ManagementGroups;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class ManagementGroupsImpl implements ManagementGroups {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ManagementGroupsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(ManagementGroupsImpl.class);
 
     private final ManagementGroupsClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesClientImpl.java
index 7dfd440bdfd28..483de8fa3cd63 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesClientImpl.java
@@ -21,15 +21,12 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.OperationStatusesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.OperationStatusInner;
 import reactor.core.publisher.Mono;
 
 /** An instance of this class provides access to all the operations defined in OperationStatusesClient. */
 public final class OperationStatusesClientImpl implements OperationStatusesClient {
-    private final ClientLogger logger = new ClientLogger(OperationStatusesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final OperationStatusesService service;
 
@@ -78,7 +75,8 @@ Mono<Response<OperationStatusInner>> get(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<OperationStatusInner>> getWithResponseAsync(String location, String asyncOperationId) {
@@ -101,6 +99,7 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(String locatio
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -110,7 +109,7 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(String locatio
                             this.client.getEndpoint(),
                             location,
                             asyncOperationId,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -126,7 +125,8 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(String locatio
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<OperationStatusInner>> getWithResponseAsync(
@@ -150,6 +150,7 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -157,7 +158,7 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(
                 this.client.getEndpoint(),
                 location,
                 asyncOperationId,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -171,7 +172,7 @@ private Mono<Response<OperationStatusInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<OperationStatusInner> getAsync(String location, String asyncOperationId) {
@@ -210,7 +211,7 @@ public OperationStatusInner get(String location, String asyncOperationId) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<OperationStatusInner> getWithResponse(String location, String asyncOperationId, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesImpl.java
index 562ebf08fe6d5..0cf021749ca23 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationStatusesImpl.java
@@ -12,10 +12,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.OperationStatusInner;
 import com.azure.resourcemanager.loganalytics.models.OperationStatus;
 import com.azure.resourcemanager.loganalytics.models.OperationStatuses;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class OperationStatusesImpl implements OperationStatuses {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationStatusesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(OperationStatusesImpl.class);
 
     private final OperationStatusesClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientBuilder.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientBuilder.java
index 4317db2dd3e0e..2e840dd87767a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientBuilder.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientBuilder.java
@@ -7,7 +7,6 @@
 import com.azure.core.annotation.ServiceClientBuilder;
 import com.azure.core.http.HttpPipeline;
 import com.azure.core.http.HttpPipelineBuilder;
-import com.azure.core.http.policy.CookiePolicy;
 import com.azure.core.http.policy.RetryPolicy;
 import com.azure.core.http.policy.UserAgentPolicy;
 import com.azure.core.management.AzureEnvironment;
@@ -67,34 +66,34 @@ public OperationalInsightsManagementClientBuilder environment(AzureEnvironment e
     }
 
     /*
-     * The default poll interval for long-running operation
+     * The HTTP pipeline to send requests through
      */
-    private Duration defaultPollInterval;
+    private HttpPipeline pipeline;
 
     /**
-     * Sets The default poll interval for long-running operation.
+     * Sets The HTTP pipeline to send requests through.
      *
-     * @param defaultPollInterval the defaultPollInterval value.
+     * @param pipeline the pipeline value.
      * @return the OperationalInsightsManagementClientBuilder.
      */
-    public OperationalInsightsManagementClientBuilder defaultPollInterval(Duration defaultPollInterval) {
-        this.defaultPollInterval = defaultPollInterval;
+    public OperationalInsightsManagementClientBuilder pipeline(HttpPipeline pipeline) {
+        this.pipeline = pipeline;
         return this;
     }
 
     /*
-     * The HTTP pipeline to send requests through
+     * The default poll interval for long-running operation
      */
-    private HttpPipeline pipeline;
+    private Duration defaultPollInterval;
 
     /**
-     * Sets The HTTP pipeline to send requests through.
+     * Sets The default poll interval for long-running operation.
      *
-     * @param pipeline the pipeline value.
+     * @param defaultPollInterval the defaultPollInterval value.
      * @return the OperationalInsightsManagementClientBuilder.
      */
-    public OperationalInsightsManagementClientBuilder pipeline(HttpPipeline pipeline) {
-        this.pipeline = pipeline;
+    public OperationalInsightsManagementClientBuilder defaultPollInterval(Duration defaultPollInterval) {
+        this.defaultPollInterval = defaultPollInterval;
         return this;
     }
 
@@ -120,21 +119,21 @@ public OperationalInsightsManagementClientBuilder serializerAdapter(SerializerAd
      * @return an instance of OperationalInsightsManagementClientImpl.
      */
     public OperationalInsightsManagementClientImpl buildClient() {
+        if (pipeline == null) {
+            this.pipeline = new HttpPipelineBuilder().policies(new UserAgentPolicy(), new RetryPolicy()).build();
+        }
         if (endpoint == null) {
             this.endpoint = "https://management.azure.com";
         }
         if (environment == null) {
             this.environment = AzureEnvironment.AZURE;
         }
+        if (pipeline == null) {
+            this.pipeline = new HttpPipelineBuilder().policies(new UserAgentPolicy(), new RetryPolicy()).build();
+        }
         if (defaultPollInterval == null) {
             this.defaultPollInterval = Duration.ofSeconds(30);
         }
-        if (pipeline == null) {
-            this.pipeline =
-                new HttpPipelineBuilder()
-                    .policies(new UserAgentPolicy(), new RetryPolicy(), new CookiePolicy())
-                    .build();
-        }
         if (serializerAdapter == null) {
             this.serializerAdapter = SerializerFactory.createDefaultManagementSerializerAdapter();
         }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientImpl.java
index 33ae49d8a88dd..5071ccc1dc52c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationalInsightsManagementClientImpl.java
@@ -34,6 +34,8 @@
 import com.azure.resourcemanager.loganalytics.fluent.OperationStatusesClient;
 import com.azure.resourcemanager.loganalytics.fluent.OperationalInsightsManagementClient;
 import com.azure.resourcemanager.loganalytics.fluent.OperationsClient;
+import com.azure.resourcemanager.loganalytics.fluent.QueriesClient;
+import com.azure.resourcemanager.loganalytics.fluent.QueryPacksClient;
 import com.azure.resourcemanager.loganalytics.fluent.SavedSearchesClient;
 import com.azure.resourcemanager.loganalytics.fluent.SchemasClient;
 import com.azure.resourcemanager.loganalytics.fluent.SharedKeysOperationsClient;
@@ -55,8 +57,6 @@
 /** Initializes a new instance of the OperationalInsightsManagementClientImpl type. */
 @ServiceClient(builder = OperationalInsightsManagementClientBuilder.class)
 public final class OperationalInsightsManagementClientImpl implements OperationalInsightsManagementClient {
-    private final ClientLogger logger = new ClientLogger(OperationalInsightsManagementClientImpl.class);
-
     /** The ID of the target subscription. */
     private final String subscriptionId;
 
@@ -81,18 +81,6 @@ public String getEndpoint() {
         return this.endpoint;
     }
 
-    /** Api Version. */
-    private final String apiVersion;
-
-    /**
-     * Gets Api Version.
-     *
-     * @return the apiVersion value.
-     */
-    public String getApiVersion() {
-        return this.apiVersion;
-    }
-
     /** The HTTP pipeline to send requests through. */
     private final HttpPipeline httpPipeline;
 
@@ -129,6 +117,30 @@ public Duration getDefaultPollInterval() {
         return this.defaultPollInterval;
     }
 
+    /** The QueryPacksClient object to access its operations. */
+    private final QueryPacksClient queryPacks;
+
+    /**
+     * Gets the QueryPacksClient object to access its operations.
+     *
+     * @return the QueryPacksClient object.
+     */
+    public QueryPacksClient getQueryPacks() {
+        return this.queryPacks;
+    }
+
+    /** The QueriesClient object to access its operations. */
+    private final QueriesClient queries;
+
+    /**
+     * Gets the QueriesClient object to access its operations.
+     *
+     * @return the QueriesClient object.
+     */
+    public QueriesClient getQueries() {
+        return this.queries;
+    }
+
     /** The DataExportsClient object to access its operations. */
     private final DataExportsClient dataExports;
 
@@ -201,18 +213,6 @@ public ManagementGroupsClient getManagementGroups() {
         return this.managementGroups;
     }
 
-    /** The OperationsClient object to access its operations. */
-    private final OperationsClient operations;
-
-    /**
-     * Gets the OperationsClient object to access its operations.
-     *
-     * @return the OperationsClient object.
-     */
-    public OperationsClient getOperations() {
-        return this.operations;
-    }
-
     /** The OperationStatusesClient object to access its operations. */
     private final OperationStatusesClient operationStatuses;
 
@@ -249,42 +249,6 @@ public UsagesClient getUsages() {
         return this.usages;
     }
 
-    /** The WorkspacesClient object to access its operations. */
-    private final WorkspacesClient workspaces;
-
-    /**
-     * Gets the WorkspacesClient object to access its operations.
-     *
-     * @return the WorkspacesClient object.
-     */
-    public WorkspacesClient getWorkspaces() {
-        return this.workspaces;
-    }
-
-    /** The DeletedWorkspacesClient object to access its operations. */
-    private final DeletedWorkspacesClient deletedWorkspaces;
-
-    /**
-     * Gets the DeletedWorkspacesClient object to access its operations.
-     *
-     * @return the DeletedWorkspacesClient object.
-     */
-    public DeletedWorkspacesClient getDeletedWorkspaces() {
-        return this.deletedWorkspaces;
-    }
-
-    /** The ClustersClient object to access its operations. */
-    private final ClustersClient clusters;
-
-    /**
-     * Gets the ClustersClient object to access its operations.
-     *
-     * @return the ClustersClient object.
-     */
-    public ClustersClient getClusters() {
-        return this.clusters;
-    }
-
     /** The StorageInsightConfigsClient object to access its operations. */
     private final StorageInsightConfigsClient storageInsightConfigs;
 
@@ -357,6 +321,54 @@ public WorkspacePurgesClient getWorkspacePurges() {
         return this.workspacePurges;
     }
 
+    /** The ClustersClient object to access its operations. */
+    private final ClustersClient clusters;
+
+    /**
+     * Gets the ClustersClient object to access its operations.
+     *
+     * @return the ClustersClient object.
+     */
+    public ClustersClient getClusters() {
+        return this.clusters;
+    }
+
+    /** The OperationsClient object to access its operations. */
+    private final OperationsClient operations;
+
+    /**
+     * Gets the OperationsClient object to access its operations.
+     *
+     * @return the OperationsClient object.
+     */
+    public OperationsClient getOperations() {
+        return this.operations;
+    }
+
+    /** The WorkspacesClient object to access its operations. */
+    private final WorkspacesClient workspaces;
+
+    /**
+     * Gets the WorkspacesClient object to access its operations.
+     *
+     * @return the WorkspacesClient object.
+     */
+    public WorkspacesClient getWorkspaces() {
+        return this.workspaces;
+    }
+
+    /** The DeletedWorkspacesClient object to access its operations. */
+    private final DeletedWorkspacesClient deletedWorkspaces;
+
+    /**
+     * Gets the DeletedWorkspacesClient object to access its operations.
+     *
+     * @return the DeletedWorkspacesClient object.
+     */
+    public DeletedWorkspacesClient getDeletedWorkspaces() {
+        return this.deletedWorkspaces;
+    }
+
     /** The TablesClient object to access its operations. */
     private final TablesClient tables;
 
@@ -391,26 +403,27 @@ public TablesClient getTables() {
         this.defaultPollInterval = defaultPollInterval;
         this.subscriptionId = subscriptionId;
         this.endpoint = endpoint;
-        this.apiVersion = "2020-08-01";
+        this.queryPacks = new QueryPacksClientImpl(this);
+        this.queries = new QueriesClientImpl(this);
         this.dataExports = new DataExportsClientImpl(this);
         this.dataSources = new DataSourcesClientImpl(this);
         this.intelligencePacks = new IntelligencePacksClientImpl(this);
         this.linkedServices = new LinkedServicesClientImpl(this);
         this.linkedStorageAccounts = new LinkedStorageAccountsClientImpl(this);
         this.managementGroups = new ManagementGroupsClientImpl(this);
-        this.operations = new OperationsClientImpl(this);
         this.operationStatuses = new OperationStatusesClientImpl(this);
         this.sharedKeysOperations = new SharedKeysOperationsClientImpl(this);
         this.usages = new UsagesClientImpl(this);
-        this.workspaces = new WorkspacesClientImpl(this);
-        this.deletedWorkspaces = new DeletedWorkspacesClientImpl(this);
-        this.clusters = new ClustersClientImpl(this);
         this.storageInsightConfigs = new StorageInsightConfigsClientImpl(this);
         this.savedSearches = new SavedSearchesClientImpl(this);
         this.availableServiceTiers = new AvailableServiceTiersClientImpl(this);
         this.gateways = new GatewaysClientImpl(this);
         this.schemas = new SchemasClientImpl(this);
         this.workspacePurges = new WorkspacePurgesClientImpl(this);
+        this.clusters = new ClustersClientImpl(this);
+        this.operations = new OperationsClientImpl(this);
+        this.workspaces = new WorkspacesClientImpl(this);
+        this.deletedWorkspaces = new DeletedWorkspacesClientImpl(this);
         this.tables = new TablesClientImpl(this);
     }
 
@@ -497,7 +510,7 @@ public <T, U> Mono<U> getLroFinalResultOrError(AsyncPollResponse<PollResult<T>,
                             managementError = null;
                         }
                     } catch (IOException | RuntimeException ioe) {
-                        logger.logThrowableAsWarning(ioe);
+                        LOGGER.logThrowableAsWarning(ioe);
                     }
                 }
             } else {
@@ -556,4 +569,6 @@ public Mono<String> getBodyAsString(Charset charset) {
             return Mono.just(new String(responseBody, charset));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(OperationalInsightsManagementClientImpl.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsClientImpl.java
index 8ed8020bfcb34..bb310d8b851bd 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsClientImpl.java
@@ -25,7 +25,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.OperationsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.OperationInner;
 import com.azure.resourcemanager.loganalytics.models.OperationListResult;
@@ -33,8 +32,6 @@
 
 /** An instance of this class provides access to all the operations defined in OperationsClient. */
 public final class OperationsClientImpl implements OperationsClient {
-    private final ClientLogger logger = new ClientLogger(OperationsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final OperationsService service;
 
@@ -85,7 +82,8 @@ Mono<Response<OperationListResult>> listNext(
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<OperationInner>> listSinglePageAsync() {
@@ -95,10 +93,10 @@ private Mono<PagedResponse<OperationInner>> listSinglePageAsync() {
                     new IllegalArgumentException(
                         "Parameter this.client.getEndpoint() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
-            .withContext(
-                context -> service.list(this.client.getEndpoint(), this.client.getApiVersion(), accept, context))
+            .withContext(context -> service.list(this.client.getEndpoint(), apiVersion, accept, context))
             .<PagedResponse<OperationInner>>map(
                 res ->
                     new PagedResponseBase<>(
@@ -118,7 +116,8 @@ private Mono<PagedResponse<OperationInner>> listSinglePageAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<OperationInner>> listSinglePageAsync(Context context) {
@@ -128,10 +127,11 @@ private Mono<PagedResponse<OperationInner>> listSinglePageAsync(Context context)
                     new IllegalArgumentException(
                         "Parameter this.client.getEndpoint() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .list(this.client.getEndpoint(), this.client.getApiVersion(), accept, context)
+            .list(this.client.getEndpoint(), apiVersion, accept, context)
             .map(
                 res ->
                     new PagedResponseBase<>(
@@ -148,7 +148,7 @@ private Mono<PagedResponse<OperationInner>> listSinglePageAsync(Context context)
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<OperationInner> listAsync() {
@@ -162,7 +162,7 @@ private PagedFlux<OperationInner> listAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<OperationInner> listAsync(Context context) {
@@ -175,7 +175,7 @@ private PagedFlux<OperationInner> listAsync(Context context) {
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<OperationInner> list() {
@@ -189,7 +189,7 @@ public PagedIterable<OperationInner> list() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<OperationInner> list(Context context) {
@@ -203,7 +203,8 @@ public PagedIterable<OperationInner> list(Context context) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<OperationInner>> listNextSinglePageAsync(String nextLink) {
@@ -239,7 +240,8 @@ private Mono<PagedResponse<OperationInner>> listNextSinglePageAsync(String nextL
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<OperationInner>> listNextSinglePageAsync(String nextLink, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsImpl.java
index 18bbc58b27cc0..703e36cbc2e41 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/OperationsImpl.java
@@ -11,10 +11,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.OperationInner;
 import com.azure.resourcemanager.loganalytics.models.Operation;
 import com.azure.resourcemanager.loganalytics.models.Operations;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class OperationsImpl implements Operations {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(OperationsImpl.class);
 
     private final OperationsClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesClientImpl.java
new file mode 100644
index 0000000000000..2e875b60cef40
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesClientImpl.java
@@ -0,0 +1,1606 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Post;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.loganalytics.fluent.QueriesClient;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryListResult;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchProperties;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in QueriesClient. */
+public final class QueriesClientImpl implements QueriesClient {
+    /** The proxy service used to perform REST calls. */
+    private final QueriesService service;
+
+    /** The service client containing this operation class. */
+    private final OperationalInsightsManagementClientImpl client;
+
+    /**
+     * Initializes an instance of QueriesClientImpl.
+     *
+     * @param client the instance of the service client containing this operation class.
+     */
+    QueriesClientImpl(OperationalInsightsManagementClientImpl client) {
+        this.service = RestProxy.create(QueriesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+        this.client = client;
+    }
+
+    /**
+     * The interface defining all the services for OperationalInsightsManagementClientQueries to be used by the proxy
+     * service to perform REST calls.
+     */
+    @Host("{$host}")
+    @ServiceInterface(name = "OperationalInsightsM")
+    private interface QueriesService {
+        @Headers({"Content-Type: application/json"})
+        @Get(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryListResult>> list(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @QueryParam("api-version") String apiVersion,
+            @QueryParam("$top") Long top,
+            @QueryParam("includeBody") Boolean includeBody,
+            @QueryParam("$skipToken") String skipToken,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Post(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries/search")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryListResult>> search(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @QueryParam("api-version") String apiVersion,
+            @QueryParam("$top") Long top,
+            @QueryParam("includeBody") Boolean includeBody,
+            @QueryParam("$skipToken") String skipToken,
+            @BodyParam("application/json") LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries/{id}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryInner>> get(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @PathParam("id") String id,
+            @QueryParam("api-version") String apiVersion,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Put(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries/{id}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryInner>> put(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @PathParam("id") String id,
+            @QueryParam("api-version") String apiVersion,
+            @BodyParam("application/json") LogAnalyticsQueryPackQueryInner queryPayload,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Patch(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries/{id}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryInner>> update(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @PathParam("id") String id,
+            @QueryParam("api-version") String apiVersion,
+            @BodyParam("application/json") LogAnalyticsQueryPackQueryInner queryPayload,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Delete(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}/queries/{id}")
+        @ExpectedResponses({200, 204})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<Void>> delete(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("queryPackName") String queryPackName,
+            @PathParam("id") String id,
+            @QueryParam("api-version") String apiVersion,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get("{nextLink}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryListResult>> listNext(
+            @PathParam(value = "nextLink", encoded = true) String nextLink,
+            @HostParam("$host") String endpoint,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get("{nextLink}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackQueryListResult>> searchNext(
+            @PathParam(value = "nextLink", encoded = true) String nextLink,
+            @HostParam("$host") String endpoint,
+            @HeaderParam("Accept") String accept,
+            Context context);
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> listSinglePageAsync(
+        String resourceGroupName, String queryPackName, Long top, Boolean includeBody, String skipToken) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .list(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            apiVersion,
+                            top,
+                            includeBody,
+                            skipToken,
+                            accept,
+                            context))
+            .<PagedResponse<LogAnalyticsQueryPackQueryInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> listSinglePageAsync(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .list(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                apiVersion,
+                top,
+                includeBody,
+                skipToken,
+                accept,
+                context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> listAsync(
+        String resourceGroupName, String queryPackName, Long top, Boolean includeBody, String skipToken) {
+        return new PagedFlux<>(
+            () -> listSinglePageAsync(resourceGroupName, queryPackName, top, includeBody, skipToken),
+            nextLink -> listNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> listAsync(String resourceGroupName, String queryPackName) {
+        final Long top = null;
+        final Boolean includeBody = null;
+        final String skipToken = null;
+        return new PagedFlux<>(
+            () -> listSinglePageAsync(resourceGroupName, queryPackName, top, includeBody, skipToken),
+            nextLink -> listNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> listAsync(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        return new PagedFlux<>(
+            () -> listSinglePageAsync(resourceGroupName, queryPackName, top, includeBody, skipToken, context),
+            nextLink -> listNextSinglePageAsync(nextLink, context));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackQueryInner> list(String resourceGroupName, String queryPackName) {
+        final Long top = null;
+        final Boolean includeBody = null;
+        final String skipToken = null;
+        return new PagedIterable<>(listAsync(resourceGroupName, queryPackName, top, includeBody, skipToken));
+    }
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackQueryInner> list(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        return new PagedIterable<>(listAsync(resourceGroupName, queryPackName, top, includeBody, skipToken, context));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> searchSinglePageAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (querySearchProperties == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter querySearchProperties is required and cannot be null."));
+        } else {
+            querySearchProperties.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .search(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            apiVersion,
+                            top,
+                            includeBody,
+                            skipToken,
+                            querySearchProperties,
+                            accept,
+                            context))
+            .<PagedResponse<LogAnalyticsQueryPackQueryInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> searchSinglePageAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (querySearchProperties == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter querySearchProperties is required and cannot be null."));
+        } else {
+            querySearchProperties.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .search(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                apiVersion,
+                top,
+                includeBody,
+                skipToken,
+                querySearchProperties,
+                accept,
+                context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> searchAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken) {
+        return new PagedFlux<>(
+            () ->
+                searchSinglePageAsync(
+                    resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken),
+            nextLink -> searchNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> searchAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties) {
+        final Long top = null;
+        final Boolean includeBody = null;
+        final String skipToken = null;
+        return new PagedFlux<>(
+            () ->
+                searchSinglePageAsync(
+                    resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken),
+            nextLink -> searchNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackQueryInner> searchAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        return new PagedFlux<>(
+            () ->
+                searchSinglePageAsync(
+                    resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken, context),
+            nextLink -> searchNextSinglePageAsync(nextLink, context));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackQueryInner> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties) {
+        final Long top = null;
+        final Boolean includeBody = null;
+        final String skipToken = null;
+        return new PagedIterable<>(
+            searchAsync(resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken));
+    }
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackQueryInner> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        return new PagedIterable<>(
+            searchAsync(resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken, context));
+    }
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> getWithResponseAsync(
+        String resourceGroupName, String queryPackName, String id) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .get(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            id,
+                            apiVersion,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> getWithResponseAsync(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .get(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                id,
+                apiVersion,
+                accept,
+                context);
+    }
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack on successful completion of
+     *     {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackQueryInner> getAsync(String resourceGroupName, String queryPackName, String id) {
+        return getWithResponseAsync(resourceGroupName, queryPackName, id)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackQueryInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackQueryInner get(String resourceGroupName, String queryPackName, String id) {
+        return getAsync(resourceGroupName, queryPackName, id).block();
+    }
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackQueryInner> getWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        return getWithResponseAsync(resourceGroupName, queryPackName, id, context).block();
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> putWithResponseAsync(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        if (queryPayload == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPayload is required and cannot be null."));
+        } else {
+            queryPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .put(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            id,
+                            apiVersion,
+                            queryPayload,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> putWithResponseAsync(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        if (queryPayload == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPayload is required and cannot be null."));
+        } else {
+            queryPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .put(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                id,
+                apiVersion,
+                queryPayload,
+                accept,
+                context);
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackQueryInner> putAsync(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        return putWithResponseAsync(resourceGroupName, queryPackName, id, queryPayload)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackQueryInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackQueryInner put(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        return putAsync(resourceGroupName, queryPackName, id, queryPayload).block();
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackQueryInner> putWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context) {
+        return putWithResponseAsync(resourceGroupName, queryPackName, id, queryPayload, context).block();
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> updateWithResponseAsync(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        if (queryPayload == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPayload is required and cannot be null."));
+        } else {
+            queryPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .update(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            id,
+                            apiVersion,
+                            queryPayload,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackQueryInner>> updateWithResponseAsync(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        if (queryPayload == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPayload is required and cannot be null."));
+        } else {
+            queryPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .update(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                id,
+                apiVersion,
+                queryPayload,
+                accept,
+                context);
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackQueryInner> updateAsync(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        return updateWithResponseAsync(resourceGroupName, queryPackName, id, queryPayload)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackQueryInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackQueryInner update(
+        String resourceGroupName, String queryPackName, String id, LogAnalyticsQueryPackQueryInner queryPayload) {
+        return updateAsync(resourceGroupName, queryPackName, id, queryPayload).block();
+    }
+
+    /**
+     * Adds or Updates a specific Query within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param queryPayload Properties that need to be specified to create a new query and add it to a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics QueryPack-Query definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackQueryInner> updateWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        String id,
+        LogAnalyticsQueryPackQueryInner queryPayload,
+        Context context) {
+        return updateWithResponseAsync(resourceGroupName, queryPackName, id, queryPayload, context).block();
+    }
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> deleteWithResponseAsync(String resourceGroupName, String queryPackName, String id) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .delete(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            queryPackName,
+                            id,
+                            apiVersion,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> deleteWithResponseAsync(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (id == null) {
+            return Mono.error(new IllegalArgumentException("Parameter id is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .delete(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                queryPackName,
+                id,
+                apiVersion,
+                accept,
+                context);
+    }
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return A {@link Mono} that completes when a successful response is received.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Void> deleteAsync(String resourceGroupName, String queryPackName, String id) {
+        return deleteWithResponseAsync(resourceGroupName, queryPackName, id)
+            .flatMap((Response<Void> res) -> Mono.empty());
+    }
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public void delete(String resourceGroupName, String queryPackName, String id) {
+        deleteAsync(resourceGroupName, queryPackName, id).block();
+    }
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<Void> deleteWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        return deleteWithResponseAsync(resourceGroupName, queryPackName, id, context).block();
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> listNextSinglePageAsync(String nextLink) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+            .<PagedResponse<LogAnalyticsQueryPackQueryInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> listNextSinglePageAsync(
+        String nextLink, Context context) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .listNext(nextLink, this.client.getEndpoint(), accept, context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> searchNextSinglePageAsync(String nextLink) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(context -> service.searchNext(nextLink, this.client.getEndpoint(), accept, context))
+            .<PagedResponse<LogAnalyticsQueryPackQueryInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackQueryInner>> searchNextSinglePageAsync(
+        String nextLink, Context context) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .searchNext(nextLink, this.client.getEndpoint(), accept, context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesImpl.java
new file mode 100644
index 0000000000000..cc092ccd04669
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueriesImpl.java
@@ -0,0 +1,221 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.fluent.QueriesClient;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuery;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchProperties;
+import com.azure.resourcemanager.loganalytics.models.Queries;
+
+public final class QueriesImpl implements Queries {
+    private static final ClientLogger LOGGER = new ClientLogger(QueriesImpl.class);
+
+    private final QueriesClient innerClient;
+
+    private final com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager;
+
+    public QueriesImpl(
+        QueriesClient innerClient, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerClient = innerClient;
+        this.serviceManager = serviceManager;
+    }
+
+    public PagedIterable<LogAnalyticsQueryPackQuery> list(String resourceGroupName, String queryPackName) {
+        PagedIterable<LogAnalyticsQueryPackQueryInner> inner =
+            this.serviceClient().list(resourceGroupName, queryPackName);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackQueryImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPackQuery> list(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        PagedIterable<LogAnalyticsQueryPackQueryInner> inner =
+            this.serviceClient().list(resourceGroupName, queryPackName, top, includeBody, skipToken, context);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackQueryImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPackQuery> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties) {
+        PagedIterable<LogAnalyticsQueryPackQueryInner> inner =
+            this.serviceClient().search(resourceGroupName, queryPackName, querySearchProperties);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackQueryImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPackQuery> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context) {
+        PagedIterable<LogAnalyticsQueryPackQueryInner> inner =
+            this
+                .serviceClient()
+                .search(resourceGroupName, queryPackName, querySearchProperties, top, includeBody, skipToken, context);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackQueryImpl(inner1, this.manager()));
+    }
+
+    public LogAnalyticsQueryPackQuery get(String resourceGroupName, String queryPackName, String id) {
+        LogAnalyticsQueryPackQueryInner inner = this.serviceClient().get(resourceGroupName, queryPackName, id);
+        if (inner != null) {
+            return new LogAnalyticsQueryPackQueryImpl(inner, this.manager());
+        } else {
+            return null;
+        }
+    }
+
+    public Response<LogAnalyticsQueryPackQuery> getWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        Response<LogAnalyticsQueryPackQueryInner> inner =
+            this.serviceClient().getWithResponse(resourceGroupName, queryPackName, id, context);
+        if (inner != null) {
+            return new SimpleResponse<>(
+                inner.getRequest(),
+                inner.getStatusCode(),
+                inner.getHeaders(),
+                new LogAnalyticsQueryPackQueryImpl(inner.getValue(), this.manager()));
+        } else {
+            return null;
+        }
+    }
+
+    public void delete(String resourceGroupName, String queryPackName, String id) {
+        this.serviceClient().delete(resourceGroupName, queryPackName, id);
+    }
+
+    public Response<Void> deleteWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context) {
+        return this.serviceClient().deleteWithResponse(resourceGroupName, queryPackName, id, context);
+    }
+
+    public LogAnalyticsQueryPackQuery getById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        String varId = Utils.getValueFromIdByName(id, "queries");
+        if (varId == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queries'.", id)));
+        }
+        return this.getWithResponse(resourceGroupName, queryPackName, varId, Context.NONE).getValue();
+    }
+
+    public Response<LogAnalyticsQueryPackQuery> getByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        String varId = Utils.getValueFromIdByName(id, "queries");
+        if (varId == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queries'.", id)));
+        }
+        return this.getWithResponse(resourceGroupName, queryPackName, varId, context);
+    }
+
+    public void deleteById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        String varId = Utils.getValueFromIdByName(id, "queries");
+        if (varId == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queries'.", id)));
+        }
+        this.deleteWithResponse(resourceGroupName, queryPackName, varId, Context.NONE);
+    }
+
+    public Response<Void> deleteByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        String varId = Utils.getValueFromIdByName(id, "queries");
+        if (varId == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queries'.", id)));
+        }
+        return this.deleteWithResponse(resourceGroupName, queryPackName, varId, context);
+    }
+
+    private QueriesClient serviceClient() {
+        return this.innerClient;
+    }
+
+    private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
+        return this.serviceManager;
+    }
+
+    public LogAnalyticsQueryPackQueryImpl define(String name) {
+        return new LogAnalyticsQueryPackQueryImpl(name, this.manager());
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksClientImpl.java
new file mode 100644
index 0000000000000..fcf040f6176c1
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksClientImpl.java
@@ -0,0 +1,1287 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.loganalytics.fluent.QueryPacksClient;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackListResult;
+import com.azure.resourcemanager.loganalytics.models.TagsResource;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in QueryPacksClient. */
+public final class QueryPacksClientImpl implements QueryPacksClient {
+    /** The proxy service used to perform REST calls. */
+    private final QueryPacksService service;
+
+    /** The service client containing this operation class. */
+    private final OperationalInsightsManagementClientImpl client;
+
+    /**
+     * Initializes an instance of QueryPacksClientImpl.
+     *
+     * @param client the instance of the service client containing this operation class.
+     */
+    QueryPacksClientImpl(OperationalInsightsManagementClientImpl client) {
+        this.service =
+            RestProxy.create(QueryPacksService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+        this.client = client;
+    }
+
+    /**
+     * The interface defining all the services for OperationalInsightsManagementClientQueryPacks to be used by the proxy
+     * service to perform REST calls.
+     */
+    @Host("{$host}")
+    @ServiceInterface(name = "OperationalInsightsM")
+    private interface QueryPacksService {
+        @Headers({"Content-Type: application/json"})
+        @Get("/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/queryPacks")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackListResult>> list(
+            @HostParam("$host") String endpoint,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackListResult>> listByResourceGroup(
+            @HostParam("$host") String endpoint,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Delete(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}")
+        @ExpectedResponses({200, 204})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<Void>> delete(
+            @HostParam("$host") String endpoint,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("queryPackName") String queryPackName,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackInner>> getByResourceGroup(
+            @HostParam("$host") String endpoint,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("queryPackName") String queryPackName,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Put(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackInner>> createOrUpdate(
+            @HostParam("$host") String endpoint,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("queryPackName") String queryPackName,
+            @BodyParam("application/json") LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Patch(
+            "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/queryPacks/{queryPackName}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackInner>> updateTags(
+            @HostParam("$host") String endpoint,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("queryPackName") String queryPackName,
+            @BodyParam("application/json") TagsResource queryPackTags,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get("{nextLink}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackListResult>> listNext(
+            @PathParam(value = "nextLink", encoded = true) String nextLink,
+            @HostParam("$host") String endpoint,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Get("{nextLink}")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<LogAnalyticsQueryPackListResult>> listByResourceGroupNext(
+            @PathParam(value = "nextLink", encoded = true) String nextLink,
+            @HostParam("$host") String endpoint,
+            @HeaderParam("Accept") String accept,
+            Context context);
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listSinglePageAsync() {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context))
+            .<PagedResponse<LogAnalyticsQueryPackInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription along with {@link PagedResponse} on
+     *     successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listSinglePageAsync(Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackInner> listAsync() {
+        return new PagedFlux<>(() -> listSinglePageAsync(), nextLink -> listNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackInner> listAsync(Context context) {
+        return new PagedFlux<>(
+            () -> listSinglePageAsync(context), nextLink -> listNextSinglePageAsync(nextLink, context));
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackInner> list() {
+        return new PagedIterable<>(listAsync());
+    }
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackInner> list(Context context) {
+        return new PagedIterable<>(listAsync(context));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listByResourceGroupSinglePageAsync(
+        String resourceGroupName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .listByResourceGroup(
+                            this.client.getEndpoint(),
+                            resourceGroupName,
+                            apiVersion,
+                            this.client.getSubscriptionId(),
+                            accept,
+                            context))
+            .<PagedResponse<LogAnalyticsQueryPackInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listByResourceGroupSinglePageAsync(
+        String resourceGroupName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .listByResourceGroup(
+                this.client.getEndpoint(),
+                resourceGroupName,
+                apiVersion,
+                this.client.getSubscriptionId(),
+                accept,
+                context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackInner> listByResourceGroupAsync(String resourceGroupName) {
+        return new PagedFlux<>(
+            () -> listByResourceGroupSinglePageAsync(resourceGroupName),
+            nextLink -> listByResourceGroupNextSinglePageAsync(nextLink));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link PagedFlux}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    private PagedFlux<LogAnalyticsQueryPackInner> listByResourceGroupAsync(String resourceGroupName, Context context) {
+        return new PagedFlux<>(
+            () -> listByResourceGroupSinglePageAsync(resourceGroupName, context),
+            nextLink -> listByResourceGroupNextSinglePageAsync(nextLink, context));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackInner> listByResourceGroup(String resourceGroupName) {
+        return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName));
+    }
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    @ServiceMethod(returns = ReturnType.COLLECTION)
+    public PagedIterable<LogAnalyticsQueryPackInner> listByResourceGroup(String resourceGroupName, Context context) {
+        return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, context));
+    }
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> deleteWithResponseAsync(String resourceGroupName, String queryPackName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .delete(
+                            this.client.getEndpoint(),
+                            resourceGroupName,
+                            apiVersion,
+                            this.client.getSubscriptionId(),
+                            queryPackName,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> deleteWithResponseAsync(
+        String resourceGroupName, String queryPackName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .delete(
+                this.client.getEndpoint(),
+                resourceGroupName,
+                apiVersion,
+                this.client.getSubscriptionId(),
+                queryPackName,
+                accept,
+                context);
+    }
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return A {@link Mono} that completes when a successful response is received.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Void> deleteAsync(String resourceGroupName, String queryPackName) {
+        return deleteWithResponseAsync(resourceGroupName, queryPackName).flatMap((Response<Void> res) -> Mono.empty());
+    }
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public void delete(String resourceGroupName, String queryPackName) {
+        deleteAsync(resourceGroupName, queryPackName).block();
+    }
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, Context context) {
+        return deleteWithResponseAsync(resourceGroupName, queryPackName, context).block();
+    }
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> getByResourceGroupWithResponseAsync(
+        String resourceGroupName, String queryPackName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .getByResourceGroup(
+                            this.client.getEndpoint(),
+                            resourceGroupName,
+                            apiVersion,
+                            this.client.getSubscriptionId(),
+                            queryPackName,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> getByResourceGroupWithResponseAsync(
+        String resourceGroupName, String queryPackName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .getByResourceGroup(
+                this.client.getEndpoint(),
+                resourceGroupName,
+                apiVersion,
+                this.client.getSubscriptionId(),
+                queryPackName,
+                accept,
+                context);
+    }
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackInner> getByResourceGroupAsync(String resourceGroupName, String queryPackName) {
+        return getByResourceGroupWithResponseAsync(resourceGroupName, queryPackName)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackInner getByResourceGroup(String resourceGroupName, String queryPackName) {
+        return getByResourceGroupAsync(resourceGroupName, queryPackName).block();
+    }
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackInner> getByResourceGroupWithResponse(
+        String resourceGroupName, String queryPackName, Context context) {
+        return getByResourceGroupWithResponseAsync(resourceGroupName, queryPackName, context).block();
+    }
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> createOrUpdateWithResponseAsync(
+        String resourceGroupName, String queryPackName, LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (logAnalyticsQueryPackPayload == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter logAnalyticsQueryPackPayload is required and cannot be null."));
+        } else {
+            logAnalyticsQueryPackPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .createOrUpdate(
+                            this.client.getEndpoint(),
+                            resourceGroupName,
+                            apiVersion,
+                            this.client.getSubscriptionId(),
+                            queryPackName,
+                            logAnalyticsQueryPackPayload,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> createOrUpdateWithResponseAsync(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload,
+        Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (logAnalyticsQueryPackPayload == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter logAnalyticsQueryPackPayload is required and cannot be null."));
+        } else {
+            logAnalyticsQueryPackPayload.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .createOrUpdate(
+                this.client.getEndpoint(),
+                resourceGroupName,
+                apiVersion,
+                this.client.getSubscriptionId(),
+                queryPackName,
+                logAnalyticsQueryPackPayload,
+                accept,
+                context);
+    }
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackInner> createOrUpdateAsync(
+        String resourceGroupName, String queryPackName, LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload) {
+        return createOrUpdateWithResponseAsync(resourceGroupName, queryPackName, logAnalyticsQueryPackPayload)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackInner createOrUpdate(
+        String resourceGroupName, String queryPackName, LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload) {
+        return createOrUpdateAsync(resourceGroupName, queryPackName, logAnalyticsQueryPackPayload).block();
+    }
+
+    /**
+     * Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey
+     * nor AppId in the Put operation.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param logAnalyticsQueryPackPayload Properties that need to be specified to create or update a Log Analytics
+     *     QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackInner> createOrUpdateWithResponse(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackInner logAnalyticsQueryPackPayload,
+        Context context) {
+        return createOrUpdateWithResponseAsync(resourceGroupName, queryPackName, logAnalyticsQueryPackPayload, context)
+            .block();
+    }
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> updateTagsWithResponseAsync(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (queryPackTags == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackTags is required and cannot be null."));
+        } else {
+            queryPackTags.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .updateTags(
+                            this.client.getEndpoint(),
+                            resourceGroupName,
+                            apiVersion,
+                            this.client.getSubscriptionId(),
+                            queryPackName,
+                            queryPackTags,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response} on successful completion of {@link
+     *     Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<LogAnalyticsQueryPackInner>> updateTagsWithResponseAsync(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (queryPackName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackName is required and cannot be null."));
+        }
+        if (queryPackTags == null) {
+            return Mono.error(new IllegalArgumentException("Parameter queryPackTags is required and cannot be null."));
+        } else {
+            queryPackTags.validate();
+        }
+        final String apiVersion = "2019-09-01";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .updateTags(
+                this.client.getEndpoint(),
+                resourceGroupName,
+                apiVersion,
+                this.client.getSubscriptionId(),
+                queryPackName,
+                queryPackTags,
+                accept,
+                context);
+    }
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<LogAnalyticsQueryPackInner> updateTagsAsync(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags) {
+        return updateTagsWithResponseAsync(resourceGroupName, queryPackName, queryPackTags)
+            .flatMap(
+                (Response<LogAnalyticsQueryPackInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public LogAnalyticsQueryPackInner updateTags(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags) {
+        return updateTagsAsync(resourceGroupName, queryPackName, queryPackTags).block();
+    }
+
+    /**
+     * Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param queryPackTags Updated tag information to set into the QueryPack instance.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<LogAnalyticsQueryPackInner> updateTagsWithResponse(
+        String resourceGroupName, String queryPackName, TagsResource queryPackTags, Context context) {
+        return updateTagsWithResponseAsync(resourceGroupName, queryPackName, queryPackTags, context).block();
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack resources along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listNextSinglePageAsync(String nextLink) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
+            .<PagedResponse<LogAnalyticsQueryPackInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack resources along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listNextSinglePageAsync(String nextLink, Context context) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .listNext(nextLink, this.client.getEndpoint(), accept, context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack resources along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listByResourceGroupNextSinglePageAsync(String nextLink) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context -> service.listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context))
+            .<PagedResponse<LogAnalyticsQueryPackInner>>map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Get the next page of items.
+     *
+     * @param nextLink The nextLink parameter.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack resources along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<PagedResponse<LogAnalyticsQueryPackInner>> listByResourceGroupNextSinglePageAsync(
+        String nextLink, Context context) {
+        if (nextLink == null) {
+            return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+        }
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context)
+            .map(
+                res ->
+                    new PagedResponseBase<>(
+                        res.getRequest(),
+                        res.getStatusCode(),
+                        res.getHeaders(),
+                        res.getValue().value(),
+                        res.getValue().nextLink(),
+                        null));
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksImpl.java
new file mode 100644
index 0000000000000..d72c8383fd4a0
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/QueryPacksImpl.java
@@ -0,0 +1,170 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.fluent.QueryPacksClient;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPack;
+import com.azure.resourcemanager.loganalytics.models.QueryPacks;
+
+public final class QueryPacksImpl implements QueryPacks {
+    private static final ClientLogger LOGGER = new ClientLogger(QueryPacksImpl.class);
+
+    private final QueryPacksClient innerClient;
+
+    private final com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager;
+
+    public QueryPacksImpl(
+        QueryPacksClient innerClient, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerClient = innerClient;
+        this.serviceManager = serviceManager;
+    }
+
+    public PagedIterable<LogAnalyticsQueryPack> list() {
+        PagedIterable<LogAnalyticsQueryPackInner> inner = this.serviceClient().list();
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPack> list(Context context) {
+        PagedIterable<LogAnalyticsQueryPackInner> inner = this.serviceClient().list(context);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPack> listByResourceGroup(String resourceGroupName) {
+        PagedIterable<LogAnalyticsQueryPackInner> inner = this.serviceClient().listByResourceGroup(resourceGroupName);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackImpl(inner1, this.manager()));
+    }
+
+    public PagedIterable<LogAnalyticsQueryPack> listByResourceGroup(String resourceGroupName, Context context) {
+        PagedIterable<LogAnalyticsQueryPackInner> inner =
+            this.serviceClient().listByResourceGroup(resourceGroupName, context);
+        return Utils.mapPage(inner, inner1 -> new LogAnalyticsQueryPackImpl(inner1, this.manager()));
+    }
+
+    public void deleteByResourceGroup(String resourceGroupName, String queryPackName) {
+        this.serviceClient().delete(resourceGroupName, queryPackName);
+    }
+
+    public Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, Context context) {
+        return this.serviceClient().deleteWithResponse(resourceGroupName, queryPackName, context);
+    }
+
+    public LogAnalyticsQueryPack getByResourceGroup(String resourceGroupName, String queryPackName) {
+        LogAnalyticsQueryPackInner inner = this.serviceClient().getByResourceGroup(resourceGroupName, queryPackName);
+        if (inner != null) {
+            return new LogAnalyticsQueryPackImpl(inner, this.manager());
+        } else {
+            return null;
+        }
+    }
+
+    public Response<LogAnalyticsQueryPack> getByResourceGroupWithResponse(
+        String resourceGroupName, String queryPackName, Context context) {
+        Response<LogAnalyticsQueryPackInner> inner =
+            this.serviceClient().getByResourceGroupWithResponse(resourceGroupName, queryPackName, context);
+        if (inner != null) {
+            return new SimpleResponse<>(
+                inner.getRequest(),
+                inner.getStatusCode(),
+                inner.getHeaders(),
+                new LogAnalyticsQueryPackImpl(inner.getValue(), this.manager()));
+        } else {
+            return null;
+        }
+    }
+
+    public LogAnalyticsQueryPack getById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        return this.getByResourceGroupWithResponse(resourceGroupName, queryPackName, Context.NONE).getValue();
+    }
+
+    public Response<LogAnalyticsQueryPack> getByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        return this.getByResourceGroupWithResponse(resourceGroupName, queryPackName, context);
+    }
+
+    public void deleteById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        this.deleteWithResponse(resourceGroupName, queryPackName, Context.NONE);
+    }
+
+    public Response<Void> deleteByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+        }
+        String queryPackName = Utils.getValueFromIdByName(id, "queryPacks");
+        if (queryPackName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'queryPacks'.", id)));
+        }
+        return this.deleteWithResponse(resourceGroupName, queryPackName, context);
+    }
+
+    private QueryPacksClient serviceClient() {
+        return this.innerClient;
+    }
+
+    private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
+        return this.serviceManager;
+    }
+
+    public LogAnalyticsQueryPackImpl define(String name) {
+        return new LogAnalyticsQueryPackImpl(name, this.manager());
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesClientImpl.java
index 8c7dba622ff72..7f83cecdbbaac 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesClientImpl.java
@@ -24,7 +24,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.SavedSearchesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.SavedSearchInner;
 import com.azure.resourcemanager.loganalytics.fluent.models.SavedSearchesListResultInner;
@@ -32,8 +31,6 @@
 
 /** An instance of this class provides access to all the operations defined in SavedSearchesClient. */
 public final class SavedSearchesClientImpl implements SavedSearchesClient {
-    private final ClientLogger logger = new ClientLogger(SavedSearchesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final SavedSearchesService service;
 
@@ -131,7 +128,7 @@ Mono<Response<SavedSearchesListResultInner>> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -158,6 +155,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (savedSearchId == null) {
             return Mono.error(new IllegalArgumentException("Parameter savedSearchId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -168,7 +166,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             savedSearchId,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
     }
@@ -183,7 +181,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -210,6 +208,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
         if (savedSearchId == null) {
             return Mono.error(new IllegalArgumentException("Parameter savedSearchId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .delete(
@@ -218,7 +217,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 savedSearchId,
-                this.client.getApiVersion(),
+                apiVersion,
                 context);
     }
 
@@ -231,7 +230,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String savedSearchId) {
@@ -264,7 +263,7 @@ public void delete(String resourceGroupName, String workspaceName, String savedS
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
@@ -282,7 +281,8 @@ public Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return value object for saved search results.
+     * @return value object for saved search results along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
@@ -314,6 +314,7 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -325,7 +326,7 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             savedSearchId,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             parameters,
                             accept,
                             context))
@@ -343,7 +344,8 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return value object for saved search results.
+     * @return value object for saved search results along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
@@ -379,6 +381,7 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -388,7 +391,7 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 savedSearchId,
-                this.client.getApiVersion(),
+                apiVersion,
                 parameters,
                 accept,
                 context);
@@ -404,7 +407,7 @@ private Mono<Response<SavedSearchInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return value object for saved search results.
+     * @return value object for saved search results on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SavedSearchInner> createOrUpdateAsync(
@@ -449,7 +452,7 @@ public SavedSearchInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return value object for saved search results.
+     * @return value object for saved search results along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SavedSearchInner> createOrUpdateWithResponse(
@@ -471,7 +474,8 @@ public Response<SavedSearchInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchInner>> getWithResponseAsync(
@@ -498,6 +502,7 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
         if (savedSearchId == null) {
             return Mono.error(new IllegalArgumentException("Parameter savedSearchId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -509,7 +514,7 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             savedSearchId,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -525,7 +530,8 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchInner>> getWithResponseAsync(
@@ -552,6 +558,7 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
         if (savedSearchId == null) {
             return Mono.error(new IllegalArgumentException("Parameter savedSearchId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -561,7 +568,7 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 savedSearchId,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context);
     }
@@ -575,7 +582,7 @@ private Mono<Response<SavedSearchInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SavedSearchInner> getAsync(String resourceGroupName, String workspaceName, String savedSearchId) {
@@ -616,7 +623,7 @@ public SavedSearchInner get(String resourceGroupName, String workspaceName, Stri
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SavedSearchInner> getWithResponse(
@@ -632,7 +639,8 @@ public Response<SavedSearchInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponseAsync(
@@ -656,6 +664,7 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -665,7 +674,7 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -681,7 +690,8 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace along with {@link Response} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponseAsync(
@@ -705,6 +715,7 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -712,7 +723,7 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -726,7 +737,7 @@ private Mono<Response<SavedSearchesListResultInner>> listByWorkspaceWithResponse
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SavedSearchesListResultInner> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -765,7 +776,7 @@ public SavedSearchesListResultInner listByWorkspace(String resourceGroupName, St
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SavedSearchesListResultInner> listByWorkspaceWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesImpl.java
index f83f033b15e3f..4b3b7a96391eb 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SavedSearchesImpl.java
@@ -14,10 +14,9 @@
 import com.azure.resourcemanager.loganalytics.models.SavedSearch;
 import com.azure.resourcemanager.loganalytics.models.SavedSearches;
 import com.azure.resourcemanager.loganalytics.models.SavedSearchesListResult;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class SavedSearchesImpl implements SavedSearches {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SavedSearchesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(SavedSearchesImpl.class);
 
     private final SavedSearchesClient innerClient;
 
@@ -89,7 +88,7 @@ public Response<SavedSearchesListResult> listByWorkspaceWithResponse(
     public SavedSearch getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -97,14 +96,14 @@ public SavedSearch getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String savedSearchId = Utils.getValueFromIdByName(id, "savedSearches");
         if (savedSearchId == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'savedSearches'.", id)));
@@ -115,7 +114,7 @@ public SavedSearch getById(String id) {
     public Response<SavedSearch> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -123,14 +122,14 @@ public Response<SavedSearch> getByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String savedSearchId = Utils.getValueFromIdByName(id, "savedSearches");
         if (savedSearchId == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'savedSearches'.", id)));
@@ -141,7 +140,7 @@ public Response<SavedSearch> getByIdWithResponse(String id, Context context) {
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -149,25 +148,25 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String savedSearchId = Utils.getValueFromIdByName(id, "savedSearches");
         if (savedSearchId == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'savedSearches'.", id)));
         }
-        this.deleteWithResponse(resourceGroupName, workspaceName, savedSearchId, Context.NONE).getValue();
+        this.deleteWithResponse(resourceGroupName, workspaceName, savedSearchId, Context.NONE);
     }
 
     public Response<Void> deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -175,14 +174,14 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String savedSearchId = Utils.getValueFromIdByName(id, "savedSearches");
         if (savedSearchId == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'savedSearches'.", id)));
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasClientImpl.java
index 59c20877bfa45..dbcd48e9e8ef3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasClientImpl.java
@@ -21,15 +21,12 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.SchemasClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.SearchGetSchemaResponseInner;
 import reactor.core.publisher.Mono;
 
 /** An instance of this class provides access to all the operations defined in SchemasClient. */
 public final class SchemasClientImpl implements SchemasClient {
-    private final ClientLogger logger = new ClientLogger(SchemasClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final SchemasService service;
 
@@ -77,7 +74,7 @@ Mono<Response<SearchGetSchemaResponseInner>> get(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
@@ -101,6 +98,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -110,7 +108,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -126,7 +124,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
@@ -150,6 +148,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -157,7 +156,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -171,7 +170,7 @@ private Mono<Response<SearchGetSchemaResponseInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SearchGetSchemaResponseInner> getAsync(String resourceGroupName, String workspaceName) {
@@ -210,7 +209,7 @@ public SearchGetSchemaResponseInner get(String resourceGroupName, String workspa
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SearchGetSchemaResponseInner> getWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasImpl.java
index 9f63e7dfdc28d..713cfe8d6d1db 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SchemasImpl.java
@@ -12,10 +12,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.SearchGetSchemaResponseInner;
 import com.azure.resourcemanager.loganalytics.models.Schemas;
 import com.azure.resourcemanager.loganalytics.models.SearchGetSchemaResponse;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class SchemasImpl implements Schemas {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SchemasImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(SchemasImpl.class);
 
     private final SchemasClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsClientImpl.java
index 9a05dccf50f3b..821a3784f5781 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsClientImpl.java
@@ -21,15 +21,12 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.SharedKeysOperationsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.SharedKeysInner;
 import reactor.core.publisher.Mono;
 
 /** An instance of this class provides access to all the operations defined in SharedKeysOperationsClient. */
 public final class SharedKeysOperationsClientImpl implements SharedKeysOperationsClient {
-    private final ClientLogger logger = new ClientLogger(SharedKeysOperationsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final SharedKeysOperationsService service;
 
@@ -94,7 +91,7 @@ Mono<Response<SharedKeysInner>> regenerate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
@@ -118,6 +115,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -127,7 +125,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -143,7 +141,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
@@ -167,6 +165,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -174,7 +173,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -188,7 +187,7 @@ private Mono<Response<SharedKeysInner>> getSharedKeysWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SharedKeysInner> getSharedKeysAsync(String resourceGroupName, String workspaceName) {
@@ -227,7 +226,7 @@ public SharedKeysInner getSharedKeys(String resourceGroupName, String workspaceN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SharedKeysInner> getSharedKeysWithResponse(
@@ -244,7 +243,7 @@ public Response<SharedKeysInner> getSharedKeysWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
@@ -268,6 +267,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -278,7 +278,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -294,7 +294,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
@@ -318,6 +318,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -326,7 +327,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context);
     }
@@ -340,7 +341,7 @@ private Mono<Response<SharedKeysInner>> regenerateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<SharedKeysInner> regenerateAsync(String resourceGroupName, String workspaceName) {
@@ -381,7 +382,7 @@ public SharedKeysInner regenerate(String resourceGroupName, String workspaceName
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<SharedKeysInner> regenerateWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsImpl.java
index c787d0e5688b1..fc86afed9109a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/SharedKeysOperationsImpl.java
@@ -12,10 +12,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.SharedKeysInner;
 import com.azure.resourcemanager.loganalytics.models.SharedKeys;
 import com.azure.resourcemanager.loganalytics.models.SharedKeysOperations;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class SharedKeysOperationsImpl implements SharedKeysOperations {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SharedKeysOperationsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(SharedKeysOperationsImpl.class);
 
     private final SharedKeysOperationsClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsClientImpl.java
index dd9d0d8a166dc..6f846d45e05b9 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsClientImpl.java
@@ -28,7 +28,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.StorageInsightConfigsClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.StorageInsightInner;
 import com.azure.resourcemanager.loganalytics.models.StorageInsightListResult;
@@ -36,8 +35,6 @@
 
 /** An instance of this class provides access to all the operations defined in StorageInsightConfigsClient. */
 public final class StorageInsightConfigsClientImpl implements StorageInsightConfigsClient {
-    private final ClientLogger logger = new ClientLogger(StorageInsightConfigsClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final StorageInsightConfigsService service;
 
@@ -147,7 +144,8 @@ Mono<Response<StorageInsightListResult>> listByWorkspaceNext(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level storage insight resource container.
+     * @return the top level storage insight resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
@@ -180,6 +178,7 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -190,7 +189,7 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             storageInsightName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             parameters,
                             accept,
@@ -209,7 +208,8 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level storage insight resource container.
+     * @return the top level storage insight resource container along with {@link Response} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
@@ -246,6 +246,7 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -254,7 +255,7 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 storageInsightName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 parameters,
                 accept,
@@ -271,7 +272,7 @@ private Mono<Response<StorageInsightInner>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level storage insight resource container.
+     * @return the top level storage insight resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<StorageInsightInner> createOrUpdateAsync(
@@ -316,7 +317,7 @@ public StorageInsightInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level storage insight resource container.
+     * @return the top level storage insight resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<StorageInsightInner> createOrUpdateWithResponse(
@@ -339,7 +340,7 @@ public Response<StorageInsightInner> createOrUpdateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<StorageInsightInner>> getWithResponseAsync(
@@ -367,6 +368,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -377,7 +379,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             storageInsightName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -394,7 +396,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<StorageInsightInner>> getWithResponseAsync(
@@ -422,6 +424,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -430,7 +433,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 storageInsightName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -445,7 +448,7 @@ private Mono<Response<StorageInsightInner>> getWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<StorageInsightInner> getAsync(
@@ -487,7 +490,7 @@ public StorageInsightInner get(String resourceGroupName, String workspaceName, S
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<StorageInsightInner> getWithResponse(
@@ -504,7 +507,7 @@ public Response<StorageInsightInner> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -532,6 +535,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         return FluxUtil
             .withContext(
                 context ->
@@ -541,7 +545,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                             resourceGroupName,
                             workspaceName,
                             storageInsightName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
@@ -557,7 +561,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Void>> deleteWithResponseAsync(
@@ -585,6 +589,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         context = this.client.mergeContext(context);
         return service
             .delete(
@@ -592,7 +597,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
                 resourceGroupName,
                 workspaceName,
                 storageInsightName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 context);
     }
@@ -606,7 +611,7 @@ private Mono<Response<Void>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String storageInsightName) {
@@ -639,7 +644,7 @@ public void delete(String resourceGroupName, String workspaceName, String storag
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<Void> deleteWithResponse(
@@ -655,7 +660,8 @@ public Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
@@ -679,6 +685,7 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -688,7 +695,7 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -713,7 +720,8 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
@@ -737,6 +745,7 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -744,7 +753,7 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -767,7 +776,7 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<StorageInsightInner> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -785,7 +794,7 @@ private PagedFlux<StorageInsightInner> listByWorkspaceAsync(String resourceGroup
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<StorageInsightInner> listByWorkspaceAsync(
@@ -803,7 +812,7 @@ private PagedFlux<StorageInsightInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<StorageInsightInner> listByWorkspace(String resourceGroupName, String workspaceName) {
@@ -819,7 +828,7 @@ public PagedIterable<StorageInsightInner> listByWorkspace(String resourceGroupNa
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<StorageInsightInner> listByWorkspace(
@@ -834,7 +843,8 @@ public PagedIterable<StorageInsightInner> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceNextSinglePageAsync(String nextLink) {
@@ -870,7 +880,8 @@ private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceNextSinglePageAs
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<StorageInsightInner>> listByWorkspaceNextSinglePageAsync(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsImpl.java
index bd08bb96b2436..4edb9e037674c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/StorageInsightConfigsImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.StorageInsightInner;
 import com.azure.resourcemanager.loganalytics.models.StorageInsight;
 import com.azure.resourcemanager.loganalytics.models.StorageInsightConfigs;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class StorageInsightConfigsImpl implements StorageInsightConfigs {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(StorageInsightConfigsImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(StorageInsightConfigsImpl.class);
 
     private final StorageInsightConfigsClient innerClient;
 
@@ -78,7 +77,7 @@ public PagedIterable<StorageInsight> listByWorkspace(
     public StorageInsight getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -86,14 +85,14 @@ public StorageInsight getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String storageInsightName = Utils.getValueFromIdByName(id, "storageInsightConfigs");
         if (storageInsightName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -107,7 +106,7 @@ public StorageInsight getById(String id) {
     public Response<StorageInsight> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -115,14 +114,14 @@ public Response<StorageInsight> getByIdWithResponse(String id, Context context)
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String storageInsightName = Utils.getValueFromIdByName(id, "storageInsightConfigs");
         if (storageInsightName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -136,7 +135,7 @@ public Response<StorageInsight> getByIdWithResponse(String id, Context context)
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -144,14 +143,14 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String storageInsightName = Utils.getValueFromIdByName(id, "storageInsightConfigs");
         if (storageInsightName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -159,13 +158,13 @@ public void deleteById(String id) {
                                 "The resource ID '%s' is not valid. Missing path segment 'storageInsightConfigs'.",
                                 id)));
         }
-        this.deleteWithResponse(resourceGroupName, workspaceName, storageInsightName, Context.NONE).getValue();
+        this.deleteWithResponse(resourceGroupName, workspaceName, storageInsightName, Context.NONE);
     }
 
     public Response<Void> deleteByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -173,14 +172,14 @@ public Response<Void> deleteByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
         }
         String storageInsightName = Utils.getValueFromIdByName(id, "storageInsightConfigs");
         if (storageInsightName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TableImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TableImpl.java
index ae66c1b1463aa..44eefdd14c58c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TableImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TableImpl.java
@@ -4,19 +4,23 @@
 
 package com.azure.resourcemanager.loganalytics.implementation;
 
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
+import com.azure.resourcemanager.loganalytics.models.ProvisioningStateEnum;
+import com.azure.resourcemanager.loganalytics.models.RestoredLogs;
+import com.azure.resourcemanager.loganalytics.models.ResultStatistics;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import com.azure.resourcemanager.loganalytics.models.SearchResults;
+import com.azure.resourcemanager.loganalytics.models.SystemDataAutoGenerated;
 import com.azure.resourcemanager.loganalytics.models.Table;
+import com.azure.resourcemanager.loganalytics.models.TablePlanEnum;
 
-public final class TableImpl implements Table {
+public final class TableImpl implements Table, Table.Definition, Table.Update {
     private TableInner innerObject;
 
     private final com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager;
 
-    TableImpl(TableInner innerObject, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
-        this.innerObject = innerObject;
-        this.serviceManager = serviceManager;
-    }
-
     public String id() {
         return this.innerModel().id();
     }
@@ -29,10 +33,50 @@ public String type() {
         return this.innerModel().type();
     }
 
+    public SystemDataAutoGenerated systemData() {
+        return this.innerModel().systemData();
+    }
+
     public Integer retentionInDays() {
         return this.innerModel().retentionInDays();
     }
 
+    public Integer totalRetentionInDays() {
+        return this.innerModel().totalRetentionInDays();
+    }
+
+    public Integer archiveRetentionInDays() {
+        return this.innerModel().archiveRetentionInDays();
+    }
+
+    public SearchResults searchResults() {
+        return this.innerModel().searchResults();
+    }
+
+    public RestoredLogs restoredLogs() {
+        return this.innerModel().restoredLogs();
+    }
+
+    public ResultStatistics resultStatistics() {
+        return this.innerModel().resultStatistics();
+    }
+
+    public TablePlanEnum plan() {
+        return this.innerModel().plan();
+    }
+
+    public String lastPlanModifiedDate() {
+        return this.innerModel().lastPlanModifiedDate();
+    }
+
+    public Schema schema() {
+        return this.innerModel().schema();
+    }
+
+    public ProvisioningStateEnum provisioningState() {
+        return this.innerModel().provisioningState();
+    }
+
     public TableInner innerModel() {
         return this.innerObject;
     }
@@ -40,4 +84,133 @@ public TableInner innerModel() {
     private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
         return this.serviceManager;
     }
+
+    private String resourceGroupName;
+
+    private String workspaceName;
+
+    private String tableName;
+
+    public TableImpl withExistingWorkspace(String resourceGroupName, String workspaceName) {
+        this.resourceGroupName = resourceGroupName;
+        this.workspaceName = workspaceName;
+        return this;
+    }
+
+    public Table create() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .createOrUpdate(resourceGroupName, workspaceName, tableName, this.innerModel(), Context.NONE);
+        return this;
+    }
+
+    public Table create(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .createOrUpdate(resourceGroupName, workspaceName, tableName, this.innerModel(), context);
+        return this;
+    }
+
+    TableImpl(String name, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = new TableInner();
+        this.serviceManager = serviceManager;
+        this.tableName = name;
+    }
+
+    public TableImpl update() {
+        return this;
+    }
+
+    public Table apply() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .update(resourceGroupName, workspaceName, tableName, this.innerModel(), Context.NONE);
+        return this;
+    }
+
+    public Table apply(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .update(resourceGroupName, workspaceName, tableName, this.innerModel(), context);
+        return this;
+    }
+
+    TableImpl(TableInner innerObject, com.azure.resourcemanager.loganalytics.LogAnalyticsManager serviceManager) {
+        this.innerObject = innerObject;
+        this.serviceManager = serviceManager;
+        this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourcegroups");
+        this.workspaceName = Utils.getValueFromIdByName(innerObject.id(), "workspaces");
+        this.tableName = Utils.getValueFromIdByName(innerObject.id(), "tables");
+    }
+
+    public Table refresh() {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .getWithResponse(resourceGroupName, workspaceName, tableName, Context.NONE)
+                .getValue();
+        return this;
+    }
+
+    public Table refresh(Context context) {
+        this.innerObject =
+            serviceManager
+                .serviceClient()
+                .getTables()
+                .getWithResponse(resourceGroupName, workspaceName, tableName, context)
+                .getValue();
+        return this;
+    }
+
+    public void migrate() {
+        serviceManager.tables().migrate(resourceGroupName, workspaceName, tableName);
+    }
+
+    public Response<Void> migrateWithResponse(Context context) {
+        return serviceManager.tables().migrateWithResponse(resourceGroupName, workspaceName, tableName, context);
+    }
+
+    public TableImpl withRetentionInDays(Integer retentionInDays) {
+        this.innerModel().withRetentionInDays(retentionInDays);
+        return this;
+    }
+
+    public TableImpl withTotalRetentionInDays(Integer totalRetentionInDays) {
+        this.innerModel().withTotalRetentionInDays(totalRetentionInDays);
+        return this;
+    }
+
+    public TableImpl withSearchResults(SearchResults searchResults) {
+        this.innerModel().withSearchResults(searchResults);
+        return this;
+    }
+
+    public TableImpl withRestoredLogs(RestoredLogs restoredLogs) {
+        this.innerModel().withRestoredLogs(restoredLogs);
+        return this;
+    }
+
+    public TableImpl withResultStatistics(ResultStatistics resultStatistics) {
+        this.innerModel().withResultStatistics(resultStatistics);
+        return this;
+    }
+
+    public TableImpl withPlan(TablePlanEnum plan) {
+        this.innerModel().withPlan(plan);
+        return this;
+    }
+
+    public TableImpl withSchema(Schema schema) {
+        this.innerModel().withSchema(schema);
+        return this;
+    }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesClientImpl.java
index 2907cdc2bebb0..4ebd02f316a98 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesClientImpl.java
@@ -5,6 +5,7 @@
 package com.azure.resourcemanager.loganalytics.implementation;
 
 import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
 import com.azure.core.annotation.ExpectedResponses;
 import com.azure.core.annotation.Get;
 import com.azure.core.annotation.HeaderParam;
@@ -13,6 +14,8 @@
 import com.azure.core.annotation.HostParam;
 import com.azure.core.annotation.Patch;
 import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Post;
+import com.azure.core.annotation.Put;
 import com.azure.core.annotation.QueryParam;
 import com.azure.core.annotation.ReturnType;
 import com.azure.core.annotation.ServiceInterface;
@@ -25,18 +28,20 @@
 import com.azure.core.http.rest.Response;
 import com.azure.core.http.rest.RestProxy;
 import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
 import com.azure.resourcemanager.loganalytics.fluent.TablesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
 import com.azure.resourcemanager.loganalytics.models.TablesListResult;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
 
 /** An instance of this class provides access to all the operations defined in TablesClient. */
 public final class TablesClientImpl implements TablesClient {
-    private final ClientLogger logger = new ClientLogger(TablesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final TablesService service;
 
@@ -75,13 +80,30 @@ Mono<Response<TablesListResult>> listByWorkspace(
             @HeaderParam("Accept") String accept,
             Context context);
 
+        @Headers({"Content-Type: application/json"})
+        @Put(
+            "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/workspaces/{workspaceName}/tables/{tableName}")
+        @ExpectedResponses({200, 202})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<Flux<ByteBuffer>>> createOrUpdate(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("workspaceName") String workspaceName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("tableName") String tableName,
+            @BodyParam("application/json") TableInner parameters,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
         @Headers({"Content-Type: application/json"})
         @Patch(
             "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
                 + "/workspaces/{workspaceName}/tables/{tableName}")
-        @ExpectedResponses({200})
+        @ExpectedResponses({200, 202})
         @UnexpectedResponseExceptionType(ManagementException.class)
-        Mono<Response<TableInner>> update(
+        Mono<Response<Flux<ByteBuffer>>> update(
             @HostParam("$host") String endpoint,
             @PathParam("subscriptionId") String subscriptionId,
             @PathParam("resourceGroupName") String resourceGroupName,
@@ -107,6 +129,38 @@ Mono<Response<TableInner>> get(
             @PathParam("tableName") String tableName,
             @HeaderParam("Accept") String accept,
             Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Delete(
+            "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/workspaces/{workspaceName}/tables/{tableName}")
+        @ExpectedResponses({200, 202, 204})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<Flux<ByteBuffer>>> delete(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("workspaceName") String workspaceName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("tableName") String tableName,
+            @HeaderParam("Accept") String accept,
+            Context context);
+
+        @Headers({"Content-Type: application/json"})
+        @Post(
+            "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights"
+                + "/workspaces/{workspaceName}/tables/{tableName}/migrate")
+        @ExpectedResponses({200})
+        @UnexpectedResponseExceptionType(ManagementException.class)
+        Mono<Response<Void>> migrate(
+            @HostParam("$host") String endpoint,
+            @PathParam("subscriptionId") String subscriptionId,
+            @PathParam("resourceGroupName") String resourceGroupName,
+            @PathParam("workspaceName") String workspaceName,
+            @QueryParam("api-version") String apiVersion,
+            @PathParam("tableName") String tableName,
+            @HeaderParam("Accept") String accept,
+            Context context);
     }
 
     /**
@@ -117,7 +171,8 @@ Mono<Response<TableInner>> get(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
@@ -141,6 +196,7 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -151,7 +207,7 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             accept,
                             context))
             .<PagedResponse<TableInner>>map(
@@ -170,7 +226,8 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace along with {@link PagedResponse} on successful
+     *     completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
@@ -194,6 +251,7 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
         if (workspaceName == null) {
             return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -202,7 +260,7 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 accept,
                 context)
             .map(
@@ -219,7 +277,7 @@ private Mono<PagedResponse<TableInner>> listByWorkspaceSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<TableInner> listByWorkspaceAsync(String resourceGroupName, String workspaceName) {
@@ -235,7 +293,7 @@ private PagedFlux<TableInner> listByWorkspaceAsync(String resourceGroupName, Str
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<TableInner> listByWorkspaceAsync(
@@ -251,7 +309,8 @@ private PagedFlux<TableInner> listByWorkspaceAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<TableInner> listByWorkspace(String resourceGroupName, String workspaceName) {
@@ -267,7 +326,8 @@ public PagedIterable<TableInner> listByWorkspace(String resourceGroupName, Strin
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<TableInner> listByWorkspace(String resourceGroupName, String workspaceName, Context context) {
@@ -275,7 +335,7 @@ public PagedIterable<TableInner> listByWorkspace(String resourceGroupName, Strin
     }
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -284,10 +344,10 @@ public PagedIterable<TableInner> listByWorkspace(String resourceGroupName, Strin
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspace data table definition.
+     * @return workspace data table definition along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<TableInner>> updateWithResponseAsync(
+    private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
         if (this.client.getEndpoint() == null) {
             return Mono
@@ -316,17 +376,18 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
                 context ->
                     service
-                        .update(
+                        .createOrUpdate(
                             this.client.getEndpoint(),
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             tableName,
                             parameters,
                             accept,
@@ -335,7 +396,7 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
     }
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -345,10 +406,10 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspace data table definition.
+     * @return workspace data table definition along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<TableInner>> updateWithResponseAsync(
+    private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
         if (this.client.getEndpoint() == null) {
             return Mono
@@ -377,15 +438,16 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .update(
+            .createOrUpdate(
                 this.client.getEndpoint(),
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 tableName,
                 parameters,
                 accept,
@@ -393,7 +455,7 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
     }
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -402,24 +464,125 @@ private Mono<Response<TableInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspace data table definition.
+     * @return the {@link PollerFlux} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<TableInner>, TableInner> beginCreateOrUpdateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            createOrUpdateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters);
+        return this
+            .client
+            .<TableInner, TableInner>getLroResult(
+                mono, this.client.getHttpPipeline(), TableInner.class, TableInner.class, this.client.getContext());
+    }
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link PollerFlux} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<TableInner>, TableInner> beginCreateOrUpdateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        context = this.client.mergeContext(context);
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            createOrUpdateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters, context);
+        return this
+            .client
+            .<TableInner, TableInner>getLroResult(
+                mono, this.client.getHttpPipeline(), TableInner.class, TableInner.class, context);
+    }
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<TableInner>, TableInner> beginCreateOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters).getSyncPoller();
+    }
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<TableInner>, TableInner> beginCreateOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters, context)
+            .getSyncPoller();
+    }
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<TableInner> updateAsync(
+    private Mono<TableInner> createOrUpdateAsync(
         String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
-        return updateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters)
-            .flatMap(
-                (Response<TableInner> res) -> {
-                    if (res.getValue() != null) {
-                        return Mono.just(res.getValue());
-                    } else {
-                        return Mono.empty();
-                    }
-                });
+        return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
+    }
+
+    /**
+     * Update or Create a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<TableInner> createOrUpdateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters, context)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
     }
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -431,12 +594,13 @@ private Mono<TableInner> updateAsync(
      * @return workspace data table definition.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    public TableInner update(String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
-        return updateAsync(resourceGroupName, workspaceName, tableName, parameters).block();
+    public TableInner createOrUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        return createOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters).block();
     }
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Update or Create a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -449,25 +613,26 @@ public TableInner update(String resourceGroupName, String workspaceName, String
      * @return workspace data table definition.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    public Response<TableInner> updateWithResponse(
+    public TableInner createOrUpdate(
         String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
-        return updateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters, context).block();
+        return createOrUpdateAsync(resourceGroupName, workspaceName, tableName, parameters, context).block();
     }
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return workspace data table definition along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<TableInner>> getWithResponseAsync(
-        String resourceGroupName, String workspaceName, String tableName) {
+    private Mono<Response<Flux<ByteBuffer>>> updateWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
         if (this.client.getEndpoint() == null) {
             return Mono
                 .error(
@@ -490,38 +655,46 @@ private Mono<Response<TableInner>> getWithResponseAsync(
         if (tableName == null) {
             return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
         }
+        if (parameters == null) {
+            return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+        } else {
+            parameters.validate();
+        }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
                 context ->
                     service
-                        .get(
+                        .update(
                             this.client.getEndpoint(),
                             this.client.getSubscriptionId(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             tableName,
+                            parameters,
                             accept,
                             context))
             .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
     }
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
      * @param context The context to associate with this operation.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return workspace data table definition along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<Response<TableInner>> getWithResponseAsync(
-        String resourceGroupName, String workspaceName, String tableName, Context context) {
+    private Mono<Response<Flux<ByteBuffer>>> updateWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
         if (this.client.getEndpoint() == null) {
             return Mono
                 .error(
@@ -544,75 +717,764 @@ private Mono<Response<TableInner>> getWithResponseAsync(
         if (tableName == null) {
             return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
         }
+        if (parameters == null) {
+            return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
+        } else {
+            parameters.validate();
+        }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .get(
+            .update(
                 this.client.getEndpoint(),
                 this.client.getSubscriptionId(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 tableName,
+                parameters,
                 accept,
                 context);
     }
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return the {@link PollerFlux} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<TableInner>, TableInner> beginUpdateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            updateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters);
+        return this
+            .client
+            .<TableInner, TableInner>getLroResult(
+                mono, this.client.getHttpPipeline(), TableInner.class, TableInner.class, this.client.getContext());
+    }
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link PollerFlux} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<TableInner>, TableInner> beginUpdateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        context = this.client.mergeContext(context);
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            updateWithResponseAsync(resourceGroupName, workspaceName, tableName, parameters, context);
+        return this
+            .client
+            .<TableInner, TableInner>getLroResult(
+                mono, this.client.getHttpPipeline(), TableInner.class, TableInner.class, context);
+    }
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<TableInner>, TableInner> beginUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        return beginUpdateAsync(resourceGroupName, workspaceName, tableName, parameters).getSyncPoller();
+    }
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<TableInner>, TableInner> beginUpdate(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        return beginUpdateAsync(resourceGroupName, workspaceName, tableName, parameters, context).getSyncPoller();
+    }
+
+    /**
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    private Mono<TableInner> getAsync(String resourceGroupName, String workspaceName, String tableName) {
-        return getWithResponseAsync(resourceGroupName, workspaceName, tableName)
-            .flatMap(
-                (Response<TableInner> res) -> {
-                    if (res.getValue() != null) {
-                        return Mono.just(res.getValue());
-                    } else {
-                        return Mono.empty();
-                    }
-                });
+    private Mono<TableInner> updateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        return beginUpdateAsync(resourceGroupName, workspaceName, tableName, parameters)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
     }
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @param context The context to associate with this operation.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return workspace data table definition on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    public TableInner get(String resourceGroupName, String workspaceName, String tableName) {
-        return getAsync(resourceGroupName, workspaceName, tableName).block();
+    private Mono<TableInner> updateAsync(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        return beginUpdateAsync(resourceGroupName, workspaceName, tableName, parameters, context)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
     }
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Update a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return workspace data table definition.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public TableInner update(String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
+        return updateAsync(resourceGroupName, workspaceName, tableName, parameters).block();
+    }
+
+    /**
+     * Update a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
+     * @param parameters The parameters required to update table properties.
      * @param context The context to associate with this operation.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
+     * @return workspace data table definition.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
-    public Response<TableInner> getWithResponse(
+    public TableInner update(
+        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+        return updateAsync(resourceGroupName, workspaceName, tableName, parameters, context).block();
+    }
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table along with {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<TableInner>> getWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .get(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            workspaceName,
+                            apiVersion,
+                            tableName,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table along with {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<TableInner>> getWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .get(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                workspaceName,
+                apiVersion,
+                tableName,
+                accept,
+                context);
+    }
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<TableInner> getAsync(String resourceGroupName, String workspaceName, String tableName) {
+        return getWithResponseAsync(resourceGroupName, workspaceName, tableName)
+            .flatMap(
+                (Response<TableInner> res) -> {
+                    if (res.getValue() != null) {
+                        return Mono.just(res.getValue());
+                    } else {
+                        return Mono.empty();
+                    }
+                });
+    }
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public TableInner get(String resourceGroupName, String workspaceName, String tableName) {
+        return getAsync(resourceGroupName, workspaceName, tableName).block();
+    }
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table along with {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<TableInner> getWithResponse(
         String resourceGroupName, String workspaceName, String tableName, Context context) {
         return getWithResponseAsync(resourceGroupName, workspaceName, tableName, context).block();
     }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .delete(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            workspaceName,
+                            apiVersion,
+                            tableName,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .delete(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                workspaceName,
+                apiVersion,
+                tableName,
+                accept,
+                context);
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link PollerFlux} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
+        String resourceGroupName, String workspaceName, String tableName) {
+        Mono<Response<Flux<ByteBuffer>>> mono = deleteWithResponseAsync(resourceGroupName, workspaceName, tableName);
+        return this
+            .client
+            .<Void, Void>getLroResult(
+                mono, this.client.getHttpPipeline(), Void.class, Void.class, this.client.getContext());
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link PollerFlux} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        context = this.client.mergeContext(context);
+        Mono<Response<Flux<ByteBuffer>>> mono =
+            deleteWithResponseAsync(resourceGroupName, workspaceName, tableName, context);
+        return this
+            .client
+            .<Void, Void>getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, context);
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<Void>, Void> beginDelete(
+        String resourceGroupName, String workspaceName, String tableName) {
+        return beginDeleteAsync(resourceGroupName, workspaceName, tableName).getSyncPoller();
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link SyncPoller} for polling of long-running operation.
+     */
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+    public SyncPoller<PollResult<Void>, Void> beginDelete(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        return beginDeleteAsync(resourceGroupName, workspaceName, tableName, context).getSyncPoller();
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return A {@link Mono} that completes when a successful response is received.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String tableName) {
+        return beginDeleteAsync(resourceGroupName, workspaceName, tableName)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return A {@link Mono} that completes when a successful response is received.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, String tableName, Context context) {
+        return beginDeleteAsync(resourceGroupName, workspaceName, tableName, context)
+            .last()
+            .flatMap(this.client::getLroFinalResultOrError);
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public void delete(String resourceGroupName, String workspaceName, String tableName) {
+        deleteAsync(resourceGroupName, workspaceName, tableName).block();
+    }
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public void delete(String resourceGroupName, String workspaceName, String tableName, Context context) {
+        deleteAsync(resourceGroupName, workspaceName, tableName, context).block();
+    }
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> migrateWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        return FluxUtil
+            .withContext(
+                context ->
+                    service
+                        .migrate(
+                            this.client.getEndpoint(),
+                            this.client.getSubscriptionId(),
+                            resourceGroupName,
+                            workspaceName,
+                            apiVersion,
+                            tableName,
+                            accept,
+                            context))
+            .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+    }
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response} on successful completion of {@link Mono}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Response<Void>> migrateWithResponseAsync(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        if (this.client.getEndpoint() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getEndpoint() is required and cannot be null."));
+        }
+        if (this.client.getSubscriptionId() == null) {
+            return Mono
+                .error(
+                    new IllegalArgumentException(
+                        "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+        }
+        if (resourceGroupName == null) {
+            return Mono
+                .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+        }
+        if (workspaceName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter workspaceName is required and cannot be null."));
+        }
+        if (tableName == null) {
+            return Mono.error(new IllegalArgumentException("Parameter tableName is required and cannot be null."));
+        }
+        final String apiVersion = "2021-12-01-preview";
+        final String accept = "application/json";
+        context = this.client.mergeContext(context);
+        return service
+            .migrate(
+                this.client.getEndpoint(),
+                this.client.getSubscriptionId(),
+                resourceGroupName,
+                workspaceName,
+                apiVersion,
+                tableName,
+                accept,
+                context);
+    }
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return A {@link Mono} that completes when a successful response is received.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    private Mono<Void> migrateAsync(String resourceGroupName, String workspaceName, String tableName) {
+        return migrateWithResponseAsync(resourceGroupName, workspaceName, tableName)
+            .flatMap((Response<Void> res) -> Mono.empty());
+    }
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public void migrate(String resourceGroupName, String workspaceName, String tableName) {
+        migrateAsync(resourceGroupName, workspaceName, tableName).block();
+    }
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    @ServiceMethod(returns = ReturnType.SINGLE)
+    public Response<Void> migrateWithResponse(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
+        return migrateWithResponseAsync(resourceGroupName, workspaceName, tableName, context).block();
+    }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesImpl.java
index 8ee8c3a0b68bc..4c525bbfafeb7 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/TablesImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
 import com.azure.resourcemanager.loganalytics.models.Table;
 import com.azure.resourcemanager.loganalytics.models.Tables;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class TablesImpl implements Tables {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(TablesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(TablesImpl.class);
 
     private final TablesClient innerClient;
 
@@ -39,8 +38,8 @@ public PagedIterable<Table> listByWorkspace(String resourceGroupName, String wor
         return Utils.mapPage(inner, inner1 -> new TableImpl(inner1, this.manager()));
     }
 
-    public Table update(String resourceGroupName, String workspaceName, String tableName, TableInner parameters) {
-        TableInner inner = this.serviceClient().update(resourceGroupName, workspaceName, tableName, parameters);
+    public Table get(String resourceGroupName, String workspaceName, String tableName) {
+        TableInner inner = this.serviceClient().get(resourceGroupName, workspaceName, tableName);
         if (inner != null) {
             return new TableImpl(inner, this.manager());
         } else {
@@ -48,10 +47,10 @@ public Table update(String resourceGroupName, String workspaceName, String table
         }
     }
 
-    public Response<Table> updateWithResponse(
-        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context) {
+    public Response<Table> getWithResponse(
+        String resourceGroupName, String workspaceName, String tableName, Context context) {
         Response<TableInner> inner =
-            this.serviceClient().updateWithResponse(resourceGroupName, workspaceName, tableName, parameters, context);
+            this.serviceClient().getWithResponse(resourceGroupName, workspaceName, tableName, context);
         if (inner != null) {
             return new SimpleResponse<>(
                 inner.getRequest(),
@@ -63,28 +62,125 @@ public Response<Table> updateWithResponse(
         }
     }
 
-    public Table get(String resourceGroupName, String workspaceName, String tableName) {
-        TableInner inner = this.serviceClient().get(resourceGroupName, workspaceName, tableName);
-        if (inner != null) {
-            return new TableImpl(inner, this.manager());
-        } else {
-            return null;
-        }
+    public void delete(String resourceGroupName, String workspaceName, String tableName) {
+        this.serviceClient().delete(resourceGroupName, workspaceName, tableName);
     }
 
-    public Response<Table> getWithResponse(
+    public void delete(String resourceGroupName, String workspaceName, String tableName, Context context) {
+        this.serviceClient().delete(resourceGroupName, workspaceName, tableName, context);
+    }
+
+    public void migrate(String resourceGroupName, String workspaceName, String tableName) {
+        this.serviceClient().migrate(resourceGroupName, workspaceName, tableName);
+    }
+
+    public Response<Void> migrateWithResponse(
         String resourceGroupName, String workspaceName, String tableName, Context context) {
-        Response<TableInner> inner =
-            this.serviceClient().getWithResponse(resourceGroupName, workspaceName, tableName, context);
-        if (inner != null) {
-            return new SimpleResponse<>(
-                inner.getRequest(),
-                inner.getStatusCode(),
-                inner.getHeaders(),
-                new TableImpl(inner.getValue(), this.manager()));
-        } else {
-            return null;
+        return this.serviceClient().migrateWithResponse(resourceGroupName, workspaceName, tableName, context);
+    }
+
+    public Table getById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourcegroups'.", id)));
+        }
+        String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
+        if (workspaceName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
+        }
+        String tableName = Utils.getValueFromIdByName(id, "tables");
+        if (tableName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'tables'.", id)));
+        }
+        return this.getWithResponse(resourceGroupName, workspaceName, tableName, Context.NONE).getValue();
+    }
+
+    public Response<Table> getByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourcegroups'.", id)));
+        }
+        String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
+        if (workspaceName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
+        }
+        String tableName = Utils.getValueFromIdByName(id, "tables");
+        if (tableName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'tables'.", id)));
         }
+        return this.getWithResponse(resourceGroupName, workspaceName, tableName, context);
+    }
+
+    public void deleteById(String id) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourcegroups'.", id)));
+        }
+        String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
+        if (workspaceName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
+        }
+        String tableName = Utils.getValueFromIdByName(id, "tables");
+        if (tableName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'tables'.", id)));
+        }
+        this.delete(resourceGroupName, workspaceName, tableName, Context.NONE);
+    }
+
+    public void deleteByIdWithResponse(String id, Context context) {
+        String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
+        if (resourceGroupName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String
+                            .format("The resource ID '%s' is not valid. Missing path segment 'resourcegroups'.", id)));
+        }
+        String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
+        if (workspaceName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
+        }
+        String tableName = Utils.getValueFromIdByName(id, "tables");
+        if (tableName == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        String.format("The resource ID '%s' is not valid. Missing path segment 'tables'.", id)));
+        }
+        this.delete(resourceGroupName, workspaceName, tableName, context);
     }
 
     private TablesClient serviceClient() {
@@ -94,4 +190,8 @@ private TablesClient serviceClient() {
     private com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager() {
         return this.serviceManager;
     }
+
+    public TableImpl define(String name) {
+        return new TableImpl(name, this.manager());
+    }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesClientImpl.java
index 5fe17c28238c3..b575116b0674f 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesClientImpl.java
@@ -25,7 +25,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.UsagesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.UsageMetricInner;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceListUsagesResult;
@@ -33,8 +32,6 @@
 
 /** An instance of this class provides access to all the operations defined in UsagesClient. */
 public final class UsagesClientImpl implements UsagesClient {
-    private final ClientLogger logger = new ClientLogger(UsagesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final UsagesService service;
 
@@ -82,7 +79,8 @@ Mono<Response<WorkspaceListUsagesResult>> list(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(String resourceGroupName, String workspaceName) {
@@ -105,6 +103,7 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(String resourc
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -114,7 +113,7 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(String resourc
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -134,7 +133,8 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(String resourc
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace along with {@link PagedResponse} on successful completion of
+     *     {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(
@@ -158,6 +158,7 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -165,7 +166,7 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -183,7 +184,7 @@ private Mono<PagedResponse<UsageMetricInner>> listSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<UsageMetricInner> listAsync(String resourceGroupName, String workspaceName) {
@@ -199,7 +200,7 @@ private PagedFlux<UsageMetricInner> listAsync(String resourceGroupName, String w
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<UsageMetricInner> listAsync(String resourceGroupName, String workspaceName, Context context) {
@@ -214,7 +215,7 @@ private PagedFlux<UsageMetricInner> listAsync(String resourceGroupName, String w
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<UsageMetricInner> list(String resourceGroupName, String workspaceName) {
@@ -230,7 +231,7 @@ public PagedIterable<UsageMetricInner> list(String resourceGroupName, String wor
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<UsageMetricInner> list(String resourceGroupName, String workspaceName, Context context) {
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesImpl.java
index 2e4b49a73ddd3..88976279a809b 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/UsagesImpl.java
@@ -11,10 +11,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.UsageMetricInner;
 import com.azure.resourcemanager.loganalytics.models.UsageMetric;
 import com.azure.resourcemanager.loganalytics.models.Usages;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class UsagesImpl implements Usages {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(UsagesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(UsagesImpl.class);
 
     private final UsagesClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspaceImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspaceImpl.java
index 612c1d9b2a4c1..f7dd7060951e2 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspaceImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspaceImpl.java
@@ -9,9 +9,11 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceInner;
 import com.azure.resourcemanager.loganalytics.models.PrivateLinkScopedResource;
 import com.azure.resourcemanager.loganalytics.models.PublicNetworkAccessType;
+import com.azure.resourcemanager.loganalytics.models.SystemDataAutoGenerated;
 import com.azure.resourcemanager.loganalytics.models.Workspace;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceCapping;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceEntityStatus;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceFeatures;
 import com.azure.resourcemanager.loganalytics.models.WorkspacePatch;
 import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
 import java.util.Collections;
@@ -48,6 +50,10 @@ public Map<String, String> tags() {
         }
     }
 
+    public SystemDataAutoGenerated systemData() {
+        return this.innerModel().systemData();
+    }
+
     public String etag() {
         return this.innerModel().etag();
     }
@@ -101,13 +107,12 @@ public List<PrivateLinkScopedResource> privateLinkScopedResources() {
         }
     }
 
-    public Map<String, Object> features() {
-        Map<String, Object> inner = this.innerModel().features();
-        if (inner != null) {
-            return Collections.unmodifiableMap(inner);
-        } else {
-            return Collections.emptyMap();
-        }
+    public WorkspaceFeatures features() {
+        return this.innerModel().features();
+    }
+
+    public String defaultDataCollectionRuleResourceId() {
+        return this.innerModel().defaultDataCollectionRuleResourceId();
     }
 
     public Region region() {
@@ -239,16 +244,6 @@ public WorkspaceImpl withEtag(String etag) {
         return this;
     }
 
-    public WorkspaceImpl withProvisioningState(WorkspaceEntityStatus provisioningState) {
-        if (isInCreateMode()) {
-            this.innerModel().withProvisioningState(provisioningState);
-            return this;
-        } else {
-            this.updateParameters.withProvisioningState(provisioningState);
-            return this;
-        }
-    }
-
     public WorkspaceImpl withSku(WorkspaceSku sku) {
         if (isInCreateMode()) {
             this.innerModel().withSku(sku);
@@ -309,7 +304,7 @@ public WorkspaceImpl withForceCmkForQuery(Boolean forceCmkForQuery) {
         }
     }
 
-    public WorkspaceImpl withFeatures(Map<String, Object> features) {
+    public WorkspaceImpl withFeatures(WorkspaceFeatures features) {
         if (isInCreateMode()) {
             this.innerModel().withFeatures(features);
             return this;
@@ -319,6 +314,16 @@ public WorkspaceImpl withFeatures(Map<String, Object> features) {
         }
     }
 
+    public WorkspaceImpl withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId) {
+        if (isInCreateMode()) {
+            this.innerModel().withDefaultDataCollectionRuleResourceId(defaultDataCollectionRuleResourceId);
+            return this;
+        } else {
+            this.updateParameters.withDefaultDataCollectionRuleResourceId(defaultDataCollectionRuleResourceId);
+            return this;
+        }
+    }
+
     private boolean isInCreateMode() {
         return this.innerModel().id() == null;
     }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesClientImpl.java
index a3e0cc6c85962..b54301a71c3f3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesClientImpl.java
@@ -23,7 +23,6 @@
 import com.azure.core.management.exception.ManagementException;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.WorkspacePurgesClient;
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspacePurgeResponseInner;
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspacePurgeStatusResponseInner;
@@ -33,8 +32,6 @@
 
 /** An instance of this class provides access to all the operations defined in WorkspacePurgesClient. */
 public final class WorkspacePurgesClientImpl implements WorkspacePurgesClient {
-    private final ClientLogger logger = new ClientLogger(WorkspacePurgesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final WorkspacePurgesService service;
 
@@ -106,7 +103,7 @@ Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatus(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return response containing operationId for a specific purge action.
+     * @return response containing operationId for a specific purge action on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
@@ -135,6 +132,7 @@ private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
         } else {
             body.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -143,7 +141,7 @@ private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
                         .purge(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             workspaceName,
                             body,
@@ -167,7 +165,7 @@ private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return response containing operationId for a specific purge action.
+     * @return response containing operationId for a specific purge action on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
@@ -196,13 +194,14 @@ private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
         } else {
             body.validate();
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .purge(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 workspaceName,
                 body,
@@ -224,7 +223,7 @@ private Mono<WorkspacePurgesPurgeResponse> purgeWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return response containing operationId for a specific purge action.
+     * @return response containing operationId for a specific purge action on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspacePurgeResponseInner> purgeAsync(
@@ -293,7 +292,8 @@ public WorkspacePurgesPurgeResponse purgeWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResponseAsync(
@@ -320,6 +320,7 @@ private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResp
         if (purgeId == null) {
             return Mono.error(new IllegalArgumentException("Parameter purgeId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -328,7 +329,7 @@ private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResp
                         .getPurgeStatus(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             workspaceName,
                             purgeId,
@@ -347,7 +348,8 @@ private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResp
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResponseAsync(
@@ -374,13 +376,14 @@ private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResp
         if (purgeId == null) {
             return Mono.error(new IllegalArgumentException("Parameter purgeId is required and cannot be null."));
         }
+        final String apiVersion = "2020-08-01";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .getPurgeStatus(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 workspaceName,
                 purgeId,
@@ -397,7 +400,7 @@ private Mono<Response<WorkspacePurgeStatusResponseInner>> getPurgeStatusWithResp
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspacePurgeStatusResponseInner> getPurgeStatusAsync(
@@ -440,7 +443,7 @@ public WorkspacePurgeStatusResponseInner getPurgeStatus(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<WorkspacePurgeStatusResponseInner> getPurgeStatusWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesImpl.java
index 69ac8aa105259..70ec17a8c02ef 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacePurgesImpl.java
@@ -16,10 +16,9 @@
 import com.azure.resourcemanager.loganalytics.models.WorkspacePurgeStatusResponse;
 import com.azure.resourcemanager.loganalytics.models.WorkspacePurges;
 import com.azure.resourcemanager.loganalytics.models.WorkspacePurgesPurgeResponse;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class WorkspacePurgesImpl implements WorkspacePurges {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspacePurgesImpl.class);
 
     private final WorkspacePurgesClient innerClient;
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesClientImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesClientImpl.java
index 52fa2d36e0374..a70b30bd45688 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesClientImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesClientImpl.java
@@ -30,7 +30,6 @@
 import com.azure.core.management.polling.PollResult;
 import com.azure.core.util.Context;
 import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.core.util.polling.PollerFlux;
 import com.azure.core.util.polling.SyncPoller;
 import com.azure.resourcemanager.loganalytics.fluent.WorkspacesClient;
@@ -43,8 +42,6 @@
 
 /** An instance of this class provides access to all the operations defined in WorkspacesClient. */
 public final class WorkspacesClientImpl implements WorkspacesClient {
-    private final ClientLogger logger = new ClientLogger(WorkspacesClientImpl.class);
-
     /** The proxy service used to perform REST calls. */
     private final WorkspacesService service;
 
@@ -163,7 +160,8 @@ Mono<Response<WorkspaceInner>> update(
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
@@ -179,17 +177,13 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
                 context ->
                     service
-                        .list(
-                            this.client.getEndpoint(),
-                            this.client.getApiVersion(),
-                            this.client.getSubscriptionId(),
-                            accept,
-                            context))
+                        .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context))
             .<PagedResponse<WorkspaceInner>>map(
                 res ->
                     new PagedResponseBase<>(
@@ -204,7 +198,8 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription along with {@link PagedResponse} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context) {
@@ -220,15 +215,11 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context)
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
-            .list(
-                this.client.getEndpoint(),
-                this.client.getApiVersion(),
-                this.client.getSubscriptionId(),
-                accept,
-                context)
+            .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
             .map(
                 res ->
                     new PagedResponseBase<>(
@@ -240,7 +231,7 @@ private Mono<PagedResponse<WorkspaceInner>> listSinglePageAsync(Context context)
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listAsync() {
@@ -254,7 +245,7 @@ private PagedFlux<WorkspaceInner> listAsync() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listAsync(Context context) {
@@ -266,7 +257,7 @@ private PagedFlux<WorkspaceInner> listAsync(Context context) {
      *
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> list() {
@@ -280,7 +271,7 @@ public PagedIterable<WorkspaceInner> list() {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> list(Context context) {
@@ -294,7 +285,7 @@ public PagedIterable<WorkspaceInner> list(Context context) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group along with {@link PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(String resourceGroupName) {
@@ -314,6 +305,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -322,7 +314,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
                         .listByResourceGroup(
                             this.client.getEndpoint(),
                             resourceGroupName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -341,7 +333,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(S
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group along with {@link PagedResponse} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
@@ -362,13 +354,14 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
             .listByResourceGroup(
                 this.client.getEndpoint(),
                 resourceGroupName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context)
@@ -385,7 +378,7 @@ private Mono<PagedResponse<WorkspaceInner>> listByResourceGroupSinglePageAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupName) {
@@ -400,7 +393,7 @@ private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedFlux}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupName, Context context) {
@@ -414,7 +407,7 @@ private PagedFlux<WorkspaceInner> listByResourceGroupAsync(String resourceGroupN
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName) {
@@ -429,7 +422,7 @@ public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     @ServiceMethod(returns = ReturnType.COLLECTION)
     public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupName, Context context) {
@@ -445,7 +438,8 @@ public PagedIterable<WorkspaceInner> listByResourceGroup(String resourceGroupNam
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -474,6 +468,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -483,7 +478,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             parameters,
                             accept,
@@ -501,7 +496,8 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
@@ -530,6 +526,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -537,7 +534,7 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 parameters,
                 accept,
@@ -553,9 +550,9 @@ private Mono<Response<Flux<ByteBuffer>>> createOrUpdateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link PollerFlux} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdateAsync(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters) {
         Mono<Response<Flux<ByteBuffer>>> mono =
@@ -563,7 +560,11 @@ private PollerFlux<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpda
         return this
             .client
             .<WorkspaceInner, WorkspaceInner>getLroResult(
-                mono, this.client.getHttpPipeline(), WorkspaceInner.class, WorkspaceInner.class, Context.NONE);
+                mono,
+                this.client.getHttpPipeline(),
+                WorkspaceInner.class,
+                WorkspaceInner.class,
+                this.client.getContext());
     }
 
     /**
@@ -576,9 +577,9 @@ private PollerFlux<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpda
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link PollerFlux} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdateAsync(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters, Context context) {
         context = this.client.mergeContext(context);
@@ -599,9 +600,9 @@ private PollerFlux<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpda
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link SyncPoller} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters) {
         return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, parameters).getSyncPoller();
@@ -617,9 +618,9 @@ public SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdat
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the {@link SyncPoller} for polling of the top level Workspace resource container.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdate(
         String resourceGroupName, String workspaceName, WorkspaceInner parameters, Context context) {
         return beginCreateOrUpdateAsync(resourceGroupName, workspaceName, parameters, context).getSyncPoller();
@@ -634,7 +635,7 @@ public SyncPoller<PollResult<WorkspaceInner>, WorkspaceInner> beginCreateOrUpdat
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspaceInner> createOrUpdateAsync(
@@ -654,7 +655,7 @@ private Mono<WorkspaceInner> createOrUpdateAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspaceInner> createOrUpdateAsync(
@@ -710,7 +711,7 @@ public WorkspaceInner createOrUpdate(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
@@ -734,6 +735,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -743,7 +745,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             force,
                             accept,
@@ -764,7 +766,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
@@ -788,6 +790,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -795,7 +798,7 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 force,
                 accept,
@@ -814,15 +817,16 @@ private Mono<Response<Flux<ByteBuffer>>> deleteWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link PollerFlux} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
         String resourceGroupName, String workspaceName, Boolean force) {
         Mono<Response<Flux<ByteBuffer>>> mono = deleteWithResponseAsync(resourceGroupName, workspaceName, force);
         return this
             .client
-            .<Void, Void>getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
+            .<Void, Void>getLroResult(
+                mono, this.client.getHttpPipeline(), Void.class, Void.class, this.client.getContext());
     }
 
     /**
@@ -838,9 +842,9 @@ private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link PollerFlux} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
         String resourceGroupName, String workspaceName, Boolean force, Context context) {
         context = this.client.mergeContext(context);
@@ -863,9 +867,9 @@ private PollerFlux<PollResult<Void>, Void> beginDeleteAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<Void>, Void> beginDelete(
         String resourceGroupName, String workspaceName, Boolean force) {
         return beginDeleteAsync(resourceGroupName, workspaceName, force).getSyncPoller();
@@ -884,9 +888,9 @@ public SyncPoller<PollResult<Void>, Void> beginDelete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return the {@link SyncPoller} for polling of long-running operation.
      */
-    @ServiceMethod(returns = ReturnType.SINGLE)
+    @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
     public SyncPoller<PollResult<Void>, Void> beginDelete(
         String resourceGroupName, String workspaceName, Boolean force, Context context) {
         return beginDeleteAsync(resourceGroupName, workspaceName, force, context).getSyncPoller();
@@ -904,7 +908,7 @@ public SyncPoller<PollResult<Void>, Void> beginDelete(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, Boolean force) {
@@ -923,7 +927,7 @@ private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, B
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName) {
@@ -946,7 +950,7 @@ private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName) {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the completion.
+     * @return A {@link Mono} that completes when a successful response is received.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Void> deleteAsync(String resourceGroupName, String workspaceName, Boolean force, Context context) {
@@ -1017,7 +1021,7 @@ public void delete(String resourceGroupName, String workspaceName, Boolean force
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
@@ -1041,6 +1045,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -1050,7 +1055,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             accept,
                             context))
@@ -1066,7 +1071,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response} on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
@@ -1090,6 +1095,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
                     new IllegalArgumentException(
                         "Parameter this.client.getSubscriptionId() is required and cannot be null."));
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -1097,7 +1103,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 accept,
                 context);
@@ -1111,7 +1117,7 @@ private Mono<Response<WorkspaceInner>> getByResourceGroupWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspaceInner> getByResourceGroupAsync(String resourceGroupName, String workspaceName) {
@@ -1150,7 +1156,7 @@ public WorkspaceInner getByResourceGroup(String resourceGroupName, String worksp
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<WorkspaceInner> getByResourceGroupWithResponse(
@@ -1167,7 +1173,8 @@ public Response<WorkspaceInner> getByResourceGroupWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
@@ -1196,6 +1203,7 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         return FluxUtil
             .withContext(
@@ -1205,7 +1213,7 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
                             this.client.getEndpoint(),
                             resourceGroupName,
                             workspaceName,
-                            this.client.getApiVersion(),
+                            apiVersion,
                             this.client.getSubscriptionId(),
                             parameters,
                             accept,
@@ -1223,7 +1231,8 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response} on successful completion of {@link
+     *     Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
@@ -1252,6 +1261,7 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
         } else {
             parameters.validate();
         }
+        final String apiVersion = "2021-12-01-preview";
         final String accept = "application/json";
         context = this.client.mergeContext(context);
         return service
@@ -1259,7 +1269,7 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
                 this.client.getEndpoint(),
                 resourceGroupName,
                 workspaceName,
-                this.client.getApiVersion(),
+                apiVersion,
                 this.client.getSubscriptionId(),
                 parameters,
                 accept,
@@ -1275,7 +1285,7 @@ private Mono<Response<WorkspaceInner>> updateWithResponseAsync(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container on successful completion of {@link Mono}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     private Mono<WorkspaceInner> updateAsync(
@@ -1317,7 +1327,7 @@ public WorkspaceInner update(String resourceGroupName, String workspaceName, Wor
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the top level Workspace resource container.
+     * @return the top level Workspace resource container along with {@link Response}.
      */
     @ServiceMethod(returns = ReturnType.SINGLE)
     public Response<WorkspaceInner> updateWithResponse(
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesImpl.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesImpl.java
index d61e9eed572b0..c954fd904b5b7 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesImpl.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/implementation/WorkspacesImpl.java
@@ -13,10 +13,9 @@
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceInner;
 import com.azure.resourcemanager.loganalytics.models.Workspace;
 import com.azure.resourcemanager.loganalytics.models.Workspaces;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 public final class WorkspacesImpl implements Workspaces {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacesImpl.class);
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspacesImpl.class);
 
     private final WorkspacesClient innerClient;
 
@@ -87,7 +86,7 @@ public Response<Workspace> getByResourceGroupWithResponse(
     public Workspace getById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -95,7 +94,7 @@ public Workspace getById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -106,7 +105,7 @@ public Workspace getById(String id) {
     public Response<Workspace> getByIdWithResponse(String id, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -114,7 +113,7 @@ public Response<Workspace> getByIdWithResponse(String id, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -125,7 +124,7 @@ public Response<Workspace> getByIdWithResponse(String id, Context context) {
     public void deleteById(String id) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -133,7 +132,7 @@ public void deleteById(String id) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
@@ -145,7 +144,7 @@ public void deleteById(String id) {
     public void deleteByIdWithResponse(String id, Boolean force, Context context) {
         String resourceGroupName = Utils.getValueFromIdByName(id, "resourcegroups");
         if (resourceGroupName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String
@@ -153,7 +152,7 @@ public void deleteByIdWithResponse(String id, Boolean force, Context context) {
         }
         String workspaceName = Utils.getValueFromIdByName(id, "workspaces");
         if (workspaceName == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException(
                         String.format("The resource ID '%s' is not valid. Missing path segment 'workspaces'.", id)));
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AssociatedWorkspace.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AssociatedWorkspace.java
new file mode 100644
index 0000000000000..60d9f78a2d2a4
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AssociatedWorkspace.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The list of Log Analytics workspaces associated with the cluster. */
+@Immutable
+public final class AssociatedWorkspace {
+    /*
+     * The id of the assigned workspace.
+     */
+    @JsonProperty(value = "workspaceId", access = JsonProperty.Access.WRITE_ONLY)
+    private String workspaceId;
+
+    /*
+     * The name id the assigned workspace.
+     */
+    @JsonProperty(value = "workspaceName", access = JsonProperty.Access.WRITE_ONLY)
+    private String workspaceName;
+
+    /*
+     * The ResourceId id the assigned workspace.
+     */
+    @JsonProperty(value = "resourceId", access = JsonProperty.Access.WRITE_ONLY)
+    private String resourceId;
+
+    /*
+     * The time of workspace association.
+     */
+    @JsonProperty(value = "associateDate", access = JsonProperty.Access.WRITE_ONLY)
+    private String associateDate;
+
+    /**
+     * Get the workspaceId property: The id of the assigned workspace.
+     *
+     * @return the workspaceId value.
+     */
+    public String workspaceId() {
+        return this.workspaceId;
+    }
+
+    /**
+     * Get the workspaceName property: The name id the assigned workspace.
+     *
+     * @return the workspaceName value.
+     */
+    public String workspaceName() {
+        return this.workspaceName;
+    }
+
+    /**
+     * Get the resourceId property: The ResourceId id the assigned workspace.
+     *
+     * @return the resourceId value.
+     */
+    public String resourceId() {
+        return this.resourceId;
+    }
+
+    /**
+     * Get the associateDate property: The time of workspace association.
+     *
+     * @return the associateDate value.
+     */
+    public String associateDate() {
+        return this.associateDate;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AvailableServiceTiers.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AvailableServiceTiers.java
index 6ff50322465ce..4dcc29c68cca4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AvailableServiceTiers.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AvailableServiceTiers.java
@@ -31,7 +31,7 @@ public interface AvailableServiceTiers {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the available service tiers for the workspace.
+     * @return the available service tiers for the workspace along with {@link Response}.
      */
     Response<List<AvailableServiceTier>> listByWorkspaceWithResponse(
         String resourceGroupName, String workspaceName, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureEntityResource.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureEntityResource.java
index 19249bec3ddd3..12a03b6762276 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureEntityResource.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureEntityResource.java
@@ -6,15 +6,11 @@
 
 import com.azure.core.annotation.Immutable;
 import com.azure.core.management.ProxyResource;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-/** The resource model definition for an Azure Resource Manager resource with an etag. */
+/** Entity Resource The resource model definition for an Azure Resource Manager resource with an etag. */
 @Immutable
 public class AzureEntityResource extends ProxyResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(AzureEntityResource.class);
-
     /*
      * Resource Etag.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureResourceProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureResourceProperties.java
new file mode 100644
index 0000000000000..4934a624cf7e7
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/AzureResourceProperties.java
@@ -0,0 +1,81 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.SystemData;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** An Azure resource QueryPack-Query object. */
+@Immutable
+public class AzureResourceProperties {
+    /*
+     * Azure resource Id
+     */
+    @JsonProperty(value = "id", access = JsonProperty.Access.WRITE_ONLY)
+    private String id;
+
+    /*
+     * Azure resource name
+     */
+    @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+    private String name;
+
+    /*
+     * Azure resource type
+     */
+    @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
+    private String type;
+
+    /*
+     * Read only system data
+     */
+    @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+    private SystemData systemData;
+
+    /**
+     * Get the id property: Azure resource Id.
+     *
+     * @return the id value.
+     */
+    public String id() {
+        return this.id;
+    }
+
+    /**
+     * Get the name property: Azure resource name.
+     *
+     * @return the name value.
+     */
+    public String name() {
+        return this.name;
+    }
+
+    /**
+     * Get the type property: Azure resource type.
+     *
+     * @return the type value.
+     */
+    public String type() {
+        return this.type;
+    }
+
+    /**
+     * Get the systemData property: Read only system data.
+     *
+     * @return the systemData value.
+     */
+    public SystemData systemData() {
+        return this.systemData;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/BillingType.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/BillingType.java
new file mode 100644
index 0000000000000..f57053a49627d
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/BillingType.java
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for BillingType. */
+public final class BillingType extends ExpandableStringEnum<BillingType> {
+    /** Static value Cluster for BillingType. */
+    public static final BillingType CLUSTER = fromString("Cluster");
+
+    /** Static value Workspaces for BillingType. */
+    public static final BillingType WORKSPACES = fromString("Workspaces");
+
+    /**
+     * Creates or finds a BillingType from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding BillingType.
+     */
+    @JsonCreator
+    public static BillingType fromString(String name) {
+        return fromString(name, BillingType.class);
+    }
+
+    /** @return known BillingType values. */
+    public static Collection<BillingType> values() {
+        return values(BillingType.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Capacity.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Capacity.java
new file mode 100644
index 0000000000000..71c46e1df9efa
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Capacity.java
@@ -0,0 +1,57 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/** Defines values for Capacity. */
+public enum Capacity {
+    /** Enum value 500. */
+    FIVE_ZERO_ZERO(500L),
+
+    /** Enum value 1000. */
+    ONE_ZERO_ZERO_ZERO(1000L),
+
+    /** Enum value 2000. */
+    TWO_ZERO_ZERO_ZERO(2000L),
+
+    /** Enum value 5000. */
+    FIVE_ZERO_ZERO_ZERO(5000L);
+
+    /** The actual serialized value for a Capacity instance. */
+    private final long value;
+
+    Capacity(long value) {
+        this.value = value;
+    }
+
+    /**
+     * Parses a serialized value to a Capacity instance.
+     *
+     * @param value the serialized value to parse.
+     * @return the parsed Capacity object, or null if unable to parse.
+     */
+    @JsonCreator
+    public static Capacity fromLong(long value) {
+        Capacity[] items = Capacity.values();
+        for (Capacity item : items) {
+            if (item.toLong() == value) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    /**
+     * De-serializes the instance to long value.
+     *
+     * @return the long value.
+     */
+    @JsonValue
+    public long toLong() {
+        return this.value;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationLevel.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationLevel.java
new file mode 100644
index 0000000000000..5d2ee35e28ce4
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationLevel.java
@@ -0,0 +1,69 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+/** Defines values for CapacityReservationLevel. */
+public enum CapacityReservationLevel {
+    /** Enum value 100. */
+    ONE_ZERO_ZERO(100),
+
+    /** Enum value 200. */
+    TWO_ZERO_ZERO(200),
+
+    /** Enum value 300. */
+    THREE_ZERO_ZERO(300),
+
+    /** Enum value 400. */
+    FOUR_ZERO_ZERO(400),
+
+    /** Enum value 500. */
+    FIVE_ZERO_ZERO(500),
+
+    /** Enum value 1000. */
+    ONE_ZERO_ZERO_ZERO(1000),
+
+    /** Enum value 2000. */
+    TWO_ZERO_ZERO_ZERO(2000),
+
+    /** Enum value 5000. */
+    FIVE_ZERO_ZERO_ZERO(5000);
+
+    /** The actual serialized value for a CapacityReservationLevel instance. */
+    private final int value;
+
+    CapacityReservationLevel(int value) {
+        this.value = value;
+    }
+
+    /**
+     * Parses a serialized value to a CapacityReservationLevel instance.
+     *
+     * @param value the serialized value to parse.
+     * @return the parsed CapacityReservationLevel object, or null if unable to parse.
+     */
+    @JsonCreator
+    public static CapacityReservationLevel fromInt(int value) {
+        CapacityReservationLevel[] items = CapacityReservationLevel.values();
+        for (CapacityReservationLevel item : items) {
+            if (item.toInt() == value) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    /**
+     * De-serializes the instance to int value.
+     *
+     * @return the int value.
+     */
+    @JsonValue
+    public int toInt() {
+        return this.value;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationProperties.java
new file mode 100644
index 0000000000000..278d5f51bed34
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CapacityReservationProperties.java
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The Capacity Reservation properties. */
+@Immutable
+public final class CapacityReservationProperties {
+    /*
+     * The last time Sku was updated.
+     */
+    @JsonProperty(value = "lastSkuUpdate", access = JsonProperty.Access.WRITE_ONLY)
+    private String lastSkuUpdate;
+
+    /*
+     * Minimum CapacityReservation value in GB.
+     */
+    @JsonProperty(value = "minCapacity", access = JsonProperty.Access.WRITE_ONLY)
+    private Long minCapacity;
+
+    /**
+     * Get the lastSkuUpdate property: The last time Sku was updated.
+     *
+     * @return the lastSkuUpdate value.
+     */
+    public String lastSkuUpdate() {
+        return this.lastSkuUpdate;
+    }
+
+    /**
+     * Get the minCapacity property: Minimum CapacityReservation value in GB.
+     *
+     * @return the minCapacity value.
+     */
+    public Long minCapacity() {
+        return this.minCapacity;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Cluster.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Cluster.java
index 6cd5fe9911757..50dc0d70db138 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Cluster.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Cluster.java
@@ -7,6 +7,7 @@
 import com.azure.core.management.Region;
 import com.azure.core.util.Context;
 import com.azure.resourcemanager.loganalytics.fluent.models.ClusterInner;
+import java.util.List;
 import java.util.Map;
 
 /** An immutable client-side representation of Cluster. */
@@ -60,13 +61,6 @@ public interface Cluster {
      */
     ClusterSku sku();
 
-    /**
-     * Gets the nextLink property: The link used to get the next page of recommendations.
-     *
-     * @return the nextLink value.
-     */
-    String nextLink();
-
     /**
      * Gets the clusterId property: The ID associated with the cluster.
      *
@@ -81,6 +75,30 @@ public interface Cluster {
      */
     ClusterEntityStatus provisioningState();
 
+    /**
+     * Gets the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption. This Property
+     * can not be modified after cluster creation. Default value is 'true'.
+     *
+     * @return the isDoubleEncryptionEnabled value.
+     */
+    Boolean isDoubleEncryptionEnabled();
+
+    /**
+     * Gets the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability zones. This can
+     * be set as true only in regions where Azure Data Explorer support Availability Zones. This Property can not be
+     * modified after cluster creation. Default value is 'true' if region supports Availability Zones.
+     *
+     * @return the isAvailabilityZonesEnabled value.
+     */
+    Boolean isAvailabilityZonesEnabled();
+
+    /**
+     * Gets the billingType property: The cluster's billing type.
+     *
+     * @return the billingType value.
+     */
+    BillingType billingType();
+
     /**
      * Gets the keyVaultProperties property: The associated key properties.
      *
@@ -88,6 +106,34 @@ public interface Cluster {
      */
     KeyVaultProperties keyVaultProperties();
 
+    /**
+     * Gets the lastModifiedDate property: The last time the cluster was updated.
+     *
+     * @return the lastModifiedDate value.
+     */
+    String lastModifiedDate();
+
+    /**
+     * Gets the createdDate property: The cluster creation time.
+     *
+     * @return the createdDate value.
+     */
+    String createdDate();
+
+    /**
+     * Gets the associatedWorkspaces property: The list of Log Analytics workspaces associated with the cluster.
+     *
+     * @return the associatedWorkspaces value.
+     */
+    List<AssociatedWorkspace> associatedWorkspaces();
+
+    /**
+     * Gets the capacityReservationProperties property: Additional properties for capacity reservation.
+     *
+     * @return the capacityReservationProperties value.
+     */
+    CapacityReservationProperties capacityReservationProperties();
+
     /**
      * Gets the region of the resource.
      *
@@ -157,8 +203,12 @@ interface WithCreate
             extends DefinitionStages.WithTags,
                 DefinitionStages.WithIdentity,
                 DefinitionStages.WithSku,
-                DefinitionStages.WithNextLink,
-                DefinitionStages.WithKeyVaultProperties {
+                DefinitionStages.WithIsDoubleEncryptionEnabled,
+                DefinitionStages.WithIsAvailabilityZonesEnabled,
+                DefinitionStages.WithBillingType,
+                DefinitionStages.WithKeyVaultProperties,
+                DefinitionStages.WithAssociatedWorkspaces,
+                DefinitionStages.WithCapacityReservationProperties {
             /**
              * Executes the create request.
              *
@@ -204,15 +254,43 @@ interface WithSku {
              */
             WithCreate withSku(ClusterSku sku);
         }
-        /** The stage of the Cluster definition allowing to specify nextLink. */
-        interface WithNextLink {
+        /** The stage of the Cluster definition allowing to specify isDoubleEncryptionEnabled. */
+        interface WithIsDoubleEncryptionEnabled {
             /**
-             * Specifies the nextLink property: The link used to get the next page of recommendations..
+             * Specifies the isDoubleEncryptionEnabled property: Configures whether cluster will use double encryption.
+             * This Property can not be modified after cluster creation. Default value is 'true'.
              *
-             * @param nextLink The link used to get the next page of recommendations.
+             * @param isDoubleEncryptionEnabled Configures whether cluster will use double encryption. This Property can
+             *     not be modified after cluster creation. Default value is 'true'.
              * @return the next definition stage.
              */
-            WithCreate withNextLink(String nextLink);
+            WithCreate withIsDoubleEncryptionEnabled(Boolean isDoubleEncryptionEnabled);
+        }
+        /** The stage of the Cluster definition allowing to specify isAvailabilityZonesEnabled. */
+        interface WithIsAvailabilityZonesEnabled {
+            /**
+             * Specifies the isAvailabilityZonesEnabled property: Sets whether the cluster will support availability
+             * zones. This can be set as true only in regions where Azure Data Explorer support Availability Zones. This
+             * Property can not be modified after cluster creation. Default value is 'true' if region supports
+             * Availability Zones..
+             *
+             * @param isAvailabilityZonesEnabled Sets whether the cluster will support availability zones. This can be
+             *     set as true only in regions where Azure Data Explorer support Availability Zones. This Property can
+             *     not be modified after cluster creation. Default value is 'true' if region supports Availability
+             *     Zones.
+             * @return the next definition stage.
+             */
+            WithCreate withIsAvailabilityZonesEnabled(Boolean isAvailabilityZonesEnabled);
+        }
+        /** The stage of the Cluster definition allowing to specify billingType. */
+        interface WithBillingType {
+            /**
+             * Specifies the billingType property: The cluster's billing type..
+             *
+             * @param billingType The cluster's billing type.
+             * @return the next definition stage.
+             */
+            WithCreate withBillingType(BillingType billingType);
         }
         /** The stage of the Cluster definition allowing to specify keyVaultProperties. */
         interface WithKeyVaultProperties {
@@ -224,6 +302,27 @@ interface WithKeyVaultProperties {
              */
             WithCreate withKeyVaultProperties(KeyVaultProperties keyVaultProperties);
         }
+        /** The stage of the Cluster definition allowing to specify associatedWorkspaces. */
+        interface WithAssociatedWorkspaces {
+            /**
+             * Specifies the associatedWorkspaces property: The list of Log Analytics workspaces associated with the
+             * cluster.
+             *
+             * @param associatedWorkspaces The list of Log Analytics workspaces associated with the cluster.
+             * @return the next definition stage.
+             */
+            WithCreate withAssociatedWorkspaces(List<AssociatedWorkspace> associatedWorkspaces);
+        }
+        /** The stage of the Cluster definition allowing to specify capacityReservationProperties. */
+        interface WithCapacityReservationProperties {
+            /**
+             * Specifies the capacityReservationProperties property: Additional properties for capacity reservation.
+             *
+             * @param capacityReservationProperties Additional properties for capacity reservation.
+             * @return the next definition stage.
+             */
+            WithCreate withCapacityReservationProperties(CapacityReservationProperties capacityReservationProperties);
+        }
     }
     /**
      * Begins update for the Cluster resource.
@@ -233,7 +332,12 @@ interface WithKeyVaultProperties {
     Cluster.Update update();
 
     /** The template for Cluster update. */
-    interface Update extends UpdateStages.WithTags, UpdateStages.WithSku, UpdateStages.WithKeyVaultProperties {
+    interface Update
+        extends UpdateStages.WithTags,
+            UpdateStages.WithIdentity,
+            UpdateStages.WithSku,
+            UpdateStages.WithKeyVaultProperties,
+            UpdateStages.WithBillingType {
         /**
          * Executes the update request.
          *
@@ -261,6 +365,16 @@ interface WithTags {
              */
             Update withTags(Map<String, String> tags);
         }
+        /** The stage of the Cluster update allowing to specify identity. */
+        interface WithIdentity {
+            /**
+             * Specifies the identity property: The identity of the resource..
+             *
+             * @param identity The identity of the resource.
+             * @return the next definition stage.
+             */
+            Update withIdentity(Identity identity);
+        }
         /** The stage of the Cluster update allowing to specify sku. */
         interface WithSku {
             /**
@@ -281,6 +395,16 @@ interface WithKeyVaultProperties {
              */
             Update withKeyVaultProperties(KeyVaultProperties keyVaultProperties);
         }
+        /** The stage of the Cluster update allowing to specify billingType. */
+        interface WithBillingType {
+            /**
+             * Specifies the billingType property: The cluster's billing type..
+             *
+             * @param billingType The cluster's billing type.
+             * @return the next definition stage.
+             */
+            Update withBillingType(BillingType billingType);
+        }
     }
     /**
      * Refreshes the resource to sync with Azure.
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterListResult.java
index 14b2d8b6e02f7..a0ff2da93921a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.ClusterInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list clusters operation response. */
 @Fluent
 public final class ClusterListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ClusterListResult.class);
-
     /*
      * The link used to get the next page of recommendations.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterPatch.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterPatch.java
index 34be5ae9d38f6..b19d71f81c760 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterPatch.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterPatch.java
@@ -5,17 +5,25 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.azure.resourcemanager.loganalytics.fluent.models.ClusterPatchProperties;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.Map;
 
 /** The top level Log Analytics cluster resource container. */
-@JsonFlatten
 @Fluent
-public class ClusterPatch {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ClusterPatch.class);
+public final class ClusterPatch {
+    /*
+     * Log Analytics cluster properties.
+     */
+    @JsonProperty(value = "properties")
+    private ClusterPatchProperties innerProperties;
+
+    /*
+     * The identity of the resource.
+     */
+    @JsonProperty(value = "identity")
+    private Identity identity;
 
     /*
      * The sku properties.
@@ -27,13 +35,37 @@ public class ClusterPatch {
      * Resource tags.
      */
     @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
     private Map<String, String> tags;
 
-    /*
-     * The associated key properties.
+    /**
+     * Get the innerProperties property: Log Analytics cluster properties.
+     *
+     * @return the innerProperties value.
+     */
+    private ClusterPatchProperties innerProperties() {
+        return this.innerProperties;
+    }
+
+    /**
+     * Get the identity property: The identity of the resource.
+     *
+     * @return the identity value.
+     */
+    public Identity identity() {
+        return this.identity;
+    }
+
+    /**
+     * Set the identity property: The identity of the resource.
+     *
+     * @param identity the identity value to set.
+     * @return the ClusterPatch object itself.
      */
-    @JsonProperty(value = "properties.keyVaultProperties")
-    private KeyVaultProperties keyVaultProperties;
+    public ClusterPatch withIdentity(Identity identity) {
+        this.identity = identity;
+        return this;
+    }
 
     /**
      * Get the sku property: The sku properties.
@@ -81,7 +113,7 @@ public ClusterPatch withTags(Map<String, String> tags) {
      * @return the keyVaultProperties value.
      */
     public KeyVaultProperties keyVaultProperties() {
-        return this.keyVaultProperties;
+        return this.innerProperties() == null ? null : this.innerProperties().keyVaultProperties();
     }
 
     /**
@@ -91,7 +123,33 @@ public KeyVaultProperties keyVaultProperties() {
      * @return the ClusterPatch object itself.
      */
     public ClusterPatch withKeyVaultProperties(KeyVaultProperties keyVaultProperties) {
-        this.keyVaultProperties = keyVaultProperties;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterPatchProperties();
+        }
+        this.innerProperties().withKeyVaultProperties(keyVaultProperties);
+        return this;
+    }
+
+    /**
+     * Get the billingType property: The cluster's billing type.
+     *
+     * @return the billingType value.
+     */
+    public BillingType billingType() {
+        return this.innerProperties() == null ? null : this.innerProperties().billingType();
+    }
+
+    /**
+     * Set the billingType property: The cluster's billing type.
+     *
+     * @param billingType the billingType value to set.
+     * @return the ClusterPatch object itself.
+     */
+    public ClusterPatch withBillingType(BillingType billingType) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new ClusterPatchProperties();
+        }
+        this.innerProperties().withBillingType(billingType);
         return this;
     }
 
@@ -101,11 +159,14 @@ public ClusterPatch withKeyVaultProperties(KeyVaultProperties keyVaultProperties
      * @throws IllegalArgumentException thrown if the instance is not valid.
      */
     public void validate() {
+        if (innerProperties() != null) {
+            innerProperties().validate();
+        }
+        if (identity() != null) {
+            identity().validate();
+        }
         if (sku() != null) {
             sku().validate();
         }
-        if (keyVaultProperties() != null) {
-            keyVaultProperties().validate();
-        }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterSku.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterSku.java
index 1b2fb5bcba651..21f251d2954a2 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterSku.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ClusterSku.java
@@ -5,20 +5,16 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The cluster sku definition. */
 @Fluent
 public final class ClusterSku {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ClusterSku.class);
-
     /*
      * The capacity value
      */
     @JsonProperty(value = "capacity")
-    private Long capacity;
+    private Capacity capacity;
 
     /*
      * The name of the SKU.
@@ -31,7 +27,7 @@ public final class ClusterSku {
      *
      * @return the capacity value.
      */
-    public Long capacity() {
+    public Capacity capacity() {
         return this.capacity;
     }
 
@@ -41,7 +37,7 @@ public Long capacity() {
      * @param capacity the capacity value to set.
      * @return the ClusterSku object itself.
      */
-    public ClusterSku withCapacity(Long capacity) {
+    public ClusterSku withCapacity(Capacity capacity) {
         this.capacity = capacity;
         return this;
     }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Clusters.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Clusters.java
index 3001bd01cb10c..d256f54949b53 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Clusters.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Clusters.java
@@ -17,7 +17,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Cluster> listByResourceGroup(String resourceGroupName);
 
@@ -29,7 +29,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return log Analytics clusters in a resource group.
+     * @return log Analytics clusters in a resource group as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Cluster> listByResourceGroup(String resourceGroupName, Context context);
 
@@ -38,7 +38,7 @@ public interface Clusters {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Cluster> list();
 
@@ -49,7 +49,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the Log Analytics clusters in a subscription.
+     * @return the Log Analytics clusters in a subscription as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Cluster> list(Context context);
 
@@ -97,7 +97,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response}.
      */
     Response<Cluster> getByResourceGroupWithResponse(String resourceGroupName, String clusterName, Context context);
 
@@ -108,7 +108,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response}.
      */
     Cluster getById(String id);
 
@@ -120,7 +120,7 @@ public interface Clusters {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics cluster instance.
+     * @return a Log Analytics cluster instance along with {@link Response}.
      */
     Response<Cluster> getByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Column.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Column.java
new file mode 100644
index 0000000000000..e4d3632566fc6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Column.java
@@ -0,0 +1,180 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Table column. */
+@Fluent
+public final class Column {
+    /*
+     * Column name.
+     */
+    @JsonProperty(value = "name")
+    private String name;
+
+    /*
+     * Column data type.
+     */
+    @JsonProperty(value = "type")
+    private ColumnTypeEnum type;
+
+    /*
+     * Column data type logical hint.
+     */
+    @JsonProperty(value = "dataTypeHint")
+    private ColumnDataTypeHintEnum dataTypeHint;
+
+    /*
+     * Column display name.
+     */
+    @JsonProperty(value = "displayName")
+    private String displayName;
+
+    /*
+     * Column description.
+     */
+    @JsonProperty(value = "description")
+    private String description;
+
+    /*
+     * Is displayed by default.
+     */
+    @JsonProperty(value = "isDefaultDisplay", access = JsonProperty.Access.WRITE_ONLY)
+    private Boolean isDefaultDisplay;
+
+    /*
+     * Is column hidden.
+     */
+    @JsonProperty(value = "isHidden", access = JsonProperty.Access.WRITE_ONLY)
+    private Boolean isHidden;
+
+    /**
+     * Get the name property: Column name.
+     *
+     * @return the name value.
+     */
+    public String name() {
+        return this.name;
+    }
+
+    /**
+     * Set the name property: Column name.
+     *
+     * @param name the name value to set.
+     * @return the Column object itself.
+     */
+    public Column withName(String name) {
+        this.name = name;
+        return this;
+    }
+
+    /**
+     * Get the type property: Column data type.
+     *
+     * @return the type value.
+     */
+    public ColumnTypeEnum type() {
+        return this.type;
+    }
+
+    /**
+     * Set the type property: Column data type.
+     *
+     * @param type the type value to set.
+     * @return the Column object itself.
+     */
+    public Column withType(ColumnTypeEnum type) {
+        this.type = type;
+        return this;
+    }
+
+    /**
+     * Get the dataTypeHint property: Column data type logical hint.
+     *
+     * @return the dataTypeHint value.
+     */
+    public ColumnDataTypeHintEnum dataTypeHint() {
+        return this.dataTypeHint;
+    }
+
+    /**
+     * Set the dataTypeHint property: Column data type logical hint.
+     *
+     * @param dataTypeHint the dataTypeHint value to set.
+     * @return the Column object itself.
+     */
+    public Column withDataTypeHint(ColumnDataTypeHintEnum dataTypeHint) {
+        this.dataTypeHint = dataTypeHint;
+        return this;
+    }
+
+    /**
+     * Get the displayName property: Column display name.
+     *
+     * @return the displayName value.
+     */
+    public String displayName() {
+        return this.displayName;
+    }
+
+    /**
+     * Set the displayName property: Column display name.
+     *
+     * @param displayName the displayName value to set.
+     * @return the Column object itself.
+     */
+    public Column withDisplayName(String displayName) {
+        this.displayName = displayName;
+        return this;
+    }
+
+    /**
+     * Get the description property: Column description.
+     *
+     * @return the description value.
+     */
+    public String description() {
+        return this.description;
+    }
+
+    /**
+     * Set the description property: Column description.
+     *
+     * @param description the description value to set.
+     * @return the Column object itself.
+     */
+    public Column withDescription(String description) {
+        this.description = description;
+        return this;
+    }
+
+    /**
+     * Get the isDefaultDisplay property: Is displayed by default.
+     *
+     * @return the isDefaultDisplay value.
+     */
+    public Boolean isDefaultDisplay() {
+        return this.isDefaultDisplay;
+    }
+
+    /**
+     * Get the isHidden property: Is column hidden.
+     *
+     * @return the isHidden value.
+     */
+    public Boolean isHidden() {
+        return this.isHidden;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnDataTypeHintEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnDataTypeHintEnum.java
new file mode 100644
index 0000000000000..192e0a492547a
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnDataTypeHintEnum.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for ColumnDataTypeHintEnum. */
+public final class ColumnDataTypeHintEnum extends ExpandableStringEnum<ColumnDataTypeHintEnum> {
+    /** Static value uri for ColumnDataTypeHintEnum. */
+    public static final ColumnDataTypeHintEnum URI = fromString("uri");
+
+    /** Static value guid for ColumnDataTypeHintEnum. */
+    public static final ColumnDataTypeHintEnum GUID = fromString("guid");
+
+    /** Static value armPath for ColumnDataTypeHintEnum. */
+    public static final ColumnDataTypeHintEnum ARM_PATH = fromString("armPath");
+
+    /** Static value ip for ColumnDataTypeHintEnum. */
+    public static final ColumnDataTypeHintEnum IP = fromString("ip");
+
+    /**
+     * Creates or finds a ColumnDataTypeHintEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding ColumnDataTypeHintEnum.
+     */
+    @JsonCreator
+    public static ColumnDataTypeHintEnum fromString(String name) {
+        return fromString(name, ColumnDataTypeHintEnum.class);
+    }
+
+    /** @return known ColumnDataTypeHintEnum values. */
+    public static Collection<ColumnDataTypeHintEnum> values() {
+        return values(ColumnDataTypeHintEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnTypeEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnTypeEnum.java
new file mode 100644
index 0000000000000..4c06cf8dc8d51
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ColumnTypeEnum.java
@@ -0,0 +1,52 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for ColumnTypeEnum. */
+public final class ColumnTypeEnum extends ExpandableStringEnum<ColumnTypeEnum> {
+    /** Static value string for ColumnTypeEnum. */
+    public static final ColumnTypeEnum STRING = fromString("string");
+
+    /** Static value int for ColumnTypeEnum. */
+    public static final ColumnTypeEnum INT = fromString("int");
+
+    /** Static value long for ColumnTypeEnum. */
+    public static final ColumnTypeEnum LONG = fromString("long");
+
+    /** Static value real for ColumnTypeEnum. */
+    public static final ColumnTypeEnum REAL = fromString("real");
+
+    /** Static value boolean for ColumnTypeEnum. */
+    public static final ColumnTypeEnum BOOLEAN = fromString("boolean");
+
+    /** Static value dateTime for ColumnTypeEnum. */
+    public static final ColumnTypeEnum DATE_TIME = fromString("dateTime");
+
+    /** Static value guid for ColumnTypeEnum. */
+    public static final ColumnTypeEnum GUID = fromString("guid");
+
+    /** Static value dynamic for ColumnTypeEnum. */
+    public static final ColumnTypeEnum DYNAMIC = fromString("dynamic");
+
+    /**
+     * Creates or finds a ColumnTypeEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding ColumnTypeEnum.
+     */
+    @JsonCreator
+    public static ColumnTypeEnum fromString(String name) {
+        return fromString(name, ColumnTypeEnum.class);
+    }
+
+    /** @return known ColumnTypeEnum values. */
+    public static Collection<ColumnTypeEnum> values() {
+        return values(ColumnTypeEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CoreSummary.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CoreSummary.java
index c8fd34ef27a20..001d75a7f060f 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CoreSummary.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CoreSummary.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The core summary of a search. */
 @Fluent
 public final class CoreSummary {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(CoreSummary.class);
-
     /*
      * The status of a core summary.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CreatedByType.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CreatedByType.java
new file mode 100644
index 0000000000000..2e8612be35a7a
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/CreatedByType.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for CreatedByType. */
+public final class CreatedByType extends ExpandableStringEnum<CreatedByType> {
+    /** Static value User for CreatedByType. */
+    public static final CreatedByType USER = fromString("User");
+
+    /** Static value Application for CreatedByType. */
+    public static final CreatedByType APPLICATION = fromString("Application");
+
+    /** Static value ManagedIdentity for CreatedByType. */
+    public static final CreatedByType MANAGED_IDENTITY = fromString("ManagedIdentity");
+
+    /** Static value Key for CreatedByType. */
+    public static final CreatedByType KEY = fromString("Key");
+
+    /**
+     * Creates or finds a CreatedByType from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding CreatedByType.
+     */
+    @JsonCreator
+    public static CreatedByType fromString(String name) {
+        return fromString(name, CreatedByType.class);
+    }
+
+    /** @return known CreatedByType values. */
+    public static Collection<CreatedByType> values() {
+        return values(CreatedByType.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExport.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExport.java
index a45b17f9f3da8..545cac1cab94c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExport.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExport.java
@@ -75,11 +75,11 @@ public interface DataExport {
     String resourceId();
 
     /**
-     * Gets the typePropertiesDestinationType property: The type of the destination resource.
+     * Gets the typePropertiesType property: The type of the destination resource.
      *
-     * @return the typePropertiesDestinationType value.
+     * @return the typePropertiesType value.
      */
-    Type typePropertiesDestinationType();
+    Type typePropertiesType();
 
     /**
      * Gets the eventHubName property: Optional. Allows to define an Event Hub name. Not applicable when destination is
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExportListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExportListResult.java
index f13038ca5cd3e..ab729cb4ee843 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExportListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExportListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.DataExportInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Result of the request to list data exports. */
 @Fluent
 public final class DataExportListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataExportListResult.class);
-
     /*
      * List of data export instances within a workspace..
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExports.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExports.java
index f3053b608d352..215530f37fccf 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExports.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataExports.java
@@ -18,7 +18,7 @@ public interface DataExports {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     PagedIterable<DataExport> listByWorkspace(String resourceGroupName, String workspaceName);
 
@@ -31,7 +31,7 @@ public interface DataExports {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list data exports.
+     * @return result of the request to list data exports as paginated response with {@link PagedIterable}.
      */
     PagedIterable<DataExport> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
 
@@ -58,7 +58,7 @@ public interface DataExports {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response}.
      */
     Response<DataExport> getWithResponse(
         String resourceGroupName, String workspaceName, String dataExportName, Context context);
@@ -85,7 +85,7 @@ Response<DataExport> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, String dataExportName, Context context);
@@ -97,7 +97,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response}.
      */
     DataExport getById(String id);
 
@@ -109,7 +109,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a data export instance.
+     * @return a data export instance along with {@link Response}.
      */
     Response<DataExport> getByIdWithResponse(String id, Context context);
 
@@ -131,7 +131,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSourceListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSourceListResult.java
index af0f454a097c3..73fe89cf30cb9 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSourceListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSourceListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.DataSourceInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list data source by workspace operation response. */
 @Fluent
 public final class DataSourceListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(DataSourceListResult.class);
-
     /*
      * A list of datasources.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSources.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSources.java
index 0782abff02fb4..7e200819a67ab 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSources.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DataSources.java
@@ -32,7 +32,7 @@ public interface DataSources {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, String dataSourceName, Context context);
@@ -60,7 +60,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response}.
      */
     Response<DataSource> getWithResponse(
         String resourceGroupName, String workspaceName, String dataSourceName, Context context);
@@ -74,7 +74,8 @@ Response<DataSource> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     PagedIterable<DataSource> listByWorkspace(String resourceGroupName, String workspaceName, String filter);
 
@@ -89,7 +90,8 @@ Response<DataSource> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the first page of data source instances in a workspace with the link to the next page.
+     * @return the first page of data source instances in a workspace with the link to the next page as paginated
+     *     response with {@link PagedIterable}.
      */
     PagedIterable<DataSource> listByWorkspace(
         String resourceGroupName, String workspaceName, String filter, String skiptoken, Context context);
@@ -101,7 +103,7 @@ PagedIterable<DataSource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response}.
      */
     DataSource getById(String id);
 
@@ -113,7 +115,7 @@ PagedIterable<DataSource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a datasource instance.
+     * @return a datasource instance along with {@link Response}.
      */
     Response<DataSource> getByIdWithResponse(String id, Context context);
 
@@ -135,7 +137,7 @@ PagedIterable<DataSource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DeletedWorkspaces.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DeletedWorkspaces.java
index 7a7dff1680dc1..eab045a3a74ee 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DeletedWorkspaces.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/DeletedWorkspaces.java
@@ -14,7 +14,8 @@ public interface DeletedWorkspaces {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Workspace> list();
 
@@ -25,7 +26,8 @@ public interface DeletedWorkspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a subscription, available for recovery.
+     * @return recently deleted workspaces in a subscription, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Workspace> list(Context context);
 
@@ -36,7 +38,8 @@ public interface DeletedWorkspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Workspace> listByResourceGroup(String resourceGroupName);
 
@@ -48,7 +51,8 @@ public interface DeletedWorkspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return recently deleted workspaces in a resource group, available for recovery.
+     * @return recently deleted workspaces in a resource group, available for recovery as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Workspace> listByResourceGroup(String resourceGroupName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ErrorAdditionalInfo.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ErrorAdditionalInfo.java
deleted file mode 100644
index 697ee10baa222..0000000000000
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ErrorAdditionalInfo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.loganalytics.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** The resource management error additional info. */
-@Immutable
-public final class ErrorAdditionalInfo {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(ErrorAdditionalInfo.class);
-
-    /*
-     * The additional info type.
-     */
-    @JsonProperty(value = "type", access = JsonProperty.Access.WRITE_ONLY)
-    private String type;
-
-    /*
-     * The additional info.
-     */
-    @JsonProperty(value = "info", access = JsonProperty.Access.WRITE_ONLY)
-    private Object info;
-
-    /**
-     * Get the type property: The additional info type.
-     *
-     * @return the type value.
-     */
-    public String type() {
-        return this.type;
-    }
-
-    /**
-     * Get the info property: The additional info.
-     *
-     * @return the info value.
-     */
-    public Object info() {
-        return this.info;
-    }
-
-    /**
-     * Validates the instance.
-     *
-     * @throws IllegalArgumentException thrown if the instance is not valid.
-     */
-    public void validate() {
-    }
-}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Gateways.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Gateways.java
index 6a6b1bd67b191..5a19f747a4033 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Gateways.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Gateways.java
@@ -31,7 +31,7 @@ public interface Gateways {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, String gatewayId, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Identity.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Identity.java
index 2115f49ea7fa1..8a8e9ea0e05a9 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Identity.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Identity.java
@@ -6,14 +6,13 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
 
 /** Identity for the resource. */
 @Fluent
 public class Identity {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(Identity.class);
-
     /*
      * The principal ID of resource identity.
      */
@@ -27,11 +26,20 @@ public class Identity {
     private String tenantId;
 
     /*
-     * The identity type.
+     * Type of managed service identity.
      */
     @JsonProperty(value = "type", required = true)
     private IdentityType type;
 
+    /*
+     * The list of user identities associated with the resource. The user
+     * identity dictionary key references will be ARM resource ids in the form:
+     * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+     */
+    @JsonProperty(value = "userAssignedIdentities")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+    private Map<String, UserIdentityProperties> userAssignedIdentities;
+
     /**
      * Get the principalId property: The principal ID of resource identity.
      *
@@ -51,7 +59,7 @@ public String tenantId() {
     }
 
     /**
-     * Get the type property: The identity type.
+     * Get the type property: Type of managed service identity.
      *
      * @return the type value.
      */
@@ -60,7 +68,7 @@ public IdentityType type() {
     }
 
     /**
-     * Set the type property: The identity type.
+     * Set the type property: Type of managed service identity.
      *
      * @param type the type value to set.
      * @return the Identity object itself.
@@ -70,6 +78,30 @@ public Identity withType(IdentityType type) {
         return this;
     }
 
+    /**
+     * Get the userAssignedIdentities property: The list of user identities associated with the resource. The user
+     * identity dictionary key references will be ARM resource ids in the form:
+     * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+     *
+     * @return the userAssignedIdentities value.
+     */
+    public Map<String, UserIdentityProperties> userAssignedIdentities() {
+        return this.userAssignedIdentities;
+    }
+
+    /**
+     * Set the userAssignedIdentities property: The list of user identities associated with the resource. The user
+     * identity dictionary key references will be ARM resource ids in the form:
+     * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+     *
+     * @param userAssignedIdentities the userAssignedIdentities value to set.
+     * @return the Identity object itself.
+     */
+    public Identity withUserAssignedIdentities(Map<String, UserIdentityProperties> userAssignedIdentities) {
+        this.userAssignedIdentities = userAssignedIdentities;
+        return this;
+    }
+
     /**
      * Validates the instance.
      *
@@ -77,8 +109,20 @@ public Identity withType(IdentityType type) {
      */
     public void validate() {
         if (type() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(new IllegalArgumentException("Missing required property type in model Identity"));
         }
+        if (userAssignedIdentities() != null) {
+            userAssignedIdentities()
+                .values()
+                .forEach(
+                    e -> {
+                        if (e != null) {
+                            e.validate();
+                        }
+                    });
+        }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(Identity.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IdentityType.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IdentityType.java
index 457f03780ba35..c5975c96fb60b 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IdentityType.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IdentityType.java
@@ -4,44 +4,46 @@
 
 package com.azure.resourcemanager.loganalytics.models;
 
+import com.azure.core.util.ExpandableStringEnum;
 import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonValue;
+import java.util.Collection;
 
 /** Defines values for IdentityType. */
-public enum IdentityType {
-    /** Enum value SystemAssigned. */
-    SYSTEM_ASSIGNED("SystemAssigned"),
+public final class IdentityType extends ExpandableStringEnum<IdentityType> {
+    /** Static value user for IdentityType. */
+    public static final IdentityType USER = fromString("user");
 
-    /** Enum value None. */
-    NONE("None");
+    /** Static value application for IdentityType. */
+    public static final IdentityType APPLICATION = fromString("application");
 
-    /** The actual serialized value for a IdentityType instance. */
-    private final String value;
+    /** Static value managedIdentity for IdentityType. */
+    public static final IdentityType MANAGED_IDENTITY = fromString("managedIdentity");
 
-    IdentityType(String value) {
-        this.value = value;
-    }
+    /** Static value key for IdentityType. */
+    public static final IdentityType KEY = fromString("key");
+
+    /** Static value SystemAssigned for IdentityType. */
+    public static final IdentityType SYSTEM_ASSIGNED = fromString("SystemAssigned");
+
+    /** Static value UserAssigned for IdentityType. */
+    public static final IdentityType USER_ASSIGNED = fromString("UserAssigned");
+
+    /** Static value None for IdentityType. */
+    public static final IdentityType NONE = fromString("None");
 
     /**
-     * Parses a serialized value to a IdentityType instance.
+     * Creates or finds a IdentityType from its string representation.
      *
-     * @param value the serialized value to parse.
-     * @return the parsed IdentityType object, or null if unable to parse.
+     * @param name a name to look for.
+     * @return the corresponding IdentityType.
      */
     @JsonCreator
-    public static IdentityType fromString(String value) {
-        IdentityType[] items = IdentityType.values();
-        for (IdentityType item : items) {
-            if (item.toString().equalsIgnoreCase(value)) {
-                return item;
-            }
-        }
-        return null;
+    public static IdentityType fromString(String name) {
+        return fromString(name, IdentityType.class);
     }
 
-    @JsonValue
-    @Override
-    public String toString() {
-        return this.value;
+    /** @return known IdentityType values. */
+    public static Collection<IdentityType> values() {
+        return values(IdentityType.class);
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IntelligencePacks.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IntelligencePacks.java
index 61b4af9fec412..7c1d35499cfe3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IntelligencePacks.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/IntelligencePacks.java
@@ -32,7 +32,7 @@ public interface IntelligencePacks {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> disableWithResponse(
         String resourceGroupName, String workspaceName, String intelligencePackName, Context context);
@@ -59,7 +59,7 @@ Response<Void> disableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> enableWithResponse(
         String resourceGroupName, String workspaceName, String intelligencePackName, Context context);
@@ -85,7 +85,7 @@ Response<Void> enableWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return array of IntelligencePack.
+     * @return array of IntelligencePack along with {@link Response}.
      */
     Response<List<IntelligencePack>> listWithResponse(String resourceGroupName, String workspaceName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/KeyVaultProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/KeyVaultProperties.java
index ac2c6827af82d..8d7dbd7125c1c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/KeyVaultProperties.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/KeyVaultProperties.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The key vault properties. */
 @Fluent
 public final class KeyVaultProperties {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(KeyVaultProperties.class);
-
     /*
      * The Key Vault uri which holds they key associated with the Log Analytics
      * cluster.
@@ -33,6 +29,12 @@ public final class KeyVaultProperties {
     @JsonProperty(value = "keyVersion")
     private String keyVersion;
 
+    /*
+     * Selected key minimum required size.
+     */
+    @JsonProperty(value = "keyRsaSize")
+    private Integer keyRsaSize;
+
     /**
      * Get the keyVaultUri property: The Key Vault uri which holds they key associated with the Log Analytics cluster.
      *
@@ -93,6 +95,26 @@ public KeyVaultProperties withKeyVersion(String keyVersion) {
         return this;
     }
 
+    /**
+     * Get the keyRsaSize property: Selected key minimum required size.
+     *
+     * @return the keyRsaSize value.
+     */
+    public Integer keyRsaSize() {
+        return this.keyRsaSize;
+    }
+
+    /**
+     * Set the keyRsaSize property: Selected key minimum required size.
+     *
+     * @param keyRsaSize the keyRsaSize value to set.
+     * @return the KeyVaultProperties object itself.
+     */
+    public KeyVaultProperties withKeyRsaSize(Integer keyRsaSize) {
+        this.keyRsaSize = keyRsaSize;
+        return this;
+    }
+
     /**
      * Validates the instance.
      *
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServiceListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServiceListResult.java
index 73eda72cb0885..7cde6f654d905 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServiceListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServiceListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.LinkedServiceInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list linked service operation response. */
 @Fluent
 public final class LinkedServiceListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedServiceListResult.class);
-
     /*
      * The list of linked service instances
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServices.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServices.java
index 8de7198988eb1..d599d6c04e298 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServices.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedServices.java
@@ -60,7 +60,7 @@ public interface LinkedServices {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response}.
      */
     Response<LinkedService> getWithResponse(
         String resourceGroupName, String workspaceName, String linkedServiceName, Context context);
@@ -73,7 +73,7 @@ Response<LinkedService> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<LinkedService> listByWorkspace(String resourceGroupName, String workspaceName);
 
@@ -86,7 +86,7 @@ Response<LinkedService> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the linked services instances in a workspace.
+     * @return the linked services instances in a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<LinkedService> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
 
@@ -97,7 +97,7 @@ Response<LinkedService> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response}.
      */
     LinkedService getById(String id);
 
@@ -109,7 +109,7 @@ Response<LinkedService> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a linked service instance.
+     * @return a linked service instance along with {@link Response}.
      */
     Response<LinkedService> getByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccounts.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccounts.java
index 5ea9e3617d4fc..d5101e1c7203a 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccounts.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccounts.java
@@ -32,7 +32,7 @@ public interface LinkedStorageAccounts {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, DataSourceType dataSourceType, Context context);
@@ -60,7 +60,8 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response}.
      */
     Response<LinkedStorageAccountsResource> getWithResponse(
         String resourceGroupName, String workspaceName, DataSourceType dataSourceType, Context context);
@@ -75,7 +76,7 @@ Response<LinkedStorageAccountsResource> getWithResponse(
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     PagedIterable<LinkedStorageAccountsResource> listByWorkspace(String resourceGroupName, String workspaceName);
 
@@ -90,7 +91,7 @@ Response<LinkedStorageAccountsResource> getWithResponse(
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
      * @return all linked storage accounts associated with the specified workspace, storage accounts will be sorted by
-     *     their data source type.
+     *     their data source type as paginated response with {@link PagedIterable}.
      */
     PagedIterable<LinkedStorageAccountsResource> listByWorkspace(
         String resourceGroupName, String workspaceName, Context context);
@@ -102,7 +103,8 @@ PagedIterable<LinkedStorageAccountsResource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response}.
      */
     LinkedStorageAccountsResource getById(String id);
 
@@ -114,7 +116,8 @@ PagedIterable<LinkedStorageAccountsResource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all linked storage account of a specific data source type associated with the specified workspace.
+     * @return all linked storage account of a specific data source type associated with the specified workspace along
+     *     with {@link Response}.
      */
     Response<LinkedStorageAccountsResource> getByIdWithResponse(String id, Context context);
 
@@ -136,7 +139,7 @@ PagedIterable<LinkedStorageAccountsResource> listByWorkspace(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccountsListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccountsListResult.java
index e6e12b4ed0e0c..84703c8e91e7c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccountsListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LinkedStorageAccountsListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.LinkedStorageAccountsResourceInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list linked storage accounts service operation response. */
 @Fluent
 public final class LinkedStorageAccountsListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(LinkedStorageAccountsListResult.class);
-
     /*
      * A list of linked storage accounts instances.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPack.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPack.java
new file mode 100644
index 0000000000000..89213f2169804
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPack.java
@@ -0,0 +1,223 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.management.Region;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import java.time.OffsetDateTime;
+import java.util.Map;
+
+/** An immutable client-side representation of LogAnalyticsQueryPack. */
+public interface LogAnalyticsQueryPack {
+    /**
+     * Gets the id property: Fully qualified resource Id for the resource.
+     *
+     * @return the id value.
+     */
+    String id();
+
+    /**
+     * Gets the name property: The name of the resource.
+     *
+     * @return the name value.
+     */
+    String name();
+
+    /**
+     * Gets the type property: The type of the resource.
+     *
+     * @return the type value.
+     */
+    String type();
+
+    /**
+     * Gets the location property: The geo-location where the resource lives.
+     *
+     * @return the location value.
+     */
+    String location();
+
+    /**
+     * Gets the tags property: Resource tags.
+     *
+     * @return the tags value.
+     */
+    Map<String, String> tags();
+
+    /**
+     * Gets the queryPackId property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the queryPackId value.
+     */
+    String queryPackId();
+
+    /**
+     * Gets the timeCreated property: Creation Date for the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    OffsetDateTime timeCreated();
+
+    /**
+     * Gets the timeModified property: Last modified date of the Log Analytics QueryPack, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    OffsetDateTime timeModified();
+
+    /**
+     * Gets the provisioningState property: Current state of this QueryPack: whether or not is has been provisioned
+     * within the resource group it is defined. Users cannot change this value but are able to read from it. Values will
+     * include Succeeded, Deploying, Canceled, and Failed.
+     *
+     * @return the provisioningState value.
+     */
+    String provisioningState();
+
+    /**
+     * Gets the region of the resource.
+     *
+     * @return the region of the resource.
+     */
+    Region region();
+
+    /**
+     * Gets the name of the resource region.
+     *
+     * @return the name of the resource region.
+     */
+    String regionName();
+
+    /**
+     * Gets the inner com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner object.
+     *
+     * @return the inner object.
+     */
+    LogAnalyticsQueryPackInner innerModel();
+
+    /** The entirety of the LogAnalyticsQueryPack definition. */
+    interface Definition
+        extends DefinitionStages.Blank,
+            DefinitionStages.WithLocation,
+            DefinitionStages.WithResourceGroup,
+            DefinitionStages.WithCreate {
+    }
+    /** The LogAnalyticsQueryPack definition stages. */
+    interface DefinitionStages {
+        /** The first stage of the LogAnalyticsQueryPack definition. */
+        interface Blank extends WithLocation {
+        }
+        /** The stage of the LogAnalyticsQueryPack definition allowing to specify location. */
+        interface WithLocation {
+            /**
+             * Specifies the region for the resource.
+             *
+             * @param location The geo-location where the resource lives.
+             * @return the next definition stage.
+             */
+            WithResourceGroup withRegion(Region location);
+
+            /**
+             * Specifies the region for the resource.
+             *
+             * @param location The geo-location where the resource lives.
+             * @return the next definition stage.
+             */
+            WithResourceGroup withRegion(String location);
+        }
+        /** The stage of the LogAnalyticsQueryPack definition allowing to specify parent resource. */
+        interface WithResourceGroup {
+            /**
+             * Specifies resourceGroupName.
+             *
+             * @param resourceGroupName The name of the resource group. The name is case insensitive.
+             * @return the next definition stage.
+             */
+            WithCreate withExistingResourceGroup(String resourceGroupName);
+        }
+        /**
+         * The stage of the LogAnalyticsQueryPack definition which contains all the minimum required properties for the
+         * resource to be created, but also allows for any other optional properties to be specified.
+         */
+        interface WithCreate extends DefinitionStages.WithTags {
+            /**
+             * Executes the create request.
+             *
+             * @return the created resource.
+             */
+            LogAnalyticsQueryPack create();
+
+            /**
+             * Executes the create request.
+             *
+             * @param context The context to associate with this operation.
+             * @return the created resource.
+             */
+            LogAnalyticsQueryPack create(Context context);
+        }
+        /** The stage of the LogAnalyticsQueryPack definition allowing to specify tags. */
+        interface WithTags {
+            /**
+             * Specifies the tags property: Resource tags..
+             *
+             * @param tags Resource tags.
+             * @return the next definition stage.
+             */
+            WithCreate withTags(Map<String, String> tags);
+        }
+    }
+    /**
+     * Begins update for the LogAnalyticsQueryPack resource.
+     *
+     * @return the stage of resource update.
+     */
+    LogAnalyticsQueryPack.Update update();
+
+    /** The template for LogAnalyticsQueryPack update. */
+    interface Update extends UpdateStages.WithTags {
+        /**
+         * Executes the update request.
+         *
+         * @return the updated resource.
+         */
+        LogAnalyticsQueryPack apply();
+
+        /**
+         * Executes the update request.
+         *
+         * @param context The context to associate with this operation.
+         * @return the updated resource.
+         */
+        LogAnalyticsQueryPack apply(Context context);
+    }
+    /** The LogAnalyticsQueryPack update stages. */
+    interface UpdateStages {
+        /** The stage of the LogAnalyticsQueryPack update allowing to specify tags. */
+        interface WithTags {
+            /**
+             * Specifies the tags property: Resource tags.
+             *
+             * @param tags Resource tags.
+             * @return the next definition stage.
+             */
+            Update withTags(Map<String, String> tags);
+        }
+    }
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @return the refreshed resource.
+     */
+    LogAnalyticsQueryPack refresh();
+
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @param context The context to associate with this operation.
+     * @return the refreshed resource.
+     */
+    LogAnalyticsQueryPack refresh(Context context);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackListResult.java
new file mode 100644
index 0000000000000..d009b2750490c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackListResult.java
@@ -0,0 +1,88 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackInner;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Describes the list of Log Analytics QueryPack resources. */
+@Fluent
+public final class LogAnalyticsQueryPackListResult {
+    /*
+     * List of Log Analytics QueryPack definitions.
+     */
+    @JsonProperty(value = "value", required = true)
+    private List<LogAnalyticsQueryPackInner> value;
+
+    /*
+     * The URI to get the next set of Log Analytics QueryPack definitions if
+     * too many QueryPacks where returned in the result set.
+     */
+    @JsonProperty(value = "nextLink")
+    private String nextLink;
+
+    /**
+     * Get the value property: List of Log Analytics QueryPack definitions.
+     *
+     * @return the value value.
+     */
+    public List<LogAnalyticsQueryPackInner> value() {
+        return this.value;
+    }
+
+    /**
+     * Set the value property: List of Log Analytics QueryPack definitions.
+     *
+     * @param value the value value to set.
+     * @return the LogAnalyticsQueryPackListResult object itself.
+     */
+    public LogAnalyticsQueryPackListResult withValue(List<LogAnalyticsQueryPackInner> value) {
+        this.value = value;
+        return this;
+    }
+
+    /**
+     * Get the nextLink property: The URI to get the next set of Log Analytics QueryPack definitions if too many
+     * QueryPacks where returned in the result set.
+     *
+     * @return the nextLink value.
+     */
+    public String nextLink() {
+        return this.nextLink;
+    }
+
+    /**
+     * Set the nextLink property: The URI to get the next set of Log Analytics QueryPack definitions if too many
+     * QueryPacks where returned in the result set.
+     *
+     * @param nextLink the nextLink value to set.
+     * @return the LogAnalyticsQueryPackListResult object itself.
+     */
+    public LogAnalyticsQueryPackListResult withNextLink(String nextLink) {
+        this.nextLink = nextLink;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (value() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property value in model LogAnalyticsQueryPackListResult"));
+        } else {
+            value().forEach(e -> e.validate());
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LogAnalyticsQueryPackListResult.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuery.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuery.java
new file mode 100644
index 0000000000000..6ca5b97c8069c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuery.java
@@ -0,0 +1,335 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.management.SystemData;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/** An immutable client-side representation of LogAnalyticsQueryPackQuery. */
+public interface LogAnalyticsQueryPackQuery {
+    /**
+     * Gets the id property: Azure resource Id.
+     *
+     * @return the id value.
+     */
+    String id();
+
+    /**
+     * Gets the name property: Azure resource name.
+     *
+     * @return the name value.
+     */
+    String name();
+
+    /**
+     * Gets the type property: Azure resource type.
+     *
+     * @return the type value.
+     */
+    String type();
+
+    /**
+     * Gets the systemData property: Read only system data.
+     *
+     * @return the systemData value.
+     */
+    SystemData systemData();
+
+    /**
+     * Gets the idPropertiesId property: The unique ID of your application. This field cannot be changed.
+     *
+     * @return the idPropertiesId value.
+     */
+    String idPropertiesId();
+
+    /**
+     * Gets the displayName property: Unique display name for your query within the Query Pack.
+     *
+     * @return the displayName value.
+     */
+    String displayName();
+
+    /**
+     * Gets the timeCreated property: Creation Date for the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeCreated value.
+     */
+    OffsetDateTime timeCreated();
+
+    /**
+     * Gets the timeModified property: Last modified date of the Log Analytics Query, in ISO 8601 format.
+     *
+     * @return the timeModified value.
+     */
+    OffsetDateTime timeModified();
+
+    /**
+     * Gets the author property: Object Id of user creating the query.
+     *
+     * @return the author value.
+     */
+    String author();
+
+    /**
+     * Gets the description property: Description of the query.
+     *
+     * @return the description value.
+     */
+    String description();
+
+    /**
+     * Gets the body property: Body of the query.
+     *
+     * @return the body value.
+     */
+    String body();
+
+    /**
+     * Gets the related property: The related metadata items for the function.
+     *
+     * @return the related value.
+     */
+    LogAnalyticsQueryPackQueryPropertiesRelated related();
+
+    /**
+     * Gets the tags property: Tags associated with the query.
+     *
+     * @return the tags value.
+     */
+    Map<String, List<String>> tags();
+
+    /**
+     * Gets the properties property: Additional properties that can be set for the query.
+     *
+     * @return the properties value.
+     */
+    Object properties();
+
+    /**
+     * Gets the inner com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner object.
+     *
+     * @return the inner object.
+     */
+    LogAnalyticsQueryPackQueryInner innerModel();
+
+    /** The entirety of the LogAnalyticsQueryPackQuery definition. */
+    interface Definition
+        extends DefinitionStages.Blank, DefinitionStages.WithParentResource, DefinitionStages.WithCreate {
+    }
+    /** The LogAnalyticsQueryPackQuery definition stages. */
+    interface DefinitionStages {
+        /** The first stage of the LogAnalyticsQueryPackQuery definition. */
+        interface Blank extends WithParentResource {
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify parent resource. */
+        interface WithParentResource {
+            /**
+             * Specifies resourceGroupName, queryPackName.
+             *
+             * @param resourceGroupName The name of the resource group. The name is case insensitive.
+             * @param queryPackName The name of the Log Analytics QueryPack resource.
+             * @return the next definition stage.
+             */
+            WithCreate withExistingQueryPack(String resourceGroupName, String queryPackName);
+        }
+        /**
+         * The stage of the LogAnalyticsQueryPackQuery definition which contains all the minimum required properties for
+         * the resource to be created, but also allows for any other optional properties to be specified.
+         */
+        interface WithCreate
+            extends DefinitionStages.WithTags,
+                DefinitionStages.WithDisplayName,
+                DefinitionStages.WithDescription,
+                DefinitionStages.WithBody,
+                DefinitionStages.WithRelated,
+                DefinitionStages.WithProperties {
+            /**
+             * Executes the create request.
+             *
+             * @return the created resource.
+             */
+            LogAnalyticsQueryPackQuery create();
+
+            /**
+             * Executes the create request.
+             *
+             * @param context The context to associate with this operation.
+             * @return the created resource.
+             */
+            LogAnalyticsQueryPackQuery create(Context context);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify tags. */
+        interface WithTags {
+            /**
+             * Specifies the tags property: Tags associated with the query..
+             *
+             * @param tags Tags associated with the query.
+             * @return the next definition stage.
+             */
+            WithCreate withTags(Map<String, List<String>> tags);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify displayName. */
+        interface WithDisplayName {
+            /**
+             * Specifies the displayName property: Unique display name for your query within the Query Pack..
+             *
+             * @param displayName Unique display name for your query within the Query Pack.
+             * @return the next definition stage.
+             */
+            WithCreate withDisplayName(String displayName);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify description. */
+        interface WithDescription {
+            /**
+             * Specifies the description property: Description of the query..
+             *
+             * @param description Description of the query.
+             * @return the next definition stage.
+             */
+            WithCreate withDescription(String description);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify body. */
+        interface WithBody {
+            /**
+             * Specifies the body property: Body of the query..
+             *
+             * @param body Body of the query.
+             * @return the next definition stage.
+             */
+            WithCreate withBody(String body);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify related. */
+        interface WithRelated {
+            /**
+             * Specifies the related property: The related metadata items for the function..
+             *
+             * @param related The related metadata items for the function.
+             * @return the next definition stage.
+             */
+            WithCreate withRelated(LogAnalyticsQueryPackQueryPropertiesRelated related);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery definition allowing to specify properties. */
+        interface WithProperties {
+            /**
+             * Specifies the properties property: Additional properties that can be set for the query..
+             *
+             * @param properties Additional properties that can be set for the query.
+             * @return the next definition stage.
+             */
+            WithCreate withProperties(Object properties);
+        }
+    }
+    /**
+     * Begins update for the LogAnalyticsQueryPackQuery resource.
+     *
+     * @return the stage of resource update.
+     */
+    LogAnalyticsQueryPackQuery.Update update();
+
+    /** The template for LogAnalyticsQueryPackQuery update. */
+    interface Update
+        extends UpdateStages.WithTags,
+            UpdateStages.WithDisplayName,
+            UpdateStages.WithDescription,
+            UpdateStages.WithBody,
+            UpdateStages.WithRelated,
+            UpdateStages.WithProperties {
+        /**
+         * Executes the update request.
+         *
+         * @return the updated resource.
+         */
+        LogAnalyticsQueryPackQuery apply();
+
+        /**
+         * Executes the update request.
+         *
+         * @param context The context to associate with this operation.
+         * @return the updated resource.
+         */
+        LogAnalyticsQueryPackQuery apply(Context context);
+    }
+    /** The LogAnalyticsQueryPackQuery update stages. */
+    interface UpdateStages {
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify tags. */
+        interface WithTags {
+            /**
+             * Specifies the tags property: Tags associated with the query..
+             *
+             * @param tags Tags associated with the query.
+             * @return the next definition stage.
+             */
+            Update withTags(Map<String, List<String>> tags);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify displayName. */
+        interface WithDisplayName {
+            /**
+             * Specifies the displayName property: Unique display name for your query within the Query Pack..
+             *
+             * @param displayName Unique display name for your query within the Query Pack.
+             * @return the next definition stage.
+             */
+            Update withDisplayName(String displayName);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify description. */
+        interface WithDescription {
+            /**
+             * Specifies the description property: Description of the query..
+             *
+             * @param description Description of the query.
+             * @return the next definition stage.
+             */
+            Update withDescription(String description);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify body. */
+        interface WithBody {
+            /**
+             * Specifies the body property: Body of the query..
+             *
+             * @param body Body of the query.
+             * @return the next definition stage.
+             */
+            Update withBody(String body);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify related. */
+        interface WithRelated {
+            /**
+             * Specifies the related property: The related metadata items for the function..
+             *
+             * @param related The related metadata items for the function.
+             * @return the next definition stage.
+             */
+            Update withRelated(LogAnalyticsQueryPackQueryPropertiesRelated related);
+        }
+        /** The stage of the LogAnalyticsQueryPackQuery update allowing to specify properties. */
+        interface WithProperties {
+            /**
+             * Specifies the properties property: Additional properties that can be set for the query..
+             *
+             * @param properties Additional properties that can be set for the query.
+             * @return the next definition stage.
+             */
+            Update withProperties(Object properties);
+        }
+    }
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @return the refreshed resource.
+     */
+    LogAnalyticsQueryPackQuery refresh();
+
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @param context The context to associate with this operation.
+     * @return the refreshed resource.
+     */
+    LogAnalyticsQueryPackQuery refresh(Context context);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryListResult.java
new file mode 100644
index 0000000000000..6f98cc389828c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryListResult.java
@@ -0,0 +1,88 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.loganalytics.fluent.models.LogAnalyticsQueryPackQueryInner;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Describes the list of Log Analytics QueryPack-Query resources. */
+@Fluent
+public final class LogAnalyticsQueryPackQueryListResult {
+    /*
+     * List of Log Analytics QueryPack Query definitions.
+     */
+    @JsonProperty(value = "value", required = true)
+    private List<LogAnalyticsQueryPackQueryInner> value;
+
+    /*
+     * The URI to get the next set of Log Analytics QueryPack definitions if
+     * too many QueryPack-Queries where returned in the result set.
+     */
+    @JsonProperty(value = "nextLink")
+    private String nextLink;
+
+    /**
+     * Get the value property: List of Log Analytics QueryPack Query definitions.
+     *
+     * @return the value value.
+     */
+    public List<LogAnalyticsQueryPackQueryInner> value() {
+        return this.value;
+    }
+
+    /**
+     * Set the value property: List of Log Analytics QueryPack Query definitions.
+     *
+     * @param value the value value to set.
+     * @return the LogAnalyticsQueryPackQueryListResult object itself.
+     */
+    public LogAnalyticsQueryPackQueryListResult withValue(List<LogAnalyticsQueryPackQueryInner> value) {
+        this.value = value;
+        return this;
+    }
+
+    /**
+     * Get the nextLink property: The URI to get the next set of Log Analytics QueryPack definitions if too many
+     * QueryPack-Queries where returned in the result set.
+     *
+     * @return the nextLink value.
+     */
+    public String nextLink() {
+        return this.nextLink;
+    }
+
+    /**
+     * Set the nextLink property: The URI to get the next set of Log Analytics QueryPack definitions if too many
+     * QueryPack-Queries where returned in the result set.
+     *
+     * @param nextLink the nextLink value to set.
+     * @return the LogAnalyticsQueryPackQueryListResult object itself.
+     */
+    public LogAnalyticsQueryPackQueryListResult withNextLink(String nextLink) {
+        this.nextLink = nextLink;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (value() == null) {
+            throw LOGGER
+                .logExceptionAsError(
+                    new IllegalArgumentException(
+                        "Missing required property value in model LogAnalyticsQueryPackQueryListResult"));
+        } else {
+            value().forEach(e -> e.validate());
+        }
+    }
+
+    private static final ClientLogger LOGGER = new ClientLogger(LogAnalyticsQueryPackQueryListResult.class);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryPropertiesRelated.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryPropertiesRelated.java
new file mode 100644
index 0000000000000..378b3ab262661
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQueryPropertiesRelated.java
@@ -0,0 +1,99 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The related metadata items for the function. */
+@Fluent
+public final class LogAnalyticsQueryPackQueryPropertiesRelated {
+    /*
+     * The related categories for the function.
+     */
+    @JsonProperty(value = "categories")
+    private List<String> categories;
+
+    /*
+     * The related resource types for the function.
+     */
+    @JsonProperty(value = "resourceTypes")
+    private List<String> resourceTypes;
+
+    /*
+     * The related Log Analytics solutions for the function.
+     */
+    @JsonProperty(value = "solutions")
+    private List<String> solutions;
+
+    /**
+     * Get the categories property: The related categories for the function.
+     *
+     * @return the categories value.
+     */
+    public List<String> categories() {
+        return this.categories;
+    }
+
+    /**
+     * Set the categories property: The related categories for the function.
+     *
+     * @param categories the categories value to set.
+     * @return the LogAnalyticsQueryPackQueryPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQueryPropertiesRelated withCategories(List<String> categories) {
+        this.categories = categories;
+        return this;
+    }
+
+    /**
+     * Get the resourceTypes property: The related resource types for the function.
+     *
+     * @return the resourceTypes value.
+     */
+    public List<String> resourceTypes() {
+        return this.resourceTypes;
+    }
+
+    /**
+     * Set the resourceTypes property: The related resource types for the function.
+     *
+     * @param resourceTypes the resourceTypes value to set.
+     * @return the LogAnalyticsQueryPackQueryPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQueryPropertiesRelated withResourceTypes(List<String> resourceTypes) {
+        this.resourceTypes = resourceTypes;
+        return this;
+    }
+
+    /**
+     * Get the solutions property: The related Log Analytics solutions for the function.
+     *
+     * @return the solutions value.
+     */
+    public List<String> solutions() {
+        return this.solutions;
+    }
+
+    /**
+     * Set the solutions property: The related Log Analytics solutions for the function.
+     *
+     * @param solutions the solutions value to set.
+     * @return the LogAnalyticsQueryPackQueryPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQueryPropertiesRelated withSolutions(List<String> solutions) {
+        this.solutions = solutions;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchProperties.java
new file mode 100644
index 0000000000000..9168e2b056cff
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchProperties.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** Properties that define an Log Analytics QueryPack-Query search properties. */
+@Fluent
+public final class LogAnalyticsQueryPackQuerySearchProperties {
+    /*
+     * The related metadata items for the function.
+     */
+    @JsonProperty(value = "related")
+    private LogAnalyticsQueryPackQuerySearchPropertiesRelated related;
+
+    /*
+     * Tags associated with the query.
+     */
+    @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+    private Map<String, List<String>> tags;
+
+    /**
+     * Get the related property: The related metadata items for the function.
+     *
+     * @return the related value.
+     */
+    public LogAnalyticsQueryPackQuerySearchPropertiesRelated related() {
+        return this.related;
+    }
+
+    /**
+     * Set the related property: The related metadata items for the function.
+     *
+     * @param related the related value to set.
+     * @return the LogAnalyticsQueryPackQuerySearchProperties object itself.
+     */
+    public LogAnalyticsQueryPackQuerySearchProperties withRelated(
+        LogAnalyticsQueryPackQuerySearchPropertiesRelated related) {
+        this.related = related;
+        return this;
+    }
+
+    /**
+     * Get the tags property: Tags associated with the query.
+     *
+     * @return the tags value.
+     */
+    public Map<String, List<String>> tags() {
+        return this.tags;
+    }
+
+    /**
+     * Set the tags property: Tags associated with the query.
+     *
+     * @param tags the tags value to set.
+     * @return the LogAnalyticsQueryPackQuerySearchProperties object itself.
+     */
+    public LogAnalyticsQueryPackQuerySearchProperties withTags(Map<String, List<String>> tags) {
+        this.tags = tags;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (related() != null) {
+            related().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchPropertiesRelated.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchPropertiesRelated.java
new file mode 100644
index 0000000000000..8c1de59b9733f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/LogAnalyticsQueryPackQuerySearchPropertiesRelated.java
@@ -0,0 +1,99 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** The related metadata items for the function. */
+@Fluent
+public final class LogAnalyticsQueryPackQuerySearchPropertiesRelated {
+    /*
+     * The related categories for the function.
+     */
+    @JsonProperty(value = "categories")
+    private List<String> categories;
+
+    /*
+     * The related resource types for the function.
+     */
+    @JsonProperty(value = "resourceTypes")
+    private List<String> resourceTypes;
+
+    /*
+     * The related Log Analytics solutions for the function.
+     */
+    @JsonProperty(value = "solutions")
+    private List<String> solutions;
+
+    /**
+     * Get the categories property: The related categories for the function.
+     *
+     * @return the categories value.
+     */
+    public List<String> categories() {
+        return this.categories;
+    }
+
+    /**
+     * Set the categories property: The related categories for the function.
+     *
+     * @param categories the categories value to set.
+     * @return the LogAnalyticsQueryPackQuerySearchPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQuerySearchPropertiesRelated withCategories(List<String> categories) {
+        this.categories = categories;
+        return this;
+    }
+
+    /**
+     * Get the resourceTypes property: The related resource types for the function.
+     *
+     * @return the resourceTypes value.
+     */
+    public List<String> resourceTypes() {
+        return this.resourceTypes;
+    }
+
+    /**
+     * Set the resourceTypes property: The related resource types for the function.
+     *
+     * @param resourceTypes the resourceTypes value to set.
+     * @return the LogAnalyticsQueryPackQuerySearchPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQuerySearchPropertiesRelated withResourceTypes(List<String> resourceTypes) {
+        this.resourceTypes = resourceTypes;
+        return this;
+    }
+
+    /**
+     * Get the solutions property: The related Log Analytics solutions for the function.
+     *
+     * @return the solutions value.
+     */
+    public List<String> solutions() {
+        return this.solutions;
+    }
+
+    /**
+     * Set the solutions property: The related Log Analytics solutions for the function.
+     *
+     * @param solutions the solutions value to set.
+     * @return the LogAnalyticsQueryPackQuerySearchPropertiesRelated object itself.
+     */
+    public LogAnalyticsQueryPackQuerySearchPropertiesRelated withSolutions(List<String> solutions) {
+        this.solutions = solutions;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ManagementGroups.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ManagementGroups.java
index 615d4d1f8cda2..5ddbacd55be6c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ManagementGroups.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ManagementGroups.java
@@ -17,7 +17,7 @@ public interface ManagementGroups {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<ManagementGroup> list(String resourceGroupName, String workspaceName);
 
@@ -30,7 +30,7 @@ public interface ManagementGroups {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of management groups connected to a workspace.
+     * @return a list of management groups connected to a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<ManagementGroup> list(String resourceGroupName, String workspaceName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/MetricName.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/MetricName.java
index 6fef09c845bf8..a5e505e9aa2cc 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/MetricName.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/MetricName.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The name of a metric. */
 @Fluent
 public final class MetricName {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(MetricName.class);
-
     /*
      * The system name of the metric.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationDisplay.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationDisplay.java
index 4fa288f62b892..193549916b6ae 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationDisplay.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationDisplay.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Display metadata associated with the operation. */
 @Fluent
 public final class OperationDisplay {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationDisplay.class);
-
     /*
      * Service provider: Microsoft OperationsManagement.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationListResult.java
index ae992bf0e0cf6..1c1f5030e8be3 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.OperationInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Result of the request to list solution operations. */
 @Fluent
 public final class OperationListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationListResult.class);
-
     /*
      * List of solution operations supported by the OperationsManagement
      * resource provider.
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatus.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatus.java
index 1d13df86d3f51..b432cda28adaa 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatus.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatus.java
@@ -45,7 +45,7 @@ public interface OperationStatus {
     String status();
 
     /**
-     * Gets the error property: The error detail of the operation if any.
+     * Gets the error property: Error response The error detail of the operation if any.
      *
      * @return the error value.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatuses.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatuses.java
index 6df3a591f1834..6b5af0e5b8fff 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatuses.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/OperationStatuses.java
@@ -30,7 +30,7 @@ public interface OperationStatuses {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the status of a long running azure asynchronous operation.
+     * @return the status of a long running azure asynchronous operation along with {@link Response}.
      */
     Response<OperationStatus> getWithResponse(String location, String asyncOperationId, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Operations.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Operations.java
index 14912b653fe2d..95add99dfb6b7 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Operations.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Operations.java
@@ -14,7 +14,7 @@ public interface Operations {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Operation> list();
 
@@ -25,7 +25,7 @@ public interface Operations {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return result of the request to list solution operations.
+     * @return result of the request to list solution operations as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Operation> list(Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/PrivateLinkScopedResource.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/PrivateLinkScopedResource.java
index 083fc84e8e993..5cb3ad1f83009 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/PrivateLinkScopedResource.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/PrivateLinkScopedResource.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The private link scope resource reference. */
 @Fluent
 public final class PrivateLinkScopedResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(PrivateLinkScopedResource.class);
-
     /*
      * The full resource Id of the private link scope resource.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ProvisioningStateEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ProvisioningStateEnum.java
new file mode 100644
index 0000000000000..aadb593aa67e1
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ProvisioningStateEnum.java
@@ -0,0 +1,37 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for ProvisioningStateEnum. */
+public final class ProvisioningStateEnum extends ExpandableStringEnum<ProvisioningStateEnum> {
+    /** Static value Updating for ProvisioningStateEnum. */
+    public static final ProvisioningStateEnum UPDATING = fromString("Updating");
+
+    /** Static value InProgress for ProvisioningStateEnum. */
+    public static final ProvisioningStateEnum IN_PROGRESS = fromString("InProgress");
+
+    /** Static value Succeeded for ProvisioningStateEnum. */
+    public static final ProvisioningStateEnum SUCCEEDED = fromString("Succeeded");
+
+    /**
+     * Creates or finds a ProvisioningStateEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding ProvisioningStateEnum.
+     */
+    @JsonCreator
+    public static ProvisioningStateEnum fromString(String name) {
+        return fromString(name, ProvisioningStateEnum.class);
+    }
+
+    /** @return known ProvisioningStateEnum values. */
+    public static Collection<ProvisioningStateEnum> values() {
+        return values(ProvisioningStateEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Queries.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Queries.java
new file mode 100644
index 0000000000000..e0fb8e10620fd
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Queries.java
@@ -0,0 +1,199 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+
+/** Resource collection API of Queries. */
+public interface Queries {
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPackQuery> list(String resourceGroupName, String queryPackName);
+
+    /**
+     * Gets a list of Queries defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Queries defined within a Log Analytics QueryPack as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPackQuery> list(
+        String resourceGroupName,
+        String queryPackName,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context);
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPackQuery> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties);
+
+    /**
+     * Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param querySearchProperties Properties by which to search queries in the given Log Analytics QueryPack.
+     * @param top Maximum items returned in page.
+     * @param includeBody Flag indicating whether or not to return the body of each applicable query. If false, only
+     *     return the query information.
+     * @param skipToken Base64 encoded token used to fetch the next page of items. Default is null.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return describes the list of Log Analytics QueryPack-Query resources as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPackQuery> search(
+        String resourceGroupName,
+        String queryPackName,
+        LogAnalyticsQueryPackQuerySearchProperties querySearchProperties,
+        Long top,
+        Boolean includeBody,
+        String skipToken,
+        Context context);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     */
+    LogAnalyticsQueryPackQuery get(String resourceGroupName, String queryPackName, String id);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response}.
+     */
+    Response<LogAnalyticsQueryPackQuery> getWithResponse(
+        String resourceGroupName, String queryPackName, String id, Context context);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void delete(String resourceGroupName, String queryPackName, String id);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param id The id of a specific query defined in the Log Analytics QueryPack.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, String id, Context context);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response}.
+     */
+    LogAnalyticsQueryPackQuery getById(String id);
+
+    /**
+     * Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a specific Log Analytics Query defined within a Log Analytics QueryPack along with {@link Response}.
+     */
+    Response<LogAnalyticsQueryPackQuery> getByIdWithResponse(String id, Context context);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void deleteById(String id);
+
+    /**
+     * Deletes a specific Query defined within an Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> deleteByIdWithResponse(String id, Context context);
+
+    /**
+     * Begins definition for a new LogAnalyticsQueryPackQuery resource.
+     *
+     * @param name resource name.
+     * @return the first stage of the new LogAnalyticsQueryPackQuery definition.
+     */
+    LogAnalyticsQueryPackQuery.DefinitionStages.Blank define(String name);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacks.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacks.java
new file mode 100644
index 0000000000000..e7ea0ed6151f8
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacks.java
@@ -0,0 +1,162 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+
+/** Resource collection API of QueryPacks. */
+public interface QueryPacks {
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPack> list();
+
+    /**
+     * Gets a list of all Log Analytics QueryPacks within a subscription.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of all Log Analytics QueryPacks within a subscription as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPack> list(Context context);
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPack> listByResourceGroup(String resourceGroupName);
+
+    /**
+     * Gets a list of Log Analytics QueryPacks within a resource group.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a list of Log Analytics QueryPacks within a resource group as paginated response with {@link
+     *     PagedIterable}.
+     */
+    PagedIterable<LogAnalyticsQueryPack> listByResourceGroup(String resourceGroupName, Context context);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void deleteByResourceGroup(String resourceGroupName, String queryPackName);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> deleteWithResponse(String resourceGroupName, String queryPackName, Context context);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition.
+     */
+    LogAnalyticsQueryPack getByResourceGroup(String resourceGroupName, String queryPackName);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param queryPackName The name of the Log Analytics QueryPack resource.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    Response<LogAnalyticsQueryPack> getByResourceGroupWithResponse(
+        String resourceGroupName, String queryPackName, Context context);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    LogAnalyticsQueryPack getById(String id);
+
+    /**
+     * Returns a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return an Log Analytics QueryPack definition along with {@link Response}.
+     */
+    Response<LogAnalyticsQueryPack> getByIdWithResponse(String id, Context context);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void deleteById(String id);
+
+    /**
+     * Deletes a Log Analytics QueryPack.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> deleteByIdWithResponse(String id, Context context);
+
+    /**
+     * Begins definition for a new LogAnalyticsQueryPack resource.
+     *
+     * @param name resource name.
+     * @return the first stage of the new LogAnalyticsQueryPack definition.
+     */
+    LogAnalyticsQueryPack.DefinitionStages.Blank define(String name);
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacksResource.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacksResource.java
new file mode 100644
index 0000000000000..f3e9adcd04030
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/QueryPacksResource.java
@@ -0,0 +1,35 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import java.util.Map;
+
+/** An azure resource object. */
+@Fluent
+public class QueryPacksResource extends Resource {
+    /** {@inheritDoc} */
+    @Override
+    public QueryPacksResource withLocation(String location) {
+        super.withLocation(location);
+        return this;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public QueryPacksResource withTags(Map<String, String> tags) {
+        super.withTags(tags);
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/RestoredLogs.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/RestoredLogs.java
new file mode 100644
index 0000000000000..c1ee33404adfd
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/RestoredLogs.java
@@ -0,0 +1,99 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Restore parameters. */
+@Fluent
+public final class RestoredLogs {
+    /*
+     * The timestamp to start the restore from (UTC).
+     */
+    @JsonProperty(value = "startRestoreTime")
+    private OffsetDateTime startRestoreTime;
+
+    /*
+     * The timestamp to end the restore by (UTC).
+     */
+    @JsonProperty(value = "endRestoreTime")
+    private OffsetDateTime endRestoreTime;
+
+    /*
+     * The table to restore data from.
+     */
+    @JsonProperty(value = "sourceTable")
+    private String sourceTable;
+
+    /**
+     * Get the startRestoreTime property: The timestamp to start the restore from (UTC).
+     *
+     * @return the startRestoreTime value.
+     */
+    public OffsetDateTime startRestoreTime() {
+        return this.startRestoreTime;
+    }
+
+    /**
+     * Set the startRestoreTime property: The timestamp to start the restore from (UTC).
+     *
+     * @param startRestoreTime the startRestoreTime value to set.
+     * @return the RestoredLogs object itself.
+     */
+    public RestoredLogs withStartRestoreTime(OffsetDateTime startRestoreTime) {
+        this.startRestoreTime = startRestoreTime;
+        return this;
+    }
+
+    /**
+     * Get the endRestoreTime property: The timestamp to end the restore by (UTC).
+     *
+     * @return the endRestoreTime value.
+     */
+    public OffsetDateTime endRestoreTime() {
+        return this.endRestoreTime;
+    }
+
+    /**
+     * Set the endRestoreTime property: The timestamp to end the restore by (UTC).
+     *
+     * @param endRestoreTime the endRestoreTime value to set.
+     * @return the RestoredLogs object itself.
+     */
+    public RestoredLogs withEndRestoreTime(OffsetDateTime endRestoreTime) {
+        this.endRestoreTime = endRestoreTime;
+        return this;
+    }
+
+    /**
+     * Get the sourceTable property: The table to restore data from.
+     *
+     * @return the sourceTable value.
+     */
+    public String sourceTable() {
+        return this.sourceTable;
+    }
+
+    /**
+     * Set the sourceTable property: The table to restore data from.
+     *
+     * @param sourceTable the sourceTable value to set.
+     * @return the RestoredLogs object itself.
+     */
+    public RestoredLogs withSourceTable(String sourceTable) {
+        this.sourceTable = sourceTable;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ResultStatistics.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ResultStatistics.java
new file mode 100644
index 0000000000000..bfd37647d8872
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/ResultStatistics.java
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Search job execution statistics. */
+@Immutable
+public final class ResultStatistics {
+    /*
+     * Search job completion percentage.
+     */
+    @JsonProperty(value = "progress", access = JsonProperty.Access.WRITE_ONLY)
+    private Float progress;
+
+    /*
+     * The number of rows that were returned by the search job.
+     */
+    @JsonProperty(value = "ingestedRecords", access = JsonProperty.Access.WRITE_ONLY)
+    private Integer ingestedRecords;
+
+    /**
+     * Get the progress property: Search job completion percentage.
+     *
+     * @return the progress value.
+     */
+    public Float progress() {
+        return this.progress;
+    }
+
+    /**
+     * Get the ingestedRecords property: The number of rows that were returned by the search job.
+     *
+     * @return the ingestedRecords value.
+     */
+    public Integer ingestedRecords() {
+        return this.ingestedRecords;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearch.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearch.java
index 7724013b89165..6d6b884e6f916 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearch.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearch.java
@@ -32,7 +32,8 @@ public interface SavedSearch {
     String type();
 
     /**
-     * Gets the etag property: The ETag of the saved search.
+     * Gets the etag property: The ETag of the saved search. To override an existing saved search, use "*" or specify
+     * the current Etag.
      *
      * @return the etag value.
      */
@@ -191,9 +192,11 @@ interface WithTags {
         /** The stage of the SavedSearch definition allowing to specify etag. */
         interface WithEtag {
             /**
-             * Specifies the etag property: The ETag of the saved search..
+             * Specifies the etag property: The ETag of the saved search. To override an existing saved search, use "*"
+             * or specify the current Etag.
              *
-             * @param etag The ETag of the saved search.
+             * @param etag The ETag of the saved search. To override an existing saved search, use "*" or specify the
+             *     current Etag.
              * @return the next definition stage.
              */
             WithCreate withEtag(String etag);
@@ -283,9 +286,11 @@ interface WithTags {
         /** The stage of the SavedSearch update allowing to specify etag. */
         interface WithEtag {
             /**
-             * Specifies the etag property: The ETag of the saved search..
+             * Specifies the etag property: The ETag of the saved search. To override an existing saved search, use "*"
+             * or specify the current Etag.
              *
-             * @param etag The ETag of the saved search.
+             * @param etag The ETag of the saved search. To override an existing saved search, use "*" or specify the
+             *     current Etag.
              * @return the next definition stage.
              */
             Update withEtag(String etag);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearches.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearches.java
index 5a3cf45239d59..7cfd4b6b0a65c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearches.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SavedSearches.java
@@ -31,7 +31,7 @@ public interface SavedSearches {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, String savedSearchId, Context context);
@@ -59,7 +59,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response}.
      */
     Response<SavedSearch> getWithResponse(
         String resourceGroupName, String workspaceName, String savedSearchId, Context context);
@@ -85,7 +85,7 @@ Response<SavedSearch> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the saved searches for a given Log Analytics Workspace.
+     * @return the saved searches for a given Log Analytics Workspace along with {@link Response}.
      */
     Response<SavedSearchesListResult> listByWorkspaceWithResponse(
         String resourceGroupName, String workspaceName, Context context);
@@ -97,7 +97,7 @@ Response<SavedSearchesListResult> listByWorkspaceWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response}.
      */
     SavedSearch getById(String id);
 
@@ -109,7 +109,7 @@ Response<SavedSearchesListResult> listByWorkspaceWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the specified saved search for a given workspace.
+     * @return the specified saved search for a given workspace along with {@link Response}.
      */
     Response<SavedSearch> getByIdWithResponse(String id, Context context);
 
@@ -131,7 +131,7 @@ Response<SavedSearchesListResult> listByWorkspaceWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schema.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schema.java
new file mode 100644
index 0000000000000..12dcbed781757
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schema.java
@@ -0,0 +1,274 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Table's schema. */
+@Fluent
+public final class Schema {
+    /*
+     * Table name.
+     */
+    @JsonProperty(value = "name")
+    private String name;
+
+    /*
+     * Table display name.
+     */
+    @JsonProperty(value = "displayName")
+    private String displayName;
+
+    /*
+     * Table description.
+     */
+    @JsonProperty(value = "description")
+    private String description;
+
+    /*
+     * A list of table custom columns.
+     */
+    @JsonProperty(value = "columns")
+    private List<Column> columns;
+
+    /*
+     * A list of table standard columns.
+     */
+    @JsonProperty(value = "standardColumns", access = JsonProperty.Access.WRITE_ONLY)
+    private List<Column> standardColumns;
+
+    /*
+     * Table category.
+     */
+    @JsonProperty(value = "categories", access = JsonProperty.Access.WRITE_ONLY)
+    private List<String> categories;
+
+    /*
+     * Table labels.
+     */
+    @JsonProperty(value = "labels", access = JsonProperty.Access.WRITE_ONLY)
+    private List<String> labels;
+
+    /*
+     * Table's creator.
+     */
+    @JsonProperty(value = "source", access = JsonProperty.Access.WRITE_ONLY)
+    private SourceEnum source;
+
+    /*
+     * Table's creator.
+     */
+    @JsonProperty(value = "tableType", access = JsonProperty.Access.WRITE_ONLY)
+    private TableTypeEnum tableType;
+
+    /*
+     * The subtype describes what APIs can be used to interact with the table,
+     * and what features are available against it.
+     */
+    @JsonProperty(value = "tableSubType", access = JsonProperty.Access.WRITE_ONLY)
+    private TableSubTypeEnum tableSubType;
+
+    /*
+     * List of solutions the table is affiliated with
+     */
+    @JsonProperty(value = "solutions", access = JsonProperty.Access.WRITE_ONLY)
+    private List<String> solutions;
+
+    /*
+     * Parameters of the search job that initiated this table.
+     */
+    @JsonProperty(value = "searchResults", access = JsonProperty.Access.WRITE_ONLY)
+    private SearchResults searchResults;
+
+    /*
+     * Parameters of the restore operation that initiated this table.
+     */
+    @JsonProperty(value = "restoredLogs", access = JsonProperty.Access.WRITE_ONLY)
+    private RestoredLogs restoredLogs;
+
+    /**
+     * Get the name property: Table name.
+     *
+     * @return the name value.
+     */
+    public String name() {
+        return this.name;
+    }
+
+    /**
+     * Set the name property: Table name.
+     *
+     * @param name the name value to set.
+     * @return the Schema object itself.
+     */
+    public Schema withName(String name) {
+        this.name = name;
+        return this;
+    }
+
+    /**
+     * Get the displayName property: Table display name.
+     *
+     * @return the displayName value.
+     */
+    public String displayName() {
+        return this.displayName;
+    }
+
+    /**
+     * Set the displayName property: Table display name.
+     *
+     * @param displayName the displayName value to set.
+     * @return the Schema object itself.
+     */
+    public Schema withDisplayName(String displayName) {
+        this.displayName = displayName;
+        return this;
+    }
+
+    /**
+     * Get the description property: Table description.
+     *
+     * @return the description value.
+     */
+    public String description() {
+        return this.description;
+    }
+
+    /**
+     * Set the description property: Table description.
+     *
+     * @param description the description value to set.
+     * @return the Schema object itself.
+     */
+    public Schema withDescription(String description) {
+        this.description = description;
+        return this;
+    }
+
+    /**
+     * Get the columns property: A list of table custom columns.
+     *
+     * @return the columns value.
+     */
+    public List<Column> columns() {
+        return this.columns;
+    }
+
+    /**
+     * Set the columns property: A list of table custom columns.
+     *
+     * @param columns the columns value to set.
+     * @return the Schema object itself.
+     */
+    public Schema withColumns(List<Column> columns) {
+        this.columns = columns;
+        return this;
+    }
+
+    /**
+     * Get the standardColumns property: A list of table standard columns.
+     *
+     * @return the standardColumns value.
+     */
+    public List<Column> standardColumns() {
+        return this.standardColumns;
+    }
+
+    /**
+     * Get the categories property: Table category.
+     *
+     * @return the categories value.
+     */
+    public List<String> categories() {
+        return this.categories;
+    }
+
+    /**
+     * Get the labels property: Table labels.
+     *
+     * @return the labels value.
+     */
+    public List<String> labels() {
+        return this.labels;
+    }
+
+    /**
+     * Get the source property: Table's creator.
+     *
+     * @return the source value.
+     */
+    public SourceEnum source() {
+        return this.source;
+    }
+
+    /**
+     * Get the tableType property: Table's creator.
+     *
+     * @return the tableType value.
+     */
+    public TableTypeEnum tableType() {
+        return this.tableType;
+    }
+
+    /**
+     * Get the tableSubType property: The subtype describes what APIs can be used to interact with the table, and what
+     * features are available against it.
+     *
+     * @return the tableSubType value.
+     */
+    public TableSubTypeEnum tableSubType() {
+        return this.tableSubType;
+    }
+
+    /**
+     * Get the solutions property: List of solutions the table is affiliated with.
+     *
+     * @return the solutions value.
+     */
+    public List<String> solutions() {
+        return this.solutions;
+    }
+
+    /**
+     * Get the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @return the searchResults value.
+     */
+    public SearchResults searchResults() {
+        return this.searchResults;
+    }
+
+    /**
+     * Get the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @return the restoredLogs value.
+     */
+    public RestoredLogs restoredLogs() {
+        return this.restoredLogs;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+        if (columns() != null) {
+            columns().forEach(e -> e.validate());
+        }
+        if (standardColumns() != null) {
+            standardColumns().forEach(e -> e.validate());
+        }
+        if (searchResults() != null) {
+            searchResults().validate();
+        }
+        if (restoredLogs() != null) {
+            restoredLogs().validate();
+        }
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schemas.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schemas.java
index b7d84735a0ab8..37492e54521e4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schemas.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Schemas.java
@@ -30,7 +30,7 @@ public interface Schemas {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the schema for a given workspace.
+     * @return the schema for a given workspace along with {@link Response}.
      */
     Response<SearchGetSchemaResponse> getWithResponse(String resourceGroupName, String workspaceName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadata.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadata.java
index d133fe8b634f9..e9d0958384095 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadata.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadata.java
@@ -5,8 +5,6 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.time.OffsetDateTime;
 import java.util.List;
@@ -14,8 +12,6 @@
 /** Metadata for search results. */
 @Fluent
 public final class SearchMetadata {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SearchMetadata.class);
-
     /*
      * The request id of the search.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadataSchema.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadataSchema.java
index 18e2da11b27bf..d39853fc45e04 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadataSchema.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchMetadataSchema.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Schema metadata for search. */
 @Fluent
 public final class SearchMetadataSchema {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SearchMetadataSchema.class);
-
     /*
      * The name of the metadata schema.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchResults.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchResults.java
new file mode 100644
index 0000000000000..f18a4e89ffdbd
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchResults.java
@@ -0,0 +1,166 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Parameters of the search job that initiated this table. */
+@Fluent
+public final class SearchResults {
+    /*
+     * Search job query.
+     */
+    @JsonProperty(value = "query")
+    private String query;
+
+    /*
+     * Search job Description.
+     */
+    @JsonProperty(value = "description")
+    private String description;
+
+    /*
+     * Limit the search job to return up to specified number of rows.
+     */
+    @JsonProperty(value = "limit")
+    private Integer limit;
+
+    /*
+     * The timestamp to start the search from (UTC)
+     */
+    @JsonProperty(value = "startSearchTime")
+    private OffsetDateTime startSearchTime;
+
+    /*
+     * The timestamp to end the search by (UTC)
+     */
+    @JsonProperty(value = "endSearchTime")
+    private OffsetDateTime endSearchTime;
+
+    /*
+     * The table used in the search job.
+     */
+    @JsonProperty(value = "sourceTable", access = JsonProperty.Access.WRITE_ONLY)
+    private String sourceTable;
+
+    /**
+     * Get the query property: Search job query.
+     *
+     * @return the query value.
+     */
+    public String query() {
+        return this.query;
+    }
+
+    /**
+     * Set the query property: Search job query.
+     *
+     * @param query the query value to set.
+     * @return the SearchResults object itself.
+     */
+    public SearchResults withQuery(String query) {
+        this.query = query;
+        return this;
+    }
+
+    /**
+     * Get the description property: Search job Description.
+     *
+     * @return the description value.
+     */
+    public String description() {
+        return this.description;
+    }
+
+    /**
+     * Set the description property: Search job Description.
+     *
+     * @param description the description value to set.
+     * @return the SearchResults object itself.
+     */
+    public SearchResults withDescription(String description) {
+        this.description = description;
+        return this;
+    }
+
+    /**
+     * Get the limit property: Limit the search job to return up to specified number of rows.
+     *
+     * @return the limit value.
+     */
+    public Integer limit() {
+        return this.limit;
+    }
+
+    /**
+     * Set the limit property: Limit the search job to return up to specified number of rows.
+     *
+     * @param limit the limit value to set.
+     * @return the SearchResults object itself.
+     */
+    public SearchResults withLimit(Integer limit) {
+        this.limit = limit;
+        return this;
+    }
+
+    /**
+     * Get the startSearchTime property: The timestamp to start the search from (UTC).
+     *
+     * @return the startSearchTime value.
+     */
+    public OffsetDateTime startSearchTime() {
+        return this.startSearchTime;
+    }
+
+    /**
+     * Set the startSearchTime property: The timestamp to start the search from (UTC).
+     *
+     * @param startSearchTime the startSearchTime value to set.
+     * @return the SearchResults object itself.
+     */
+    public SearchResults withStartSearchTime(OffsetDateTime startSearchTime) {
+        this.startSearchTime = startSearchTime;
+        return this;
+    }
+
+    /**
+     * Get the endSearchTime property: The timestamp to end the search by (UTC).
+     *
+     * @return the endSearchTime value.
+     */
+    public OffsetDateTime endSearchTime() {
+        return this.endSearchTime;
+    }
+
+    /**
+     * Set the endSearchTime property: The timestamp to end the search by (UTC).
+     *
+     * @param endSearchTime the endSearchTime value to set.
+     * @return the SearchResults object itself.
+     */
+    public SearchResults withEndSearchTime(OffsetDateTime endSearchTime) {
+        this.endSearchTime = endSearchTime;
+        return this;
+    }
+
+    /**
+     * Get the sourceTable property: The table used in the search job.
+     *
+     * @return the sourceTable value.
+     */
+    public String sourceTable() {
+        return this.sourceTable;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSchemaValue.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSchemaValue.java
index 438d17a294e0a..fa5f695d4b247 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSchemaValue.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSchemaValue.java
@@ -5,16 +5,12 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Value object for schema results. */
 @Fluent
 public final class SearchSchemaValue {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SearchSchemaValue.class);
-
     /*
      * The name of the schema.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSort.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSort.java
index 3cefd04041d6b..831cd352d5373 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSort.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SearchSort.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The sort parameters for search. */
 @Fluent
 public final class SearchSort {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(SearchSort.class);
-
     /*
      * The name of the field the search query is sorted on.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SharedKeysOperations.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SharedKeysOperations.java
index e5f115d160cce..60f14ecd20280 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SharedKeysOperations.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SharedKeysOperations.java
@@ -30,7 +30,7 @@ public interface SharedKeysOperations {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     Response<SharedKeys> getSharedKeysWithResponse(String resourceGroupName, String workspaceName, Context context);
 
@@ -57,7 +57,7 @@ public interface SharedKeysOperations {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the shared keys for a workspace.
+     * @return the shared keys for a workspace along with {@link Response}.
      */
     Response<SharedKeys> regenerateWithResponse(String resourceGroupName, String workspaceName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SourceEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SourceEnum.java
new file mode 100644
index 0000000000000..7ca09ce1532df
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SourceEnum.java
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for SourceEnum. */
+public final class SourceEnum extends ExpandableStringEnum<SourceEnum> {
+    /** Static value microsoft for SourceEnum. */
+    public static final SourceEnum MICROSOFT = fromString("microsoft");
+
+    /** Static value customer for SourceEnum. */
+    public static final SourceEnum CUSTOMER = fromString("customer");
+
+    /**
+     * Creates or finds a SourceEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding SourceEnum.
+     */
+    @JsonCreator
+    public static SourceEnum fromString(String name) {
+        return fromString(name, SourceEnum.class);
+    }
+
+    /** @return known SourceEnum values. */
+    public static Collection<SourceEnum> values() {
+        return values(SourceEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageAccount.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageAccount.java
index dc42fad949219..058a2aed26564 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageAccount.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageAccount.java
@@ -6,14 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** Describes a storage account connection. */
 @Fluent
 public final class StorageAccount {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(StorageAccount.class);
-
     /*
      * The Azure Resource Manager ID of the storage account resource.
      */
@@ -73,14 +70,16 @@ public StorageAccount withKey(String key) {
      */
     public void validate() {
         if (id() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property id in model StorageAccount"));
         }
         if (key() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property key in model StorageAccount"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(StorageAccount.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightConfigs.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightConfigs.java
index 09b6dca63aef6..50465aa242586 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightConfigs.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightConfigs.java
@@ -33,7 +33,7 @@ public interface StorageInsightConfigs {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response}.
      */
     Response<StorageInsight> getWithResponse(
         String resourceGroupName, String workspaceName, String storageInsightName, Context context);
@@ -60,7 +60,7 @@ Response<StorageInsight> getWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteWithResponse(
         String resourceGroupName, String workspaceName, String storageInsightName, Context context);
@@ -73,7 +73,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     PagedIterable<StorageInsight> listByWorkspace(String resourceGroupName, String workspaceName);
 
@@ -86,7 +86,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the list storage insights operation response.
+     * @return the list storage insights operation response as paginated response with {@link PagedIterable}.
      */
     PagedIterable<StorageInsight> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
 
@@ -97,7 +97,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response}.
      */
     StorageInsight getById(String id);
 
@@ -109,7 +109,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a storage insight instance.
+     * @return a storage insight instance along with {@link Response}.
      */
     Response<StorageInsight> getByIdWithResponse(String id, Context context);
 
@@ -131,7 +131,7 @@ Response<Void> deleteWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the response.
+     * @return the {@link Response}.
      */
     Response<Void> deleteByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightListResult.java
index d41d3a29bb055..8ec3ee4b82ccb 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.StorageInsightInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list storage insights operation response. */
 @Fluent
 public final class StorageInsightListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(StorageInsightListResult.class);
-
     /*
      * A list of storage insight items.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightStatus.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightStatus.java
index faad012f25e2a..d1744e91e3eb5 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightStatus.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/StorageInsightStatus.java
@@ -6,14 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The status of the storage insight. */
 @Fluent
 public final class StorageInsightStatus {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(StorageInsightStatus.class);
-
     /*
      * The state of the storage insight connection to the workspace
      */
@@ -73,9 +70,11 @@ public StorageInsightStatus withDescription(String description) {
      */
     public void validate() {
         if (state() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property state in model StorageInsightStatus"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(StorageInsightStatus.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SystemDataAutoGenerated.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SystemDataAutoGenerated.java
new file mode 100644
index 0000000000000..b1d6266785d32
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/SystemDataAutoGenerated.java
@@ -0,0 +1,177 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Metadata pertaining to creation and last modification of the resource. */
+@Fluent
+public final class SystemDataAutoGenerated {
+    /*
+     * The identity that created the resource.
+     */
+    @JsonProperty(value = "createdBy")
+    private String createdBy;
+
+    /*
+     * The type of identity that created the resource.
+     */
+    @JsonProperty(value = "createdByType")
+    private CreatedByType createdByType;
+
+    /*
+     * The timestamp of resource creation (UTC).
+     */
+    @JsonProperty(value = "createdAt")
+    private OffsetDateTime createdAt;
+
+    /*
+     * The identity that last modified the resource.
+     */
+    @JsonProperty(value = "lastModifiedBy")
+    private String lastModifiedBy;
+
+    /*
+     * The type of identity that last modified the resource.
+     */
+    @JsonProperty(value = "lastModifiedByType")
+    private CreatedByType lastModifiedByType;
+
+    /*
+     * The timestamp of resource last modification (UTC)
+     */
+    @JsonProperty(value = "lastModifiedAt")
+    private OffsetDateTime lastModifiedAt;
+
+    /**
+     * Get the createdBy property: The identity that created the resource.
+     *
+     * @return the createdBy value.
+     */
+    public String createdBy() {
+        return this.createdBy;
+    }
+
+    /**
+     * Set the createdBy property: The identity that created the resource.
+     *
+     * @param createdBy the createdBy value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withCreatedBy(String createdBy) {
+        this.createdBy = createdBy;
+        return this;
+    }
+
+    /**
+     * Get the createdByType property: The type of identity that created the resource.
+     *
+     * @return the createdByType value.
+     */
+    public CreatedByType createdByType() {
+        return this.createdByType;
+    }
+
+    /**
+     * Set the createdByType property: The type of identity that created the resource.
+     *
+     * @param createdByType the createdByType value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withCreatedByType(CreatedByType createdByType) {
+        this.createdByType = createdByType;
+        return this;
+    }
+
+    /**
+     * Get the createdAt property: The timestamp of resource creation (UTC).
+     *
+     * @return the createdAt value.
+     */
+    public OffsetDateTime createdAt() {
+        return this.createdAt;
+    }
+
+    /**
+     * Set the createdAt property: The timestamp of resource creation (UTC).
+     *
+     * @param createdAt the createdAt value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withCreatedAt(OffsetDateTime createdAt) {
+        this.createdAt = createdAt;
+        return this;
+    }
+
+    /**
+     * Get the lastModifiedBy property: The identity that last modified the resource.
+     *
+     * @return the lastModifiedBy value.
+     */
+    public String lastModifiedBy() {
+        return this.lastModifiedBy;
+    }
+
+    /**
+     * Set the lastModifiedBy property: The identity that last modified the resource.
+     *
+     * @param lastModifiedBy the lastModifiedBy value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withLastModifiedBy(String lastModifiedBy) {
+        this.lastModifiedBy = lastModifiedBy;
+        return this;
+    }
+
+    /**
+     * Get the lastModifiedByType property: The type of identity that last modified the resource.
+     *
+     * @return the lastModifiedByType value.
+     */
+    public CreatedByType lastModifiedByType() {
+        return this.lastModifiedByType;
+    }
+
+    /**
+     * Set the lastModifiedByType property: The type of identity that last modified the resource.
+     *
+     * @param lastModifiedByType the lastModifiedByType value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withLastModifiedByType(CreatedByType lastModifiedByType) {
+        this.lastModifiedByType = lastModifiedByType;
+        return this;
+    }
+
+    /**
+     * Get the lastModifiedAt property: The timestamp of resource last modification (UTC).
+     *
+     * @return the lastModifiedAt value.
+     */
+    public OffsetDateTime lastModifiedAt() {
+        return this.lastModifiedAt;
+    }
+
+    /**
+     * Set the lastModifiedAt property: The timestamp of resource last modification (UTC).
+     *
+     * @param lastModifiedAt the lastModifiedAt value to set.
+     * @return the SystemDataAutoGenerated object itself.
+     */
+    public SystemDataAutoGenerated withLastModifiedAt(OffsetDateTime lastModifiedAt) {
+        this.lastModifiedAt = lastModifiedAt;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Table.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Table.java
index c4a2fa65b8f66..a16e8113ce74b 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Table.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Table.java
@@ -4,6 +4,8 @@
 
 package com.azure.resourcemanager.loganalytics.models;
 
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
 
 /** An immutable client-side representation of Table. */
@@ -30,17 +32,359 @@ public interface Table {
     String type();
 
     /**
-     * Gets the retentionInDays property: The data table data retention in days, between 30 and 730. Setting this
-     * property to null will default to the workspace retention.
+     * Gets the systemData property: Metadata pertaining to creation and last modification of the resource.
+     *
+     * @return the systemData value.
+     */
+    SystemDataAutoGenerated systemData();
+
+    /**
+     * Gets the retentionInDays property: The table retention in days, between 4 and 730. Setting this property to -1
+     * will default to the workspace retention.
      *
      * @return the retentionInDays value.
      */
     Integer retentionInDays();
 
+    /**
+     * Gets the totalRetentionInDays property: The table total retention in days, between 4 and 2555. Setting this
+     * property to -1 will default to table retention.
+     *
+     * @return the totalRetentionInDays value.
+     */
+    Integer totalRetentionInDays();
+
+    /**
+     * Gets the archiveRetentionInDays property: The table data archive retention in days. Calculated as
+     * (totalRetentionInDays-retentionInDays).
+     *
+     * @return the archiveRetentionInDays value.
+     */
+    Integer archiveRetentionInDays();
+
+    /**
+     * Gets the searchResults property: Parameters of the search job that initiated this table.
+     *
+     * @return the searchResults value.
+     */
+    SearchResults searchResults();
+
+    /**
+     * Gets the restoredLogs property: Parameters of the restore operation that initiated this table.
+     *
+     * @return the restoredLogs value.
+     */
+    RestoredLogs restoredLogs();
+
+    /**
+     * Gets the resultStatistics property: Search job execution statistics.
+     *
+     * @return the resultStatistics value.
+     */
+    ResultStatistics resultStatistics();
+
+    /**
+     * Gets the plan property: Instruct the system how to handle and charge the logs ingested to this table.
+     *
+     * @return the plan value.
+     */
+    TablePlanEnum plan();
+
+    /**
+     * Gets the lastPlanModifiedDate property: The timestamp that table plan was last modified (UTC).
+     *
+     * @return the lastPlanModifiedDate value.
+     */
+    String lastPlanModifiedDate();
+
+    /**
+     * Gets the schema property: Table schema.
+     *
+     * @return the schema value.
+     */
+    Schema schema();
+
+    /**
+     * Gets the provisioningState property: Table's current provisioning state. If set to 'updating', indicates a
+     * resource lock due to ongoing operation, forbidding any update to the table until the ongoing operation is
+     * concluded.
+     *
+     * @return the provisioningState value.
+     */
+    ProvisioningStateEnum provisioningState();
+
     /**
      * Gets the inner com.azure.resourcemanager.loganalytics.fluent.models.TableInner object.
      *
      * @return the inner object.
      */
     TableInner innerModel();
+
+    /** The entirety of the Table definition. */
+    interface Definition
+        extends DefinitionStages.Blank, DefinitionStages.WithParentResource, DefinitionStages.WithCreate {
+    }
+    /** The Table definition stages. */
+    interface DefinitionStages {
+        /** The first stage of the Table definition. */
+        interface Blank extends WithParentResource {
+        }
+        /** The stage of the Table definition allowing to specify parent resource. */
+        interface WithParentResource {
+            /**
+             * Specifies resourceGroupName, workspaceName.
+             *
+             * @param resourceGroupName The name of the resource group. The name is case insensitive.
+             * @param workspaceName The name of the workspace.
+             * @return the next definition stage.
+             */
+            WithCreate withExistingWorkspace(String resourceGroupName, String workspaceName);
+        }
+        /**
+         * The stage of the Table definition which contains all the minimum required properties for the resource to be
+         * created, but also allows for any other optional properties to be specified.
+         */
+        interface WithCreate
+            extends DefinitionStages.WithRetentionInDays,
+                DefinitionStages.WithTotalRetentionInDays,
+                DefinitionStages.WithSearchResults,
+                DefinitionStages.WithRestoredLogs,
+                DefinitionStages.WithResultStatistics,
+                DefinitionStages.WithPlan,
+                DefinitionStages.WithSchema {
+            /**
+             * Executes the create request.
+             *
+             * @return the created resource.
+             */
+            Table create();
+
+            /**
+             * Executes the create request.
+             *
+             * @param context The context to associate with this operation.
+             * @return the created resource.
+             */
+            Table create(Context context);
+        }
+        /** The stage of the Table definition allowing to specify retentionInDays. */
+        interface WithRetentionInDays {
+            /**
+             * Specifies the retentionInDays property: The table retention in days, between 4 and 730. Setting this
+             * property to -1 will default to the workspace retention..
+             *
+             * @param retentionInDays The table retention in days, between 4 and 730. Setting this property to -1 will
+             *     default to the workspace retention.
+             * @return the next definition stage.
+             */
+            WithCreate withRetentionInDays(Integer retentionInDays);
+        }
+        /** The stage of the Table definition allowing to specify totalRetentionInDays. */
+        interface WithTotalRetentionInDays {
+            /**
+             * Specifies the totalRetentionInDays property: The table total retention in days, between 4 and 2555.
+             * Setting this property to -1 will default to table retention..
+             *
+             * @param totalRetentionInDays The table total retention in days, between 4 and 2555. Setting this property
+             *     to -1 will default to table retention.
+             * @return the next definition stage.
+             */
+            WithCreate withTotalRetentionInDays(Integer totalRetentionInDays);
+        }
+        /** The stage of the Table definition allowing to specify searchResults. */
+        interface WithSearchResults {
+            /**
+             * Specifies the searchResults property: Parameters of the search job that initiated this table..
+             *
+             * @param searchResults Parameters of the search job that initiated this table.
+             * @return the next definition stage.
+             */
+            WithCreate withSearchResults(SearchResults searchResults);
+        }
+        /** The stage of the Table definition allowing to specify restoredLogs. */
+        interface WithRestoredLogs {
+            /**
+             * Specifies the restoredLogs property: Parameters of the restore operation that initiated this table..
+             *
+             * @param restoredLogs Parameters of the restore operation that initiated this table.
+             * @return the next definition stage.
+             */
+            WithCreate withRestoredLogs(RestoredLogs restoredLogs);
+        }
+        /** The stage of the Table definition allowing to specify resultStatistics. */
+        interface WithResultStatistics {
+            /**
+             * Specifies the resultStatistics property: Search job execution statistics..
+             *
+             * @param resultStatistics Search job execution statistics.
+             * @return the next definition stage.
+             */
+            WithCreate withResultStatistics(ResultStatistics resultStatistics);
+        }
+        /** The stage of the Table definition allowing to specify plan. */
+        interface WithPlan {
+            /**
+             * Specifies the plan property: Instruct the system how to handle and charge the logs ingested to this
+             * table..
+             *
+             * @param plan Instruct the system how to handle and charge the logs ingested to this table.
+             * @return the next definition stage.
+             */
+            WithCreate withPlan(TablePlanEnum plan);
+        }
+        /** The stage of the Table definition allowing to specify schema. */
+        interface WithSchema {
+            /**
+             * Specifies the schema property: Table schema..
+             *
+             * @param schema Table schema.
+             * @return the next definition stage.
+             */
+            WithCreate withSchema(Schema schema);
+        }
+    }
+    /**
+     * Begins update for the Table resource.
+     *
+     * @return the stage of resource update.
+     */
+    Table.Update update();
+
+    /** The template for Table update. */
+    interface Update
+        extends UpdateStages.WithRetentionInDays,
+            UpdateStages.WithTotalRetentionInDays,
+            UpdateStages.WithSearchResults,
+            UpdateStages.WithRestoredLogs,
+            UpdateStages.WithResultStatistics,
+            UpdateStages.WithPlan,
+            UpdateStages.WithSchema {
+        /**
+         * Executes the update request.
+         *
+         * @return the updated resource.
+         */
+        Table apply();
+
+        /**
+         * Executes the update request.
+         *
+         * @param context The context to associate with this operation.
+         * @return the updated resource.
+         */
+        Table apply(Context context);
+    }
+    /** The Table update stages. */
+    interface UpdateStages {
+        /** The stage of the Table update allowing to specify retentionInDays. */
+        interface WithRetentionInDays {
+            /**
+             * Specifies the retentionInDays property: The table retention in days, between 4 and 730. Setting this
+             * property to -1 will default to the workspace retention..
+             *
+             * @param retentionInDays The table retention in days, between 4 and 730. Setting this property to -1 will
+             *     default to the workspace retention.
+             * @return the next definition stage.
+             */
+            Update withRetentionInDays(Integer retentionInDays);
+        }
+        /** The stage of the Table update allowing to specify totalRetentionInDays. */
+        interface WithTotalRetentionInDays {
+            /**
+             * Specifies the totalRetentionInDays property: The table total retention in days, between 4 and 2555.
+             * Setting this property to -1 will default to table retention..
+             *
+             * @param totalRetentionInDays The table total retention in days, between 4 and 2555. Setting this property
+             *     to -1 will default to table retention.
+             * @return the next definition stage.
+             */
+            Update withTotalRetentionInDays(Integer totalRetentionInDays);
+        }
+        /** The stage of the Table update allowing to specify searchResults. */
+        interface WithSearchResults {
+            /**
+             * Specifies the searchResults property: Parameters of the search job that initiated this table..
+             *
+             * @param searchResults Parameters of the search job that initiated this table.
+             * @return the next definition stage.
+             */
+            Update withSearchResults(SearchResults searchResults);
+        }
+        /** The stage of the Table update allowing to specify restoredLogs. */
+        interface WithRestoredLogs {
+            /**
+             * Specifies the restoredLogs property: Parameters of the restore operation that initiated this table..
+             *
+             * @param restoredLogs Parameters of the restore operation that initiated this table.
+             * @return the next definition stage.
+             */
+            Update withRestoredLogs(RestoredLogs restoredLogs);
+        }
+        /** The stage of the Table update allowing to specify resultStatistics. */
+        interface WithResultStatistics {
+            /**
+             * Specifies the resultStatistics property: Search job execution statistics..
+             *
+             * @param resultStatistics Search job execution statistics.
+             * @return the next definition stage.
+             */
+            Update withResultStatistics(ResultStatistics resultStatistics);
+        }
+        /** The stage of the Table update allowing to specify plan. */
+        interface WithPlan {
+            /**
+             * Specifies the plan property: Instruct the system how to handle and charge the logs ingested to this
+             * table..
+             *
+             * @param plan Instruct the system how to handle and charge the logs ingested to this table.
+             * @return the next definition stage.
+             */
+            Update withPlan(TablePlanEnum plan);
+        }
+        /** The stage of the Table update allowing to specify schema. */
+        interface WithSchema {
+            /**
+             * Specifies the schema property: Table schema..
+             *
+             * @param schema Table schema.
+             * @return the next definition stage.
+             */
+            Update withSchema(Schema schema);
+        }
+    }
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @return the refreshed resource.
+     */
+    Table refresh();
+
+    /**
+     * Refreshes the resource to sync with Azure.
+     *
+     * @param context The context to associate with this operation.
+     * @return the refreshed resource.
+     */
+    Table refresh(Context context);
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void migrate();
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> migrateWithResponse(Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablePlanEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablePlanEnum.java
new file mode 100644
index 0000000000000..beecb1e94249e
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablePlanEnum.java
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for TablePlanEnum. */
+public final class TablePlanEnum extends ExpandableStringEnum<TablePlanEnum> {
+    /** Static value Basic for TablePlanEnum. */
+    public static final TablePlanEnum BASIC = fromString("Basic");
+
+    /** Static value Analytics for TablePlanEnum. */
+    public static final TablePlanEnum ANALYTICS = fromString("Analytics");
+
+    /**
+     * Creates or finds a TablePlanEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding TablePlanEnum.
+     */
+    @JsonCreator
+    public static TablePlanEnum fromString(String name) {
+        return fromString(name, TablePlanEnum.class);
+    }
+
+    /** @return known TablePlanEnum values. */
+    public static Collection<TablePlanEnum> values() {
+        return values(TablePlanEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableSubTypeEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableSubTypeEnum.java
new file mode 100644
index 0000000000000..5f232116547e6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableSubTypeEnum.java
@@ -0,0 +1,37 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for TableSubTypeEnum. */
+public final class TableSubTypeEnum extends ExpandableStringEnum<TableSubTypeEnum> {
+    /** Static value Any for TableSubTypeEnum. */
+    public static final TableSubTypeEnum ANY = fromString("Any");
+
+    /** Static value Classic for TableSubTypeEnum. */
+    public static final TableSubTypeEnum CLASSIC = fromString("Classic");
+
+    /** Static value DataCollectionRuleBased for TableSubTypeEnum. */
+    public static final TableSubTypeEnum DATA_COLLECTION_RULE_BASED = fromString("DataCollectionRuleBased");
+
+    /**
+     * Creates or finds a TableSubTypeEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding TableSubTypeEnum.
+     */
+    @JsonCreator
+    public static TableSubTypeEnum fromString(String name) {
+        return fromString(name, TableSubTypeEnum.class);
+    }
+
+    /** @return known TableSubTypeEnum values. */
+    public static Collection<TableSubTypeEnum> values() {
+        return values(TableSubTypeEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableTypeEnum.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableTypeEnum.java
new file mode 100644
index 0000000000000..17773334c4f61
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TableTypeEnum.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.util.ExpandableStringEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import java.util.Collection;
+
+/** Defines values for TableTypeEnum. */
+public final class TableTypeEnum extends ExpandableStringEnum<TableTypeEnum> {
+    /** Static value Microsoft for TableTypeEnum. */
+    public static final TableTypeEnum MICROSOFT = fromString("Microsoft");
+
+    /** Static value CustomLog for TableTypeEnum. */
+    public static final TableTypeEnum CUSTOM_LOG = fromString("CustomLog");
+
+    /** Static value RestoredLogs for TableTypeEnum. */
+    public static final TableTypeEnum RESTORED_LOGS = fromString("RestoredLogs");
+
+    /** Static value SearchResults for TableTypeEnum. */
+    public static final TableTypeEnum SEARCH_RESULTS = fromString("SearchResults");
+
+    /**
+     * Creates or finds a TableTypeEnum from its string representation.
+     *
+     * @param name a name to look for.
+     * @return the corresponding TableTypeEnum.
+     */
+    @JsonCreator
+    public static TableTypeEnum fromString(String name) {
+        return fromString(name, TableTypeEnum.class);
+    }
+
+    /** @return known TableTypeEnum values. */
+    public static Collection<TableTypeEnum> values() {
+        return values(TableTypeEnum.class);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tables.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tables.java
index 4d6cbfd33178a..a52a4353045c0 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tables.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tables.java
@@ -7,7 +7,6 @@
 import com.azure.core.http.rest.PagedIterable;
 import com.azure.core.http.rest.Response;
 import com.azure.core.util.Context;
-import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
 
 /** Resource collection API of Tables. */
 public interface Tables {
@@ -19,7 +18,8 @@ public interface Tables {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Table> listByWorkspace(String resourceGroupName, String workspaceName);
 
@@ -32,42 +32,40 @@ public interface Tables {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return all the tables for the specified Log Analytics workspace.
+     * @return all the tables for the specified Log Analytics workspace as paginated response with {@link
+     *     PagedIterable}.
      */
     PagedIterable<Table> listByWorkspace(String resourceGroupName, String workspaceName, Context context);
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Gets a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
-     * @param parameters The parameters required to update table properties.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspace data table definition.
+     * @return a Log Analytics workspace table.
      */
-    Table update(String resourceGroupName, String workspaceName, String tableName, TableInner parameters);
+    Table get(String resourceGroupName, String workspaceName, String tableName);
 
     /**
-     * Updates a Log Analytics workspace table properties.
+     * Gets a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
      * @param tableName The name of the table.
-     * @param parameters The parameters required to update table properties.
      * @param context The context to associate with this operation.
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspace data table definition.
+     * @return a Log Analytics workspace table along with {@link Response}.
      */
-    Response<Table> updateWithResponse(
-        String resourceGroupName, String workspaceName, String tableName, TableInner parameters, Context context);
+    Response<Table> getWithResponse(String resourceGroupName, String workspaceName, String tableName, Context context);
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Delete a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -75,12 +73,11 @@ Response<Table> updateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
      */
-    Table get(String resourceGroupName, String workspaceName, String tableName);
+    void delete(String resourceGroupName, String workspaceName, String tableName);
 
     /**
-     * Gets a Log Analytics workspace table.
+     * Delete a Log Analytics workspace table.
      *
      * @param resourceGroupName The name of the resource group. The name is case insensitive.
      * @param workspaceName The name of the workspace.
@@ -89,7 +86,87 @@ Response<Table> updateWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a Log Analytics workspace table.
      */
-    Response<Table> getWithResponse(String resourceGroupName, String workspaceName, String tableName, Context context);
+    void delete(String resourceGroupName, String workspaceName, String tableName, Context context);
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void migrate(String resourceGroupName, String workspaceName, String tableName);
+
+    /**
+     * Migrate a Log Analytics table from support of the Data Collector API and Custom Fields features to support of
+     * Data Collection Rule-based Custom Logs.
+     *
+     * @param resourceGroupName The name of the resource group. The name is case insensitive.
+     * @param workspaceName The name of the workspace.
+     * @param tableName The name of the table.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return the {@link Response}.
+     */
+    Response<Void> migrateWithResponse(
+        String resourceGroupName, String workspaceName, String tableName, Context context);
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table along with {@link Response}.
+     */
+    Table getById(String id);
+
+    /**
+     * Gets a Log Analytics workspace table.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     * @return a Log Analytics workspace table along with {@link Response}.
+     */
+    Response<Table> getByIdWithResponse(String id, Context context);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param id the resource ID.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void deleteById(String id);
+
+    /**
+     * Delete a Log Analytics workspace table.
+     *
+     * @param id the resource ID.
+     * @param context The context to associate with this operation.
+     * @throws IllegalArgumentException thrown if parameters fail the validation.
+     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+     */
+    void deleteByIdWithResponse(String id, Context context);
+
+    /**
+     * Begins definition for a new Table resource.
+     *
+     * @param name resource name.
+     * @return the first stage of the new Table definition.
+     */
+    Table.DefinitionStages.Blank define(String name);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablesListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablesListResult.java
index 1d0ee2771506e..35faef222aa45 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablesListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TablesListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.TableInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list tables operation response. */
 @Fluent
 public final class TablesListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(TablesListResult.class);
-
     /*
      * A list of data tables.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tag.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tag.java
index fa9f41ed37398..28154aa59d8e4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tag.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Tag.java
@@ -6,14 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** A tag of a saved search. */
 @Fluent
 public final class Tag {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(Tag.class);
-
     /*
      * The tag name.
      */
@@ -73,12 +70,14 @@ public Tag withValue(String value) {
      */
     public void validate() {
         if (name() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(new IllegalArgumentException("Missing required property name in model Tag"));
         }
         if (value() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(new IllegalArgumentException("Missing required property value in model Tag"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(Tag.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TagsResource.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TagsResource.java
new file mode 100644
index 0000000000000..ebb5400da3a87
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/TagsResource.java
@@ -0,0 +1,49 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** A container holding only the Tags for a resource, allowing the user to update the tags on a QueryPack instance. */
+@Fluent
+public final class TagsResource {
+    /*
+     * Resource tags
+     */
+    @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+    private Map<String, String> tags;
+
+    /**
+     * Get the tags property: Resource tags.
+     *
+     * @return the tags value.
+     */
+    public Map<String, String> tags() {
+        return this.tags;
+    }
+
+    /**
+     * Set the tags property: Resource tags.
+     *
+     * @param tags the tags value to set.
+     * @return the TagsResource object itself.
+     */
+    public TagsResource withTags(Map<String, String> tags) {
+        this.tags = tags;
+        return this;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Usages.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Usages.java
index 0439331421f37..e9a86e52ace69 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Usages.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Usages.java
@@ -17,7 +17,7 @@ public interface Usages {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<UsageMetric> list(String resourceGroupName, String workspaceName);
 
@@ -30,7 +30,7 @@ public interface Usages {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a list of usage metrics for a workspace.
+     * @return a list of usage metrics for a workspace as paginated response with {@link PagedIterable}.
      */
     PagedIterable<UsageMetric> list(String resourceGroupName, String workspaceName, Context context);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/UserIdentityProperties.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/UserIdentityProperties.java
new file mode 100644
index 0000000000000..1f5f0d2f2cae5
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/UserIdentityProperties.java
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Immutable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** User assigned identity properties. */
+@Immutable
+public final class UserIdentityProperties {
+    /*
+     * The principal id of user assigned identity.
+     */
+    @JsonProperty(value = "principalId", access = JsonProperty.Access.WRITE_ONLY)
+    private String principalId;
+
+    /*
+     * The client id of user assigned identity.
+     */
+    @JsonProperty(value = "clientId", access = JsonProperty.Access.WRITE_ONLY)
+    private String clientId;
+
+    /**
+     * Get the principalId property: The principal id of user assigned identity.
+     *
+     * @return the principalId value.
+     */
+    public String principalId() {
+        return this.principalId;
+    }
+
+    /**
+     * Get the clientId property: The client id of user assigned identity.
+     *
+     * @return the clientId value.
+     */
+    public String clientId() {
+        return this.clientId;
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspace.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspace.java
index 44ce1350abae5..c394f6b3f75d0 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspace.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspace.java
@@ -47,6 +47,13 @@ public interface Workspace {
      */
     Map<String, String> tags();
 
+    /**
+     * Gets the systemData property: Metadata pertaining to creation and last modification of the resource.
+     *
+     * @return the systemData value.
+     */
+    SystemDataAutoGenerated systemData();
+
     /**
      * Gets the etag property: The ETag of the workspace.
      *
@@ -137,7 +144,16 @@ public interface Workspace {
      *
      * @return the features value.
      */
-    Map<String, Object> features();
+    WorkspaceFeatures features();
+
+    /**
+     * Gets the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @return the defaultDataCollectionRuleResourceId value.
+     */
+    String defaultDataCollectionRuleResourceId();
 
     /**
      * Gets the region of the resource.
@@ -207,14 +223,14 @@ interface WithResourceGroup {
         interface WithCreate
             extends DefinitionStages.WithTags,
                 DefinitionStages.WithEtag,
-                DefinitionStages.WithProvisioningState,
                 DefinitionStages.WithSku,
                 DefinitionStages.WithRetentionInDays,
                 DefinitionStages.WithWorkspaceCapping,
                 DefinitionStages.WithPublicNetworkAccessForIngestion,
                 DefinitionStages.WithPublicNetworkAccessForQuery,
                 DefinitionStages.WithForceCmkForQuery,
-                DefinitionStages.WithFeatures {
+                DefinitionStages.WithFeatures,
+                DefinitionStages.WithDefaultDataCollectionRuleResourceId {
             /**
              * Executes the create request.
              *
@@ -250,16 +266,6 @@ interface WithEtag {
              */
             WithCreate withEtag(String etag);
         }
-        /** The stage of the Workspace definition allowing to specify provisioningState. */
-        interface WithProvisioningState {
-            /**
-             * Specifies the provisioningState property: The provisioning state of the workspace..
-             *
-             * @param provisioningState The provisioning state of the workspace.
-             * @return the next definition stage.
-             */
-            WithCreate withProvisioningState(WorkspaceEntityStatus provisioningState);
-        }
         /** The stage of the Workspace definition allowing to specify sku. */
         interface WithSku {
             /**
@@ -333,7 +339,21 @@ interface WithFeatures {
              * @param features Workspace features.
              * @return the next definition stage.
              */
-            WithCreate withFeatures(Map<String, Object> features);
+            WithCreate withFeatures(WorkspaceFeatures features);
+        }
+        /** The stage of the Workspace definition allowing to specify defaultDataCollectionRuleResourceId. */
+        interface WithDefaultDataCollectionRuleResourceId {
+            /**
+             * Specifies the defaultDataCollectionRuleResourceId property: The resource ID of the default Data
+             * Collection Rule to use for this workspace. Expected format is -
+             * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}..
+             *
+             * @param defaultDataCollectionRuleResourceId The resource ID of the default Data Collection Rule to use for
+             *     this workspace. Expected format is -
+             *     /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+             * @return the next definition stage.
+             */
+            WithCreate withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId);
         }
     }
     /**
@@ -346,14 +366,14 @@ interface WithFeatures {
     /** The template for Workspace update. */
     interface Update
         extends UpdateStages.WithTags,
-            UpdateStages.WithProvisioningState,
             UpdateStages.WithSku,
             UpdateStages.WithRetentionInDays,
             UpdateStages.WithWorkspaceCapping,
             UpdateStages.WithPublicNetworkAccessForIngestion,
             UpdateStages.WithPublicNetworkAccessForQuery,
             UpdateStages.WithForceCmkForQuery,
-            UpdateStages.WithFeatures {
+            UpdateStages.WithFeatures,
+            UpdateStages.WithDefaultDataCollectionRuleResourceId {
         /**
          * Executes the update request.
          *
@@ -381,16 +401,6 @@ interface WithTags {
              */
             Update withTags(Map<String, String> tags);
         }
-        /** The stage of the Workspace update allowing to specify provisioningState. */
-        interface WithProvisioningState {
-            /**
-             * Specifies the provisioningState property: The provisioning state of the workspace..
-             *
-             * @param provisioningState The provisioning state of the workspace.
-             * @return the next definition stage.
-             */
-            Update withProvisioningState(WorkspaceEntityStatus provisioningState);
-        }
         /** The stage of the Workspace update allowing to specify sku. */
         interface WithSku {
             /**
@@ -464,7 +474,21 @@ interface WithFeatures {
              * @param features Workspace features.
              * @return the next definition stage.
              */
-            Update withFeatures(Map<String, Object> features);
+            Update withFeatures(WorkspaceFeatures features);
+        }
+        /** The stage of the Workspace update allowing to specify defaultDataCollectionRuleResourceId. */
+        interface WithDefaultDataCollectionRuleResourceId {
+            /**
+             * Specifies the defaultDataCollectionRuleResourceId property: The resource ID of the default Data
+             * Collection Rule to use for this workspace. Expected format is -
+             * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}..
+             *
+             * @param defaultDataCollectionRuleResourceId The resource ID of the default Data Collection Rule to use for
+             *     this workspace. Expected format is -
+             *     /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+             * @return the next definition stage.
+             */
+            Update withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId);
         }
     }
     /**
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceCapping.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceCapping.java
index 74dccada2e53e..ec2746c7f0156 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceCapping.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceCapping.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The daily volume cap for ingestion. */
 @Fluent
 public final class WorkspaceCapping {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceCapping.class);
-
     /*
      * The workspace daily quota for ingestion.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceFeatures.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceFeatures.java
new file mode 100644
index 0000000000000..e8eb7b7414d41
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceFeatures.java
@@ -0,0 +1,193 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Workspace features. */
+@Fluent
+public final class WorkspaceFeatures {
+    /*
+     * Flag that indicate if data should be exported.
+     */
+    @JsonProperty(value = "enableDataExport")
+    private Boolean enableDataExport;
+
+    /*
+     * Flag that describes if we want to remove the data after 30 days.
+     */
+    @JsonProperty(value = "immediatePurgeDataOn30Days")
+    private Boolean immediatePurgeDataOn30Days;
+
+    /*
+     * Flag that indicate which permission to use - resource or workspace or
+     * both.
+     */
+    @JsonProperty(value = "enableLogAccessUsingOnlyResourcePermissions")
+    private Boolean enableLogAccessUsingOnlyResourcePermissions;
+
+    /*
+     * Dedicated LA cluster resourceId that is linked to the workspaces.
+     */
+    @JsonProperty(value = "clusterResourceId")
+    private String clusterResourceId;
+
+    /*
+     * Disable Non-AAD based Auth.
+     */
+    @JsonProperty(value = "disableLocalAuth")
+    private Boolean disableLocalAuth;
+
+    /*
+     * Workspace features.
+     */
+    @JsonIgnore private Map<String, Object> additionalProperties;
+
+    /**
+     * Get the enableDataExport property: Flag that indicate if data should be exported.
+     *
+     * @return the enableDataExport value.
+     */
+    public Boolean enableDataExport() {
+        return this.enableDataExport;
+    }
+
+    /**
+     * Set the enableDataExport property: Flag that indicate if data should be exported.
+     *
+     * @param enableDataExport the enableDataExport value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withEnableDataExport(Boolean enableDataExport) {
+        this.enableDataExport = enableDataExport;
+        return this;
+    }
+
+    /**
+     * Get the immediatePurgeDataOn30Days property: Flag that describes if we want to remove the data after 30 days.
+     *
+     * @return the immediatePurgeDataOn30Days value.
+     */
+    public Boolean immediatePurgeDataOn30Days() {
+        return this.immediatePurgeDataOn30Days;
+    }
+
+    /**
+     * Set the immediatePurgeDataOn30Days property: Flag that describes if we want to remove the data after 30 days.
+     *
+     * @param immediatePurgeDataOn30Days the immediatePurgeDataOn30Days value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withImmediatePurgeDataOn30Days(Boolean immediatePurgeDataOn30Days) {
+        this.immediatePurgeDataOn30Days = immediatePurgeDataOn30Days;
+        return this;
+    }
+
+    /**
+     * Get the enableLogAccessUsingOnlyResourcePermissions property: Flag that indicate which permission to use -
+     * resource or workspace or both.
+     *
+     * @return the enableLogAccessUsingOnlyResourcePermissions value.
+     */
+    public Boolean enableLogAccessUsingOnlyResourcePermissions() {
+        return this.enableLogAccessUsingOnlyResourcePermissions;
+    }
+
+    /**
+     * Set the enableLogAccessUsingOnlyResourcePermissions property: Flag that indicate which permission to use -
+     * resource or workspace or both.
+     *
+     * @param enableLogAccessUsingOnlyResourcePermissions the enableLogAccessUsingOnlyResourcePermissions value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withEnableLogAccessUsingOnlyResourcePermissions(
+        Boolean enableLogAccessUsingOnlyResourcePermissions) {
+        this.enableLogAccessUsingOnlyResourcePermissions = enableLogAccessUsingOnlyResourcePermissions;
+        return this;
+    }
+
+    /**
+     * Get the clusterResourceId property: Dedicated LA cluster resourceId that is linked to the workspaces.
+     *
+     * @return the clusterResourceId value.
+     */
+    public String clusterResourceId() {
+        return this.clusterResourceId;
+    }
+
+    /**
+     * Set the clusterResourceId property: Dedicated LA cluster resourceId that is linked to the workspaces.
+     *
+     * @param clusterResourceId the clusterResourceId value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withClusterResourceId(String clusterResourceId) {
+        this.clusterResourceId = clusterResourceId;
+        return this;
+    }
+
+    /**
+     * Get the disableLocalAuth property: Disable Non-AAD based Auth.
+     *
+     * @return the disableLocalAuth value.
+     */
+    public Boolean disableLocalAuth() {
+        return this.disableLocalAuth;
+    }
+
+    /**
+     * Set the disableLocalAuth property: Disable Non-AAD based Auth.
+     *
+     * @param disableLocalAuth the disableLocalAuth value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withDisableLocalAuth(Boolean disableLocalAuth) {
+        this.disableLocalAuth = disableLocalAuth;
+        return this;
+    }
+
+    /**
+     * Get the additionalProperties property: Workspace features.
+     *
+     * @return the additionalProperties value.
+     */
+    @JsonAnyGetter
+    public Map<String, Object> additionalProperties() {
+        return this.additionalProperties;
+    }
+
+    /**
+     * Set the additionalProperties property: Workspace features.
+     *
+     * @param additionalProperties the additionalProperties value to set.
+     * @return the WorkspaceFeatures object itself.
+     */
+    public WorkspaceFeatures withAdditionalProperties(Map<String, Object> additionalProperties) {
+        this.additionalProperties = additionalProperties;
+        return this;
+    }
+
+    @JsonAnySetter
+    void withAdditionalProperties(String key, Object value) {
+        if (additionalProperties == null) {
+            additionalProperties = new HashMap<>();
+        }
+        additionalProperties.put(key, value);
+    }
+
+    /**
+     * Validates the instance.
+     *
+     * @throws IllegalArgumentException thrown if the instance is not valid.
+     */
+    public void validate() {
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListManagementGroupsResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListManagementGroupsResult.java
index e1d45aefd7b20..ce76d4567546c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListManagementGroupsResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListManagementGroupsResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.ManagementGroupInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list workspace management groups operation response. */
 @Fluent
 public final class WorkspaceListManagementGroupsResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceListManagementGroupsResult.class);
-
     /*
      * Gets or sets a list of management groups attached to the workspace.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListResult.java
index c96e76526cbe9..744ab803f4db4 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list workspaces operation response. */
 @Fluent
 public final class WorkspaceListResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceListResult.class);
-
     /*
      * A list of workspaces.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListUsagesResult.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListUsagesResult.java
index 4171d149f14b5..81ca20d1deb6b 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListUsagesResult.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceListUsagesResult.java
@@ -5,17 +5,13 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
 import com.azure.resourcemanager.loganalytics.fluent.models.UsageMetricInner;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** The list workspace usages operation response. */
 @Fluent
 public final class WorkspaceListUsagesResult {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceListUsagesResult.class);
-
     /*
      * Gets or sets a list of usage metrics for a workspace.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePatch.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePatch.java
index c1d0c35e8ed38..c46b74370e477 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePatch.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePatch.java
@@ -5,99 +5,36 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.azure.resourcemanager.loganalytics.fluent.models.WorkspaceProperties;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 import java.util.Map;
 
 /** The top level Workspace resource container. */
-@JsonFlatten
 @Fluent
-public class WorkspacePatch extends AzureEntityResource {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePatch.class);
+public final class WorkspacePatch extends AzureEntityResource {
+    /*
+     * Workspace properties.
+     */
+    @JsonProperty(value = "properties")
+    private WorkspaceProperties innerProperties;
 
     /*
      * Resource tags. Optional.
      */
     @JsonProperty(value = "tags")
+    @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
     private Map<String, String> tags;
 
-    /*
-     * The provisioning state of the workspace.
-     */
-    @JsonProperty(value = "properties.provisioningState")
-    private WorkspaceEntityStatus provisioningState;
-
-    /*
-     * This is a read-only property. Represents the ID associated with the
-     * workspace.
-     */
-    @JsonProperty(value = "properties.customerId", access = JsonProperty.Access.WRITE_ONLY)
-    private String customerId;
-
-    /*
-     * The SKU of the workspace.
-     */
-    @JsonProperty(value = "properties.sku")
-    private WorkspaceSku sku;
-
-    /*
-     * The workspace data retention in days. Allowed values are per pricing
-     * plan. See pricing tiers documentation for details.
-     */
-    @JsonProperty(value = "properties.retentionInDays")
-    private Integer retentionInDays;
-
-    /*
-     * The daily volume cap for ingestion.
-     */
-    @JsonProperty(value = "properties.workspaceCapping")
-    private WorkspaceCapping workspaceCapping;
-
-    /*
-     * Workspace creation date.
-     */
-    @JsonProperty(value = "properties.createdDate", access = JsonProperty.Access.WRITE_ONLY)
-    private String createdDate;
-
-    /*
-     * Workspace modification date.
-     */
-    @JsonProperty(value = "properties.modifiedDate", access = JsonProperty.Access.WRITE_ONLY)
-    private String modifiedDate;
-
-    /*
-     * The network access type for accessing Log Analytics ingestion.
-     */
-    @JsonProperty(value = "properties.publicNetworkAccessForIngestion")
-    private PublicNetworkAccessType publicNetworkAccessForIngestion;
-
-    /*
-     * The network access type for accessing Log Analytics query.
-     */
-    @JsonProperty(value = "properties.publicNetworkAccessForQuery")
-    private PublicNetworkAccessType publicNetworkAccessForQuery;
-
-    /*
-     * Indicates whether customer managed storage is mandatory for query
-     * management.
-     */
-    @JsonProperty(value = "properties.forceCmkForQuery")
-    private Boolean forceCmkForQuery;
-
-    /*
-     * List of linked private link scope resources.
-     */
-    @JsonProperty(value = "properties.privateLinkScopedResources", access = JsonProperty.Access.WRITE_ONLY)
-    private List<PrivateLinkScopedResource> privateLinkScopedResources;
-
-    /*
-     * Workspace features.
+    /**
+     * Get the innerProperties property: Workspace properties.
+     *
+     * @return the innerProperties value.
      */
-    @JsonProperty(value = "properties.features")
-    private Map<String, Object> features;
+    private WorkspaceProperties innerProperties() {
+        return this.innerProperties;
+    }
 
     /**
      * Get the tags property: Resource tags. Optional.
@@ -125,18 +62,7 @@ public WorkspacePatch withTags(Map<String, String> tags) {
      * @return the provisioningState value.
      */
     public WorkspaceEntityStatus provisioningState() {
-        return this.provisioningState;
-    }
-
-    /**
-     * Set the provisioningState property: The provisioning state of the workspace.
-     *
-     * @param provisioningState the provisioningState value to set.
-     * @return the WorkspacePatch object itself.
-     */
-    public WorkspacePatch withProvisioningState(WorkspaceEntityStatus provisioningState) {
-        this.provisioningState = provisioningState;
-        return this;
+        return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
     }
 
     /**
@@ -145,7 +71,7 @@ public WorkspacePatch withProvisioningState(WorkspaceEntityStatus provisioningSt
      * @return the customerId value.
      */
     public String customerId() {
-        return this.customerId;
+        return this.innerProperties() == null ? null : this.innerProperties().customerId();
     }
 
     /**
@@ -154,7 +80,7 @@ public String customerId() {
      * @return the sku value.
      */
     public WorkspaceSku sku() {
-        return this.sku;
+        return this.innerProperties() == null ? null : this.innerProperties().sku();
     }
 
     /**
@@ -164,7 +90,10 @@ public WorkspaceSku sku() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withSku(WorkspaceSku sku) {
-        this.sku = sku;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withSku(sku);
         return this;
     }
 
@@ -175,7 +104,7 @@ public WorkspacePatch withSku(WorkspaceSku sku) {
      * @return the retentionInDays value.
      */
     public Integer retentionInDays() {
-        return this.retentionInDays;
+        return this.innerProperties() == null ? null : this.innerProperties().retentionInDays();
     }
 
     /**
@@ -186,7 +115,10 @@ public Integer retentionInDays() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withRetentionInDays(Integer retentionInDays) {
-        this.retentionInDays = retentionInDays;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withRetentionInDays(retentionInDays);
         return this;
     }
 
@@ -196,7 +128,7 @@ public WorkspacePatch withRetentionInDays(Integer retentionInDays) {
      * @return the workspaceCapping value.
      */
     public WorkspaceCapping workspaceCapping() {
-        return this.workspaceCapping;
+        return this.innerProperties() == null ? null : this.innerProperties().workspaceCapping();
     }
 
     /**
@@ -206,7 +138,10 @@ public WorkspaceCapping workspaceCapping() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
-        this.workspaceCapping = workspaceCapping;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withWorkspaceCapping(workspaceCapping);
         return this;
     }
 
@@ -216,7 +151,7 @@ public WorkspacePatch withWorkspaceCapping(WorkspaceCapping workspaceCapping) {
      * @return the createdDate value.
      */
     public String createdDate() {
-        return this.createdDate;
+        return this.innerProperties() == null ? null : this.innerProperties().createdDate();
     }
 
     /**
@@ -225,7 +160,7 @@ public String createdDate() {
      * @return the modifiedDate value.
      */
     public String modifiedDate() {
-        return this.modifiedDate;
+        return this.innerProperties() == null ? null : this.innerProperties().modifiedDate();
     }
 
     /**
@@ -234,7 +169,7 @@ public String modifiedDate() {
      * @return the publicNetworkAccessForIngestion value.
      */
     public PublicNetworkAccessType publicNetworkAccessForIngestion() {
-        return this.publicNetworkAccessForIngestion;
+        return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccessForIngestion();
     }
 
     /**
@@ -244,7 +179,10 @@ public PublicNetworkAccessType publicNetworkAccessForIngestion() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withPublicNetworkAccessForIngestion(PublicNetworkAccessType publicNetworkAccessForIngestion) {
-        this.publicNetworkAccessForIngestion = publicNetworkAccessForIngestion;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withPublicNetworkAccessForIngestion(publicNetworkAccessForIngestion);
         return this;
     }
 
@@ -254,7 +192,7 @@ public WorkspacePatch withPublicNetworkAccessForIngestion(PublicNetworkAccessTyp
      * @return the publicNetworkAccessForQuery value.
      */
     public PublicNetworkAccessType publicNetworkAccessForQuery() {
-        return this.publicNetworkAccessForQuery;
+        return this.innerProperties() == null ? null : this.innerProperties().publicNetworkAccessForQuery();
     }
 
     /**
@@ -264,7 +202,10 @@ public PublicNetworkAccessType publicNetworkAccessForQuery() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withPublicNetworkAccessForQuery(PublicNetworkAccessType publicNetworkAccessForQuery) {
-        this.publicNetworkAccessForQuery = publicNetworkAccessForQuery;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withPublicNetworkAccessForQuery(publicNetworkAccessForQuery);
         return this;
     }
 
@@ -274,7 +215,7 @@ public WorkspacePatch withPublicNetworkAccessForQuery(PublicNetworkAccessType pu
      * @return the forceCmkForQuery value.
      */
     public Boolean forceCmkForQuery() {
-        return this.forceCmkForQuery;
+        return this.innerProperties() == null ? null : this.innerProperties().forceCmkForQuery();
     }
 
     /**
@@ -284,7 +225,10 @@ public Boolean forceCmkForQuery() {
      * @return the WorkspacePatch object itself.
      */
     public WorkspacePatch withForceCmkForQuery(Boolean forceCmkForQuery) {
-        this.forceCmkForQuery = forceCmkForQuery;
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withForceCmkForQuery(forceCmkForQuery);
         return this;
     }
 
@@ -294,7 +238,7 @@ public WorkspacePatch withForceCmkForQuery(Boolean forceCmkForQuery) {
      * @return the privateLinkScopedResources value.
      */
     public List<PrivateLinkScopedResource> privateLinkScopedResources() {
-        return this.privateLinkScopedResources;
+        return this.innerProperties() == null ? null : this.innerProperties().privateLinkScopedResources();
     }
 
     /**
@@ -302,8 +246,8 @@ public List<PrivateLinkScopedResource> privateLinkScopedResources() {
      *
      * @return the features value.
      */
-    public Map<String, Object> features() {
-        return this.features;
+    public WorkspaceFeatures features() {
+        return this.innerProperties() == null ? null : this.innerProperties().features();
     }
 
     /**
@@ -312,8 +256,38 @@ public Map<String, Object> features() {
      * @param features the features value to set.
      * @return the WorkspacePatch object itself.
      */
-    public WorkspacePatch withFeatures(Map<String, Object> features) {
-        this.features = features;
+    public WorkspacePatch withFeatures(WorkspaceFeatures features) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withFeatures(features);
+        return this;
+    }
+
+    /**
+     * Get the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @return the defaultDataCollectionRuleResourceId value.
+     */
+    public String defaultDataCollectionRuleResourceId() {
+        return this.innerProperties() == null ? null : this.innerProperties().defaultDataCollectionRuleResourceId();
+    }
+
+    /**
+     * Set the defaultDataCollectionRuleResourceId property: The resource ID of the default Data Collection Rule to use
+     * for this workspace. Expected format is -
+     * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dcrName}.
+     *
+     * @param defaultDataCollectionRuleResourceId the defaultDataCollectionRuleResourceId value to set.
+     * @return the WorkspacePatch object itself.
+     */
+    public WorkspacePatch withDefaultDataCollectionRuleResourceId(String defaultDataCollectionRuleResourceId) {
+        if (this.innerProperties() == null) {
+            this.innerProperties = new WorkspaceProperties();
+        }
+        this.innerProperties().withDefaultDataCollectionRuleResourceId(defaultDataCollectionRuleResourceId);
         return this;
     }
 
@@ -325,14 +299,8 @@ public WorkspacePatch withFeatures(Map<String, Object> features) {
     @Override
     public void validate() {
         super.validate();
-        if (sku() != null) {
-            sku().validate();
-        }
-        if (workspaceCapping() != null) {
-            workspaceCapping().validate();
-        }
-        if (privateLinkScopedResources() != null) {
-            privateLinkScopedResources().forEach(e -> e.validate());
+        if (innerProperties() != null) {
+            innerProperties().validate();
         }
     }
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBody.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBody.java
index 5c5af249f80bb..3a9d441441559 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBody.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBody.java
@@ -6,15 +6,12 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.List;
 
 /** Describes the body of a purge request for an App Insights Workspace. */
 @Fluent
 public final class WorkspacePurgeBody {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgeBody.class);
-
     /*
      * Table from which to purge data.
      */
@@ -75,16 +72,18 @@ public WorkspacePurgeBody withFilters(List<WorkspacePurgeBodyFilters> filters) {
      */
     public void validate() {
         if (table() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property table in model WorkspacePurgeBody"));
         }
         if (filters() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property filters in model WorkspacePurgeBody"));
         } else {
             filters().forEach(e -> e.validate());
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspacePurgeBody.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBodyFilters.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBodyFilters.java
index b6870c2de7f59..5fc93bd40f7e7 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBodyFilters.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgeBodyFilters.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** User-defined filters to return data which will be purged from the table. */
 @Fluent
 public final class WorkspacePurgeBodyFilters {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgeBodyFilters.class);
-
     /*
      * The column of the table over which the given query should run
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurges.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurges.java
index 8d33da7ce718e..fe446f0444515 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurges.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurges.java
@@ -70,7 +70,7 @@ Response<WorkspacePurgeResponse> purgeWithResponse(
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return status of an ongoing purge operation.
+     * @return status of an ongoing purge operation along with {@link Response}.
      */
     Response<WorkspacePurgeStatusResponse> getPurgeStatusWithResponse(
         String resourceGroupName, String workspaceName, String purgeId, Context context);
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgesPurgeHeaders.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgesPurgeHeaders.java
index 8cd928bff6bde..a1be1cb0383ae 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgesPurgeHeaders.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspacePurgesPurgeHeaders.java
@@ -5,15 +5,11 @@
 package com.azure.resourcemanager.loganalytics.models;
 
 import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The WorkspacePurgesPurgeHeaders model. */
 @Fluent
 public final class WorkspacePurgesPurgeHeaders {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspacePurgesPurgeHeaders.class);
-
     /*
      * The x-ms-status-location property.
      */
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceSku.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceSku.java
index 798779b881d43..925620353d15c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceSku.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/WorkspaceSku.java
@@ -6,14 +6,11 @@
 
 import com.azure.core.annotation.Fluent;
 import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 /** The SKU (tier) of a workspace. */
 @Fluent
 public final class WorkspaceSku {
-    @JsonIgnore private final ClientLogger logger = new ClientLogger(WorkspaceSku.class);
-
     /*
      * The name of the SKU.
      */
@@ -21,18 +18,11 @@ public final class WorkspaceSku {
     private WorkspaceSkuNameEnum name;
 
     /*
-     * The capacity reservation level for this workspace, when
+     * The capacity reservation level in GB for this workspace, when
      * CapacityReservation sku is selected.
      */
     @JsonProperty(value = "capacityReservationLevel")
-    private Integer capacityReservationLevel;
-
-    /*
-     * The maximum capacity reservation level available for this workspace,
-     * when CapacityReservation sku is selected.
-     */
-    @JsonProperty(value = "maxCapacityReservationLevel", access = JsonProperty.Access.WRITE_ONLY)
-    private Integer maxCapacityReservationLevel;
+    private CapacityReservationLevel capacityReservationLevel;
 
     /*
      * The last time when the sku was updated.
@@ -61,37 +51,27 @@ public WorkspaceSku withName(WorkspaceSkuNameEnum name) {
     }
 
     /**
-     * Get the capacityReservationLevel property: The capacity reservation level for this workspace, when
+     * Get the capacityReservationLevel property: The capacity reservation level in GB for this workspace, when
      * CapacityReservation sku is selected.
      *
      * @return the capacityReservationLevel value.
      */
-    public Integer capacityReservationLevel() {
+    public CapacityReservationLevel capacityReservationLevel() {
         return this.capacityReservationLevel;
     }
 
     /**
-     * Set the capacityReservationLevel property: The capacity reservation level for this workspace, when
+     * Set the capacityReservationLevel property: The capacity reservation level in GB for this workspace, when
      * CapacityReservation sku is selected.
      *
      * @param capacityReservationLevel the capacityReservationLevel value to set.
      * @return the WorkspaceSku object itself.
      */
-    public WorkspaceSku withCapacityReservationLevel(Integer capacityReservationLevel) {
+    public WorkspaceSku withCapacityReservationLevel(CapacityReservationLevel capacityReservationLevel) {
         this.capacityReservationLevel = capacityReservationLevel;
         return this;
     }
 
-    /**
-     * Get the maxCapacityReservationLevel property: The maximum capacity reservation level available for this
-     * workspace, when CapacityReservation sku is selected.
-     *
-     * @return the maxCapacityReservationLevel value.
-     */
-    public Integer maxCapacityReservationLevel() {
-        return this.maxCapacityReservationLevel;
-    }
-
     /**
      * Get the lastSkuUpdate property: The last time when the sku was updated.
      *
@@ -108,9 +88,11 @@ public String lastSkuUpdate() {
      */
     public void validate() {
         if (name() == null) {
-            throw logger
+            throw LOGGER
                 .logExceptionAsError(
                     new IllegalArgumentException("Missing required property name in model WorkspaceSku"));
         }
     }
+
+    private static final ClientLogger LOGGER = new ClientLogger(WorkspaceSku.class);
 }
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspaces.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspaces.java
index bb06155f00e90..eecfcbaccfb7c 100644
--- a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspaces.java
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/main/java/com/azure/resourcemanager/loganalytics/models/Workspaces.java
@@ -15,7 +15,7 @@ public interface Workspaces {
      *
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Workspace> list();
 
@@ -26,7 +26,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return the workspaces in a subscription.
+     * @return the workspaces in a subscription as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Workspace> list(Context context);
 
@@ -37,7 +37,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Workspace> listByResourceGroup(String resourceGroupName);
 
@@ -49,7 +49,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return workspaces in a resource group.
+     * @return workspaces in a resource group as paginated response with {@link PagedIterable}.
      */
     PagedIterable<Workspace> listByResourceGroup(String resourceGroupName, Context context);
 
@@ -118,7 +118,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response}.
      */
     Response<Workspace> getByResourceGroupWithResponse(String resourceGroupName, String workspaceName, Context context);
 
@@ -129,7 +129,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response}.
      */
     Workspace getById(String id);
 
@@ -141,7 +141,7 @@ public interface Workspaces {
      * @throws IllegalArgumentException thrown if parameters fail the validation.
      * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
      * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
-     * @return a workspace instance.
+     * @return a workspace instance along with {@link Response}.
      */
     Response<Workspace> getByIdWithResponse(String id, Context context);
 
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/AvailableServiceTiersListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/AvailableServiceTiersListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..6767da818dadf
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/AvailableServiceTiersListByWorkspaceSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for AvailableServiceTiers ListByWorkspace. */
+public final class AvailableServiceTiersListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesAvailableServiceTiers.json
+     */
+    /**
+     * Sample code: AvailableServiceTiers.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void availableServiceTiers(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.availableServiceTiers().listByWorkspaceWithResponse("rg1", "workspace1", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..f0cf79b4fe478
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersCreateOrUpdateSamples.java
@@ -0,0 +1,47 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.Capacity;
+import com.azure.resourcemanager.loganalytics.models.ClusterSku;
+import com.azure.resourcemanager.loganalytics.models.ClusterSkuNameEnum;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Clusters CreateOrUpdate. */
+public final class ClustersCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersCreate.json
+     */
+    /**
+     * Sample code: ClustersCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .clusters()
+            .define("oiautorest6685")
+            .withRegion("australiasoutheast")
+            .withExistingResourceGroup("oiautorest6685")
+            .withTags(mapOf("tag1", "val1"))
+            .withSku(
+                new ClusterSku()
+                    .withCapacity(Capacity.ONE_ZERO_ZERO_ZERO)
+                    .withName(ClusterSkuNameEnum.CAPACITY_RESERVATION))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersDeleteSamples.java
new file mode 100644
index 0000000000000..152dee3b2209c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Clusters Delete. */
+public final class ClustersDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersDelete.json
+     */
+    /**
+     * Sample code: ClustersDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().delete("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersGetByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersGetByResourceGroupSamples.java
new file mode 100644
index 0000000000000..fe72eb15d8b75
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersGetByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Clusters GetByResourceGroup. */
+public final class ClustersGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersGet.json
+     */
+    /**
+     * Sample code: ClustersGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListByResourceGroupSamples.java
new file mode 100644
index 0000000000000..698e8e0f41bea
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Clusters ListByResourceGroup. */
+public final class ClustersListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersListByResourceGroup.json
+     */
+    /**
+     * Sample code: ClustersGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListSamples.java
new file mode 100644
index 0000000000000..aa1d5b7234775
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Clusters List. */
+public final class ClustersListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersSubscriptionList.json
+     */
+    /**
+     * Sample code: ClustersSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.clusters().list(Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersUpdateSamples.java
new file mode 100644
index 0000000000000..04940b930c26f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ClustersUpdateSamples.java
@@ -0,0 +1,68 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Capacity;
+import com.azure.resourcemanager.loganalytics.models.Cluster;
+import com.azure.resourcemanager.loganalytics.models.ClusterSku;
+import com.azure.resourcemanager.loganalytics.models.ClusterSkuNameEnum;
+import com.azure.resourcemanager.loganalytics.models.Identity;
+import com.azure.resourcemanager.loganalytics.models.IdentityType;
+import com.azure.resourcemanager.loganalytics.models.KeyVaultProperties;
+import com.azure.resourcemanager.loganalytics.models.UserIdentityProperties;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Clusters Update. */
+public final class ClustersUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2021-06-01/examples/ClustersUpdate.json
+     */
+    /**
+     * Sample code: ClustersPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void clustersPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Cluster resource =
+            manager
+                .clusters()
+                .getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withTags(mapOf("tag1", "val1"))
+            .withIdentity(
+                new Identity()
+                    .withType(IdentityType.USER_ASSIGNED)
+                    .withUserAssignedIdentities(
+                        mapOf(
+                            "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/oiautorest6685/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity",
+                            new UserIdentityProperties())))
+            .withSku(
+                new ClusterSku()
+                    .withCapacity(Capacity.ONE_ZERO_ZERO_ZERO)
+                    .withName(ClusterSkuNameEnum.CAPACITY_RESERVATION))
+            .withKeyVaultProperties(
+                new KeyVaultProperties()
+                    .withKeyVaultUri("https://aztest2170.vault.azure.net")
+                    .withKeyName("aztest2170cert")
+                    .withKeyVersion("654ft6c4e63845cbb50fd6fg51540429")
+                    .withKeyRsaSize(1024))
+            .apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..8b62a268bfa5c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsCreateOrUpdateSamples.java
@@ -0,0 +1,29 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import java.util.Arrays;
+
+/** Samples for DataExports CreateOrUpdate. */
+public final class DataExportsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportCreateOrUpdate.json
+     */
+    /**
+     * Sample code: DataExportCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .dataExports()
+            .define("export1")
+            .withExistingWorkspace("RgTest1", "DeWnTest1234")
+            .withTableNames(Arrays.asList("Heartbeat"))
+            .withResourceId(
+                "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test")
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsDeleteSamples.java
new file mode 100644
index 0000000000000..0dd6299f48d24
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataExports Delete. */
+public final class DataExportsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportDelete.json
+     */
+    /**
+     * Sample code: DataExportDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().deleteWithResponse("RgTest1", "DeWnTest1234", "export1", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsGetSamples.java
new file mode 100644
index 0000000000000..76d9bfc5e2594
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataExports Get. */
+public final class DataExportsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportGet.json
+     */
+    /**
+     * Sample code: DataExportGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().getWithResponse("RgTest1", "DeWnTest1234", "export1", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..1c410768e331c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataExportsListByWorkspaceSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataExports ListByWorkspace. */
+public final class DataExportsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataExportListByWorkspace.json
+     */
+    /**
+     * Sample code: DataExportGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataExportGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataExports().listByWorkspace("RgTest1", "DeWnTest1234", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..c8581e2d6759f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesCreateOrUpdateSamples.java
@@ -0,0 +1,38 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.management.serializer.SerializerFactory;
+import com.azure.core.util.serializer.SerializerEncoding;
+import com.azure.resourcemanager.loganalytics.models.DataSourceKind;
+import java.io.IOException;
+
+/** Samples for DataSources CreateOrUpdate. */
+public final class DataSourcesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesCreate.json
+     */
+    /**
+     * Sample code: DataSourcesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager)
+        throws IOException {
+        manager
+            .dataSources()
+            .define("AzTestDS774")
+            .withExistingWorkspace("OIAutoRest5123", "AzTest9724")
+            .withProperties(
+                SerializerFactory
+                    .createDefaultManagementSerializerAdapter()
+                    .deserialize(
+                        "{\"LinkedResourceId\":\"/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management\"}",
+                        Object.class,
+                        SerializerEncoding.JSON))
+            .withKind(DataSourceKind.AZURE_ACTIVITY_LOG)
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesDeleteSamples.java
new file mode 100644
index 0000000000000..263a6746929fc
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataSources Delete. */
+public final class DataSourcesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesDelete.json
+     */
+    /**
+     * Sample code: DataSourcesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataSources().deleteWithResponse("OIAutoRest5123", "AzTest9724", "AzTestDS774", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesGetSamples.java
new file mode 100644
index 0000000000000..18327723f0202
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataSources Get. */
+public final class DataSourcesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesGet.json
+     */
+    /**
+     * Sample code: DataSourcesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.dataSources().getWithResponse("OIAutoRest5123", "AzTest9724", "AzTestDS774", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..227a5a9f34641
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DataSourcesListByWorkspaceSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DataSources ListByWorkspace. */
+public final class DataSourcesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/DataSourcesListByWorkspace.json
+     */
+    /**
+     * Sample code: DataSourcesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void dataSourcesListByWorkspace(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .dataSources()
+            .listByWorkspace("OIAutoRest5123", "AzTest9724", "kind='WindowsEvent'", null, Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListByResourceGroupSamples.java
new file mode 100644
index 0000000000000..9806c1159307a
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DeletedWorkspaces ListByResourceGroup. */
+public final class DeletedWorkspacesListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesListByResourceGroup.json
+     */
+    /**
+     * Sample code: WorkspacesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.deletedWorkspaces().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListSamples.java
new file mode 100644
index 0000000000000..a58f040eed043
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/DeletedWorkspacesListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for DeletedWorkspaces List. */
+public final class DeletedWorkspacesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesSubscriptionList.json
+     */
+    /**
+     * Sample code: WorkspacesSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.deletedWorkspaces().list(Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/GatewaysDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/GatewaysDeleteSamples.java
new file mode 100644
index 0000000000000..95565bba5c4cc
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/GatewaysDeleteSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Gateways Delete. */
+public final class GatewaysDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesGatewaysDelete.json
+     */
+    /**
+     * Sample code: DeleteGateways.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void deleteGateways(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .gateways()
+            .deleteWithResponse("OIAutoRest5123", "aztest5048", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksDisableSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksDisableSamples.java
new file mode 100644
index 0000000000000..b60f112540d58
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksDisableSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks Disable. */
+public final class IntelligencePacksDisableSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesDisableIntelligencePack.json
+     */
+    /**
+     * Sample code: IntelligencePacksDisable.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksDisable(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().disableWithResponse("rg1", "TestLinkWS", "ChangeTracking", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksEnableSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksEnableSamples.java
new file mode 100644
index 0000000000000..5a9a644e63ad0
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksEnableSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks Enable. */
+public final class IntelligencePacksEnableSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesEnableIntelligencePack.json
+     */
+    /**
+     * Sample code: IntelligencePacksEnable.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksEnable(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().enableWithResponse("rg1", "TestLinkWS", "ChangeTracking", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksListSamples.java
new file mode 100644
index 0000000000000..bce3cb4ebc347
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/IntelligencePacksListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for IntelligencePacks List. */
+public final class IntelligencePacksListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListIntelligencePacks.json
+     */
+    /**
+     * Sample code: IntelligencePacksList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void intelligencePacksList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.intelligencePacks().listWithResponse("rg1", "TestLinkWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..159e9be17ac4f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesCreateOrUpdateSamples.java
@@ -0,0 +1,26 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+/** Samples for LinkedServices CreateOrUpdate. */
+public final class LinkedServicesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesCreate.json
+     */
+    /**
+     * Sample code: LinkedServicesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedServices()
+            .define("Cluster")
+            .withExistingWorkspace("mms-eus", "TestLinkWS")
+            .withWriteAccessResourceId(
+                "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster")
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesDeleteSamples.java
new file mode 100644
index 0000000000000..47366e5b2f2cc
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices Delete. */
+public final class LinkedServicesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesDelete.json
+     */
+    /**
+     * Sample code: LinkedServicesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().delete("rg1", "TestLinkWS", "Cluster", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesGetSamples.java
new file mode 100644
index 0000000000000..5f27716eab025
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices Get. */
+public final class LinkedServicesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesGet.json
+     */
+    /**
+     * Sample code: LinkedServicesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().getWithResponse("mms-eus", "TestLinkWS", "Cluster", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..d618d2fa27f94
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedServicesListByWorkspaceSamples.java
@@ -0,0 +1,23 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for LinkedServices ListByWorkspace. */
+public final class LinkedServicesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedServicesListByWorkspace.json
+     */
+    /**
+     * Sample code: LinkedServicesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedServicesListByWorkspace(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedServices().listByWorkspace("mms-eus", "TestLinkWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..525c45c7207c8
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsCreateOrUpdateSamples.java
@@ -0,0 +1,32 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+import java.util.Arrays;
+
+/** Samples for LinkedStorageAccounts CreateOrUpdate. */
+public final class LinkedStorageAccountsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsCreate.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .define(DataSourceType.CUSTOM_LOGS)
+            .withExistingWorkspace("mms-eus", "testLinkStorageAccountsWS")
+            .withStorageAccountIds(
+                Arrays
+                    .asList(
+                        "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA",
+                        "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB"))
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsDeleteSamples.java
new file mode 100644
index 0000000000000..f61f09fecc9a6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsDeleteSamples.java
@@ -0,0 +1,25 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+
+/** Samples for LinkedStorageAccounts Delete. */
+public final class LinkedStorageAccountsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsDelete.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .deleteWithResponse("mms-eus", "testLinkStorageAccountsWS", DataSourceType.CUSTOM_LOGS, Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsGetSamples.java
new file mode 100644
index 0000000000000..0972a2ac456f9
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsGetSamples.java
@@ -0,0 +1,25 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.DataSourceType;
+
+/** Samples for LinkedStorageAccounts Get. */
+public final class LinkedStorageAccountsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsGet.json
+     */
+    /**
+     * Sample code: LinkedStorageAccountsGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void linkedStorageAccountsGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .linkedStorageAccounts()
+            .getWithResponse("mms-eus", "testLinkStorageAccountsWS", DataSourceType.CUSTOM_LOGS, Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..d80b7395362ca
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/LinkedStorageAccountsListByWorkspaceSamples.java
@@ -0,0 +1,23 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for LinkedStorageAccounts ListByWorkspace. */
+public final class LinkedStorageAccountsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/LinkedStorageAccountsListByWorkspace.json
+     */
+    /**
+     * Sample code: Gets list of linked storage accounts on a workspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getsListOfLinkedStorageAccountsOnAWorkspace(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.linkedStorageAccounts().listByWorkspace("mms-eus", "testLinkStorageAccountsWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ManagementGroupsListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ManagementGroupsListSamples.java
new file mode 100644
index 0000000000000..4a062b0455c3f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/ManagementGroupsListSamples.java
@@ -0,0 +1,23 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for ManagementGroups List. */
+public final class ManagementGroupsListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListManagementGroups.json
+     */
+    /**
+     * Sample code: WorkspacesListManagementGroups.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesListManagementGroups(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.managementGroups().list("rg1", "TestLinkWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationStatusesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationStatusesGetSamples.java
new file mode 100644
index 0000000000000..7cbaf590cc78a
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationStatusesGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for OperationStatuses Get. */
+public final class OperationStatusesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/OperationStatusesGet.json
+     */
+    /**
+     * Sample code: Get specific operation status.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getSpecificOperationStatus(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.operationStatuses().getWithResponse("West US", "713192d7-503f-477a-9cfe-4efc3ee2bd11", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationsListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationsListSamples.java
new file mode 100644
index 0000000000000..86c665472a477
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/OperationsListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Operations List. */
+public final class OperationsListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/OperationsListByTenant.json
+     */
+    /**
+     * Sample code: Get specific operation status.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void getSpecificOperationStatus(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.operations().list(Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesDeleteSamples.java
new file mode 100644
index 0000000000000..b1dd7861fcad7
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesDeleteSamples.java
@@ -0,0 +1,25 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Queries Delete. */
+public final class QueriesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesDelete.json
+     */
+    /**
+     * Sample code: QueryDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .deleteWithResponse(
+                "my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesGetSamples.java
new file mode 100644
index 0000000000000..04bbc64f65f5c
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesGetSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Queries Get. */
+public final class QueriesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesGet.json
+     */
+    /**
+     * Sample code: QueryGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .getWithResponse("my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesListSamples.java
new file mode 100644
index 0000000000000..d7d75bd8d04f6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Queries List. */
+public final class QueriesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesList.json
+     */
+    /**
+     * Sample code: QueryList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queries().list("my-resource-group", "my-querypack", null, true, null, Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesPutSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesPutSamples.java
new file mode 100644
index 0000000000000..48b34104099fe
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesPutSamples.java
@@ -0,0 +1,58 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Put. */
+public final class QueriesPutSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesPut.json
+     */
+    /**
+     * Sample code: QueryPut.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPut(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .define("a449f8af-8e64-4b3a-9b16-5a7165ff98c4")
+            .withExistingQueryPack("my-resource-group", "my-querypack")
+            .withTags(mapOf("my-label", Arrays.asList("label1"), "my-other-label", Arrays.asList("label2")))
+            .withDisplayName("Exceptions - New in the last 24 hours")
+            .withDescription("my description")
+            .withBody(
+                "let newExceptionsTimeRange = 1d;\n"
+                    + "let timeRangeToCheckBefore = 7d;\n"
+                    + "exceptions\n"
+                    + "| where timestamp < ago(timeRangeToCheckBefore)\n"
+                    + "| summarize count() by problemId\n"
+                    + "| join kind= rightanti (\n"
+                    + "exceptions\n"
+                    + "| where timestamp >= ago(newExceptionsTimeRange)\n"
+                    + "| extend stack = tostring(details[0].rawStack)\n"
+                    + "| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by"
+                    + " problemId  \n"
+                    + ") on problemId \n"
+                    + "| order by  count_ desc\n")
+            .withRelated(new LogAnalyticsQueryPackQueryPropertiesRelated().withCategories(Arrays.asList("analytics")))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesSearchSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesSearchSamples.java
new file mode 100644
index 0000000000000..77093bd1c7144
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesSearchSamples.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchProperties;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuerySearchPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Search. */
+public final class QueriesSearchSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesSearch.json
+     */
+    /**
+     * Sample code: QuerySearch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void querySearch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queries()
+            .search(
+                "my-resource-group",
+                "my-querypack",
+                new LogAnalyticsQueryPackQuerySearchProperties()
+                    .withRelated(
+                        new LogAnalyticsQueryPackQuerySearchPropertiesRelated()
+                            .withCategories(Arrays.asList("other", "analytics")))
+                    .withTags(mapOf("my-label", Arrays.asList("label1"))),
+                3L,
+                true,
+                null,
+                Context.NONE);
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesUpdateSamples.java
new file mode 100644
index 0000000000000..e625f227d3cbb
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueriesUpdateSamples.java
@@ -0,0 +1,64 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQuery;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPackQueryPropertiesRelated;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Queries Update. */
+public final class QueriesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPackQueriesUpdate.json
+     */
+    /**
+     * Sample code: QueryPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        LogAnalyticsQueryPackQuery resource =
+            manager
+                .queries()
+                .getWithResponse(
+                    "my-resource-group", "my-querypack", "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withTags(mapOf("my-label", Arrays.asList("label1"), "my-other-label", Arrays.asList("label2")))
+            .withDisplayName("Exceptions - New in the last 24 hours")
+            .withDescription("my description")
+            .withBody(
+                "let newExceptionsTimeRange = 1d;\n"
+                    + "let timeRangeToCheckBefore = 7d;\n"
+                    + "exceptions\n"
+                    + "| where timestamp < ago(timeRangeToCheckBefore)\n"
+                    + "| summarize count() by problemId\n"
+                    + "| join kind= rightanti (\n"
+                    + "exceptions\n"
+                    + "| where timestamp >= ago(newExceptionsTimeRange)\n"
+                    + "| extend stack = tostring(details[0].rawStack)\n"
+                    + "| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by"
+                    + " problemId  \n"
+                    + ") on problemId \n"
+                    + "| order by  count_ desc\n")
+            .withRelated(new LogAnalyticsQueryPackQueryPropertiesRelated().withCategories(Arrays.asList("analytics")))
+            .apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..38be9525f6d13
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksCreateOrUpdateSamples.java
@@ -0,0 +1,57 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for QueryPacks CreateOrUpdate. */
+public final class QueryPacksCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksCreate.json
+     */
+    /**
+     * Sample code: QueryPackCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queryPacks()
+            .define("my-querypack")
+            .withRegion("South Central US")
+            .withExistingResourceGroup("my-resource-group")
+            .create();
+    }
+
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksUpdate.json
+     */
+    /**
+     * Sample code: QueryPackUpdate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackUpdate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .queryPacks()
+            .define("my-querypack")
+            .withRegion("South Central US")
+            .withExistingResourceGroup("my-resource-group")
+            .withTags(mapOf("Tag1", "Value1"))
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksDeleteSamples.java
new file mode 100644
index 0000000000000..b825ea55093a6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks Delete. */
+public final class QueryPacksDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksDelete.json
+     */
+    /**
+     * Sample code: QueryPacksDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPacksDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().deleteWithResponse("my-resource-group", "my-querypack", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksGetByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksGetByResourceGroupSamples.java
new file mode 100644
index 0000000000000..1cebcee466830
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksGetByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks GetByResourceGroup. */
+public final class QueryPacksGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksGet.json
+     */
+    /**
+     * Sample code: QueryPackGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().getByResourceGroupWithResponse("my-resource-group", "my-querypack", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListByResourceGroupSamples.java
new file mode 100644
index 0000000000000..62229174b3e8d
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListByResourceGroupSamples.java
@@ -0,0 +1,23 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks ListByResourceGroup. */
+public final class QueryPacksListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksListByResourceGroup.json
+     */
+    /**
+     * Sample code: QueryPackListByResourceGroup.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackListByResourceGroup(
+        com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().listByResourceGroup("my-resource-group", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListSamples.java
new file mode 100644
index 0000000000000..142820ba3d8eb
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for QueryPacks List. */
+public final class QueryPacksListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksList.json
+     */
+    /**
+     * Sample code: QueryPacksList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPacksList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.queryPacks().list(Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksUpdateTagsSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksUpdateTagsSamples.java
new file mode 100644
index 0000000000000..a9f2973354dde
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/QueryPacksUpdateTagsSamples.java
@@ -0,0 +1,41 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.LogAnalyticsQueryPack;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for QueryPacks UpdateTags. */
+public final class QueryPacksUpdateTagsSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2019-09-01/examples/QueryPacksUpdateTagsOnly.json
+     */
+    /**
+     * Sample code: QueryPackUpdateTagsOnly.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void queryPackUpdateTagsOnly(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        LogAnalyticsQueryPack resource =
+            manager
+                .queryPacks()
+                .getByResourceGroupWithResponse("my-resource-group", "my-querypack", Context.NONE)
+                .getValue();
+        resource.update().withTags(mapOf("Tag1", "Value1", "Tag2", "Value2")).apply();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..feb710f25f408
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesCreateOrUpdateSamples.java
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.Tag;
+import java.util.Arrays;
+
+/** Samples for SavedSearches CreateOrUpdate. */
+public final class SavedSearchesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesSavedSearchesCreateOrUpdate.json
+     */
+    /**
+     * Sample code: SavedSearchCreateOrUpdate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchCreateOrUpdate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .define("00000000-0000-0000-0000-00000000000")
+            .withExistingWorkspace("TestRG", "TestWS")
+            .withCategory("Saved Search Test Category")
+            .withDisplayName("Create or Update Saved Search Test")
+            .withQuery("Heartbeat | summarize Count() by Computer | take a")
+            .withTags(Arrays.asList(new Tag().withName("Group").withValue("Computer")))
+            .withFunctionAlias("heartbeat_func")
+            .withFunctionParameters("a:int=1")
+            .withVersion(2L)
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesDeleteSamples.java
new file mode 100644
index 0000000000000..5e92dc4fc78c2
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesDeleteSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches Delete. */
+public final class SavedSearchesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesDeleteSavedSearches.json
+     */
+    /**
+     * Sample code: SavedSearchesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .deleteWithResponse("TestRG", "TestWS", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesGetSamples.java
new file mode 100644
index 0000000000000..13a11aaf8c9a0
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesGetSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches Get. */
+public final class SavedSearchesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesSavedSearchesGet.json
+     */
+    /**
+     * Sample code: SavedSearchesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .savedSearches()
+            .getWithResponse("TestRG", "TestWS", "00000000-0000-0000-0000-00000000000", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..490d1acabb6ed
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SavedSearchesListByWorkspaceSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for SavedSearches ListByWorkspace. */
+public final class SavedSearchesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/SavedSearchesListByWorkspace.json
+     */
+    /**
+     * Sample code: SavedSearchesList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void savedSearchesList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.savedSearches().listByWorkspaceWithResponse("TestRG", "TestWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SchemaGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SchemaGetSamples.java
new file mode 100644
index 0000000000000..8c084078b77ec
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SchemaGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Schema Get. */
+public final class SchemaGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/SavedSearchesGetSchema.json
+     */
+    /**
+     * Sample code: WorkspacesGetSchema.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGetSchema(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.schemas().getWithResponse("mms-eus", "atlantisdemo", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationGetSharedKeysSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationGetSharedKeysSamples.java
new file mode 100644
index 0000000000000..54d8dbb45b571
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationGetSharedKeysSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for SharedKeysOperation GetSharedKeys. */
+public final class SharedKeysOperationGetSharedKeysSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesGetSharedKeys.json
+     */
+    /**
+     * Sample code: SharedKeysList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void sharedKeysList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.sharedKeysOperations().getSharedKeysWithResponse("rg1", "TestLinkWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationRegenerateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationRegenerateSamples.java
new file mode 100644
index 0000000000000..73405bc5e328b
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/SharedKeysOperationRegenerateSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for SharedKeysOperation Regenerate. */
+public final class SharedKeysOperationRegenerateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesRegenerateSharedKeys.json
+     */
+    /**
+     * Sample code: RegenerateSharedKeys.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void regenerateSharedKeys(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.sharedKeysOperations().regenerateWithResponse("rg1", "workspace1", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..81d88ae4da847
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsCreateOrUpdateSamples.java
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.StorageAccount;
+import java.util.Arrays;
+
+/** Samples for StorageInsightConfigs CreateOrUpdate. */
+public final class StorageInsightConfigsCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsCreateOrUpdate.json
+     */
+    /**
+     * Sample code: StorageInsightsCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .storageInsightConfigs()
+            .define("AzTestSI1110")
+            .withExistingWorkspace("OIAutoRest5123", "aztest5048")
+            .withContainers(Arrays.asList("wad-iis-logfiles"))
+            .withTables(Arrays.asList("WADWindowsEventLogsTable", "LinuxSyslogVer2v0"))
+            .withStorageAccount(
+                new StorageAccount()
+                    .withId(
+                        "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945")
+                    .withKey("1234"))
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsDeleteSamples.java
new file mode 100644
index 0000000000000..be25c5eb9070d
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsDeleteSamples.java
@@ -0,0 +1,24 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs Delete. */
+public final class StorageInsightConfigsDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsDelete.json
+     */
+    /**
+     * Sample code: StorageInsightsDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .storageInsightConfigs()
+            .deleteWithResponse("OIAutoRest5123", "aztest5048", "AzTestSI1110", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsGetSamples.java
new file mode 100644
index 0000000000000..0591beab3d5d8
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs Get. */
+public final class StorageInsightConfigsGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsGet.json
+     */
+    /**
+     * Sample code: StorageInsightsGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.storageInsightConfigs().getWithResponse("OIAutoRest5123", "aztest5048", "AzTestSI1110", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..414bbc9f71320
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/StorageInsightConfigsListByWorkspaceSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for StorageInsightConfigs ListByWorkspace. */
+public final class StorageInsightConfigsListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/StorageInsightsListByWorkspace.json
+     */
+    /**
+     * Sample code: StorageInsightsList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void storageInsightsList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.storageInsightConfigs().listByWorkspace("OIAutoRest5123", "aztest5048", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..efc71d8cd6de5
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesCreateOrUpdateSamples.java
@@ -0,0 +1,35 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.Column;
+import com.azure.resourcemanager.loganalytics.models.ColumnTypeEnum;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import java.util.Arrays;
+
+/** Samples for Tables CreateOrUpdate. */
+public final class TablesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesUpsert.json
+     */
+    /**
+     * Sample code: TablesUpsert.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesUpsert(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .tables()
+            .define("AzureNetworkFlow")
+            .withExistingWorkspace("oiautorest6685", "oiautorest6685")
+            .withRetentionInDays(45)
+            .withTotalRetentionInDays(70)
+            .withSchema(
+                new Schema()
+                    .withName("AzureNetworkFlow")
+                    .withColumns(Arrays.asList(new Column().withName("MyNewColumn").withType(ColumnTypeEnum.GUID))))
+            .create();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesDeleteSamples.java
new file mode 100644
index 0000000000000..81d3ce82fdfe4
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Tables Delete. */
+public final class TablesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesDelete.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().delete("oiautorest6685", "oiautorest6685", "table1_CL", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesGetSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesGetSamples.java
new file mode 100644
index 0000000000000..e9c34cce0ebeb
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesGetSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Tables Get. */
+public final class TablesGetSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesGet.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().getWithResponse("oiautorest6685", "oiautorest6685", "table1_SRCH", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesListByWorkspaceSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesListByWorkspaceSamples.java
new file mode 100644
index 0000000000000..9c1e12be1afec
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesListByWorkspaceSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Tables ListByWorkspace. */
+public final class TablesListByWorkspaceSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesList.json
+     */
+    /**
+     * Sample code: TablesListByWorkspace.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesListByWorkspace(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().listByWorkspace("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesMigrateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesMigrateSamples.java
new file mode 100644
index 0000000000000..f381b74921d97
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesMigrateSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Tables Migrate. */
+public final class TablesMigrateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesMigrate.json
+     */
+    /**
+     * Sample code: TablesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.tables().migrateWithResponse("oiautorest6685", "oiautorest6685", "table1_CL", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesUpdateSamples.java
new file mode 100644
index 0000000000000..378899896a8f0
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/TablesUpdateSamples.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Column;
+import com.azure.resourcemanager.loganalytics.models.ColumnTypeEnum;
+import com.azure.resourcemanager.loganalytics.models.Schema;
+import com.azure.resourcemanager.loganalytics.models.Table;
+import java.util.Arrays;
+
+/** Samples for Tables Update. */
+public final class TablesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/TablesUpsert.json
+     */
+    /**
+     * Sample code: TablesUpsert.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void tablesUpsert(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Table resource =
+            manager
+                .tables()
+                .getWithResponse("oiautorest6685", "oiautorest6685", "AzureNetworkFlow", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withRetentionInDays(45)
+            .withTotalRetentionInDays(70)
+            .withSchema(
+                new Schema()
+                    .withName("AzureNetworkFlow")
+                    .withColumns(Arrays.asList(new Column().withName("MyNewColumn").withType(ColumnTypeEnum.GUID))))
+            .apply();
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/UsagesListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/UsagesListSamples.java
new file mode 100644
index 0000000000000..19a3783d62b2f
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/UsagesListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Usages List. */
+public final class UsagesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesListUsages.json
+     */
+    /**
+     * Sample code: UsagesList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void usagesList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.usages().list("rg1", "TestLinkWS", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgeGetPurgeStatusSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgeGetPurgeStatusSamples.java
new file mode 100644
index 0000000000000..7141f97c990c8
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgeGetPurgeStatusSamples.java
@@ -0,0 +1,25 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for WorkspacePurge GetPurgeStatus. */
+public final class WorkspacePurgeGetPurgeStatusSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesPurgeOperation.json
+     */
+    /**
+     * Sample code: WorkspacePurgeOperation.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacePurgeOperation(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspacePurges()
+            .getPurgeStatusWithResponse(
+                "OIAutoRest5123", "aztest5048", "purge-970318e7-b859-4edb-8903-83b1b54d0b74", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgePurgeSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgePurgeSamples.java
new file mode 100644
index 0000000000000..6e95ae4d83b98
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacePurgePurgeSamples.java
@@ -0,0 +1,39 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.WorkspacePurgeBody;
+import com.azure.resourcemanager.loganalytics.models.WorkspacePurgeBodyFilters;
+import java.util.Arrays;
+
+/** Samples for WorkspacePurge Purge. */
+public final class WorkspacePurgePurgeSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2020-08-01/examples/WorkspacesPurge.json
+     */
+    /**
+     * Sample code: WorkspacePurge.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacePurge(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspacePurges()
+            .purgeWithResponse(
+                "OIAutoRest5123",
+                "aztest5048",
+                new WorkspacePurgeBody()
+                    .withTable("Heartbeat")
+                    .withFilters(
+                        Arrays
+                            .asList(
+                                new WorkspacePurgeBodyFilters()
+                                    .withColumn("TimeGenerated")
+                                    .withOperator(">")
+                                    .withValue("2017-09-01T00:00:00"))),
+                Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesCreateOrUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesCreateOrUpdateSamples.java
new file mode 100644
index 0000000000000..b0c7d01462b02
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesCreateOrUpdateSamples.java
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSkuNameEnum;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Workspaces CreateOrUpdate. */
+public final class WorkspacesCreateOrUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesCreate.json
+     */
+    /**
+     * Sample code: WorkspacesCreate.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesCreate(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager
+            .workspaces()
+            .define("oiautorest6685")
+            .withRegion("australiasoutheast")
+            .withExistingResourceGroup("oiautorest6685")
+            .withTags(mapOf("tag1", "val1"))
+            .withSku(new WorkspaceSku().withName(WorkspaceSkuNameEnum.PER_GB2018))
+            .withRetentionInDays(30)
+            .create();
+    }
+
+    @SuppressWarnings("unchecked")
+    private static <T> Map<String, T> mapOf(Object... inputs) {
+        Map<String, T> map = new HashMap<>();
+        for (int i = 0; i < inputs.length; i += 2) {
+            String key = (String) inputs[i];
+            T value = (T) inputs[i + 1];
+            map.put(key, value);
+        }
+        return map;
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesDeleteSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesDeleteSamples.java
new file mode 100644
index 0000000000000..0460f6b2b73c1
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesDeleteSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces Delete. */
+public final class WorkspacesDeleteSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesDelete.json
+     */
+    /**
+     * Sample code: WorkspacesDelete.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesDelete(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().delete("oiautorest6685", "oiautorest6685", null, Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesGetByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesGetByResourceGroupSamples.java
new file mode 100644
index 0000000000000..d9ab3d4b992d6
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesGetByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces GetByResourceGroup. */
+public final class WorkspacesGetByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesGet.json
+     */
+    /**
+     * Sample code: WorkspaceGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspaceGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListByResourceGroupSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListByResourceGroupSamples.java
new file mode 100644
index 0000000000000..e40b317903bc1
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListByResourceGroupSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces ListByResourceGroup. */
+public final class WorkspacesListByResourceGroupSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesListByResourceGroup.json
+     */
+    /**
+     * Sample code: WorkspacesGet.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesGet(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().listByResourceGroup("oiautorest6685", Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListSamples.java
new file mode 100644
index 0000000000000..04ffc94666006
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesListSamples.java
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+
+/** Samples for Workspaces List. */
+public final class WorkspacesListSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesSubscriptionList.json
+     */
+    /**
+     * Sample code: WorkspacesSubscriptionList.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesSubscriptionList(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        manager.workspaces().list(Context.NONE);
+    }
+}
diff --git a/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesUpdateSamples.java b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesUpdateSamples.java
new file mode 100644
index 0000000000000..14feffd5fe4a9
--- /dev/null
+++ b/sdk/loganalytics/azure-resourcemanager-loganalytics/src/samples/java/com/azure/resourcemanager/loganalytics/generated/WorkspacesUpdateSamples.java
@@ -0,0 +1,36 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.loganalytics.generated;
+
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.loganalytics.models.Workspace;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceCapping;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSku;
+import com.azure.resourcemanager.loganalytics.models.WorkspaceSkuNameEnum;
+
+/** Samples for Workspaces Update. */
+public final class WorkspacesUpdateSamples {
+    /*
+     * x-ms-original-file: specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2021-12-01-preview/examples/WorkspacesUpdate.json
+     */
+    /**
+     * Sample code: WorkspacesPatch.
+     *
+     * @param manager Entry point to LogAnalyticsManager.
+     */
+    public static void workspacesPatch(com.azure.resourcemanager.loganalytics.LogAnalyticsManager manager) {
+        Workspace resource =
+            manager
+                .workspaces()
+                .getByResourceGroupWithResponse("oiautorest6685", "oiautorest6685", Context.NONE)
+                .getValue();
+        resource
+            .update()
+            .withSku(new WorkspaceSku().withName(WorkspaceSkuNameEnum.PER_GB2018))
+            .withRetentionInDays(30)
+            .withWorkspaceCapping(new WorkspaceCapping().withDailyQuotaGb(-1.0))
+            .apply();
+    }
+}