diff --git a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/api/Azure.ResourceManager.ApiManagement.netstandard2.0.cs b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/api/Azure.ResourceManager.ApiManagement.netstandard2.0.cs index 6246d7ef5c46..fa1dde2d220f 100644 --- a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/api/Azure.ResourceManager.ApiManagement.netstandard2.0.cs +++ b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/api/Azure.ResourceManager.ApiManagement.netstandard2.0.cs @@ -2179,6 +2179,7 @@ public DiagnosticContractData() { } public Azure.ResourceManager.ApiManagement.Models.HttpCorrelationProtocol? HttpCorrelationProtocol { get { throw null; } set { } } public bool? LogClientIP { get { throw null; } set { } } public string LoggerId { get { throw null; } set { } } + public bool? Metrics { get { throw null; } set { } } public Azure.ResourceManager.ApiManagement.Models.OperationNameFormat? OperationNameFormat { get { throw null; } set { } } public Azure.ResourceManager.ApiManagement.Models.SamplingSettings Sampling { get { throw null; } set { } } public Azure.ResourceManager.ApiManagement.Models.TraceVerbosityLevel? Verbosity { get { throw null; } set { } } diff --git a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/DiagnosticContractData.cs b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/DiagnosticContractData.cs index 709274066407..af517666cbcf 100644 --- a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/DiagnosticContractData.cs +++ b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/DiagnosticContractData.cs @@ -33,7 +33,8 @@ public DiagnosticContractData() /// Sets correlation protocol to use for Application Insights diagnostics. /// The verbosity level applied to traces emitted by trace policies. /// The format of the Operation Name for Application Insights telemetries. Default is Name. - internal DiagnosticContractData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, AlwaysLog? alwaysLog, string loggerId, SamplingSettings sampling, PipelineDiagnosticSettings frontend, PipelineDiagnosticSettings backend, bool? logClientIP, HttpCorrelationProtocol? httpCorrelationProtocol, TraceVerbosityLevel? verbosity, OperationNameFormat? operationNameFormat) : base(id, name, resourceType, systemData) + /// Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings. + internal DiagnosticContractData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, AlwaysLog? alwaysLog, string loggerId, SamplingSettings sampling, PipelineDiagnosticSettings frontend, PipelineDiagnosticSettings backend, bool? logClientIP, HttpCorrelationProtocol? httpCorrelationProtocol, TraceVerbosityLevel? verbosity, OperationNameFormat? operationNameFormat, bool? metrics) : base(id, name, resourceType, systemData) { AlwaysLog = alwaysLog; LoggerId = loggerId; @@ -44,6 +45,7 @@ internal DiagnosticContractData(ResourceIdentifier id, string name, ResourceType HttpCorrelationProtocol = httpCorrelationProtocol; Verbosity = verbosity; OperationNameFormat = operationNameFormat; + Metrics = metrics; } /// Specifies for what type of messages sampling settings should not apply. @@ -64,5 +66,7 @@ internal DiagnosticContractData(ResourceIdentifier id, string name, ResourceType public TraceVerbosityLevel? Verbosity { get; set; } /// The format of the Operation Name for Application Insights telemetries. Default is Name. public OperationNameFormat? OperationNameFormat { get; set; } + /// Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings. + public bool? Metrics { get; set; } } } diff --git a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/Models/DiagnosticContractData.Serialization.cs b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/Models/DiagnosticContractData.Serialization.cs index bfb2fc03d307..206b94f508ec 100644 --- a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/Models/DiagnosticContractData.Serialization.cs +++ b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/Generated/Models/DiagnosticContractData.Serialization.cs @@ -64,6 +64,11 @@ void IUtf8JsonSerializable.Write(Utf8JsonWriter writer) writer.WritePropertyName("operationNameFormat"); writer.WriteStringValue(OperationNameFormat.Value.ToString()); } + if (Optional.IsDefined(Metrics)) + { + writer.WritePropertyName("metrics"); + writer.WriteBooleanValue(Metrics.Value); + } writer.WriteEndObject(); writer.WriteEndObject(); } @@ -83,6 +88,7 @@ internal static DiagnosticContractData DeserializeDiagnosticContractData(JsonEle Optional httpCorrelationProtocol = default; Optional verbosity = default; Optional operationNameFormat = default; + Optional metrics = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) @@ -204,11 +210,21 @@ internal static DiagnosticContractData DeserializeDiagnosticContractData(JsonEle operationNameFormat = new OperationNameFormat(property0.Value.GetString()); continue; } + if (property0.NameEquals("metrics")) + { + if (property0.Value.ValueKind == JsonValueKind.Null) + { + property0.ThrowNonNullablePropertyIsNull(); + continue; + } + metrics = property0.Value.GetBoolean(); + continue; + } } continue; } } - return new DiagnosticContractData(id, name, type, systemData.Value, Optional.ToNullable(alwaysLog), loggerId.Value, sampling.Value, frontend.Value, backend.Value, Optional.ToNullable(logClientIP), Optional.ToNullable(httpCorrelationProtocol), Optional.ToNullable(verbosity), Optional.ToNullable(operationNameFormat)); + return new DiagnosticContractData(id, name, type, systemData.Value, Optional.ToNullable(alwaysLog), loggerId.Value, sampling.Value, frontend.Value, backend.Value, Optional.ToNullable(logClientIP), Optional.ToNullable(httpCorrelationProtocol), Optional.ToNullable(verbosity), Optional.ToNullable(operationNameFormat), Optional.ToNullable(metrics)); } } } diff --git a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/autorest.md b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/autorest.md index a2ad61e49bb1..0a69a378e7b6 100644 --- a/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/autorest.md +++ b/sdk/apimanagement/Azure.ResourceManager.ApiManagement/src/autorest.md @@ -8,7 +8,7 @@ azure-arm: true csharp: true library-name: ApiManagement namespace: Azure.ResourceManager.ApiManagement -require: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/apimanagement/resource-manager/readme.md +require: /mnt/vss/_work/1/s/azure-rest-api-specs/specification/apimanagement/resource-manager/readme.md tag: package-2021-08 output-folder: $(this-folder)/Generated clear-output-folder: true