Proposed Pull Request Change

ms.service ms.topic ms.date author ms.author
resource-graph include 05/30/2023 jaspkaur28 jaspkaur
📄 Document Links
GitHub View on GitHub Microsoft Learn View on Microsoft Learn
Content Truncation Detected
The generated rewrite appears to be incomplete.
Original lines: -
Output lines: -
Ratio: -
Raw New Markdown
Generating updated version of doc...
Rendered New Markdown
Generating updated version of doc...
+0 -0
+0 -0
--- ms.service: resource-graph ms.topic: include ms.date: 05/30/2023 author: jaspkaur28 ms.author: jaspkaur --- ### Changes in health of virtual machines and annotations in Virtual Instance for SAP This query fetches the historical changes in availability health and corresponding annotations of all virtual machines of an SAP system given the SID of a [Virtual Instance for SAP](/azure/sap/center-sap-solutions/overview). Replace `mySubscriptionId` with your subscription ID, and replace `myResourceId` with the resource ID of your Virtual Instance for SAP. ```kusto Resources | where subscriptionId == 'mySubscriptionId' | where type startswith 'microsoft.workloads/sapvirtualinstances/' | where id startswith 'myResourceId' | mv-expand d = properties.vmDetails | project VmId = tolower(d.virtualMachineId) | join kind = leftouter ( HealthResourceChanges | where subscriptionId == 'mySubscriptionId' | where id !has '/virtualMachineScaleSets/' | where id has '/virtualMachines/' | extend timestamp = todatetime(properties.changeAttributes.timestamp) | extend VmId = tolower(tostring(split(id, '/providers/Microsoft.ResourceHealth/')[0])) | where properties has 'properties.availabilityState' or properties has 'properties.annotationName' | extend HealthChangeType = iff(properties has 'properties.availabilityState', 'Availability', 'Annotation') | extend ChangeType = tostring(properties.changeType) | where ChangeType == 'Update' or ChangeType == 'Delete') on $left.VmId == $right.VmId | extend Changes = parse_json(tostring(properties.changes)) | extend AvailabilityStateJson = parse_json(tostring(Changes['properties.availabilityState'])) | extend AnnotationNameJson = parse_json(tostring(Changes['properties.annotationName'])) | extend AnnotationSummary = parse_json(tostring(Changes['properties.summary'])) | extend AnnotationReason = parse_json(tostring(Changes['properties.reason'])) | extend AnnotationImpactType = parse_json(tostring(Changes['properties.impactType'])) | extend AnnotationContext = parse_json(tostring(Changes['properties.context'])) | extend AnnotationCategory = parse_json(tostring(Changes['properties.category'])) | extend AvailabilityStatePreviousValue = tostring(AvailabilityStateJson.previousValue) | extend AvailabilityStateCurrentValue = tostring(AvailabilityStateJson.newValue) | extend AnnotationNamePreviousValue = tostring(AnnotationNameJson.previousValue) | extend AnnotationNameCurrentValue = tostring(AnnotationNameJson.newValue) | extend AnnotationSummaryCurrentValue = tostring(AnnotationSummary.newValue) | extend AnnotationReasonCurrentValue = tostring(AnnotationReason.newValue) | extend AnnotationImpactTypeCurrentValue = tostring(AnnotationImpactType.newValue) | extend AnnotationContextCurrentValue = tostring(AnnotationContext.newValue) | extend AnnotationCategoryCurrentValue = tostring(AnnotationCategory.newValue) | project id = VmId, timestamp, ChangeType, AvailabilityStateCurrentValue, AnnotationNameCurrentValue, AnnotationSummaryCurrentValue, AnnotationReasonCurrentValue, AnnotationImpactTypeCurrentValue, AnnotationContextCurrentValue, AnnotationCategoryCurrentValue, Changes | order by id, timestamp asc | project-rename ['Virtual Machine ID'] = id, UTCTimeStamp = timestamp, ['Change Type'] = ChangeType, ['Availability State'] = AvailabilityStateCurrentValue, ['Summary'] = AnnotationSummaryCurrentValue, ['Reason'] = AnnotationReasonCurrentValue, ['Impact Type'] = AnnotationImpactTypeCurrentValue, Category = AnnotationCategoryCurrentValue, Context = AnnotationContextCurrentValue ``` # [Azure CLI](#tab/azure-cli) ```azurecli-interactive az graph query -q "Resources | where subscriptionId == 'mySubscriptionId' | where type startswith 'microsoft.workloads/sapvirtualinstances/' | where id startswith 'myResourceId' | mv-expand d = properties.vmDetails | project VmId = tolower(d.virtualMachineId) | join kind = leftouter (HealthResourceChanges | where subscriptionId == 'mySubscriptionId' | where id !has '/virtualMachineScaleSets/' | where id has '/virtualMachines/' | extend timestamp = todatetime(properties.changeAttributes.timestamp) | extend VmId = tolower(tostring(split(id, '/providers/Microsoft.ResourceHealth/')[0])) | where properties has 'properties.availabilityState' or properties has 'properties.annotationName' | extend HealthChangeType = iff(properties has 'properties.availabilityState', 'Availability', 'Annotation') | extend ChangeType = tostring(properties.changeType) | where ChangeType == 'Update' or ChangeType == 'Delete') on \$left.VmId == \$right.VmId | extend Changes = parse_json(tostring(properties.changes)) | extend AvailabilityStateJson = parse_json(tostring(Changes['properties.availabilityState'])) | extend AnnotationNameJson = parse_json(tostring(Changes['properties.annotationName'])) | extend AnnotationSummary = parse_json(tostring(Changes['properties.summary'])) | extend AnnotationReason = parse_json(tostring(Changes['properties.reason'])) | extend AnnotationImpactType = parse_json(tostring(Changes['properties.impactType'])) | extend AnnotationContext = parse_json(tostring(Changes['properties.context'])) | extend AnnotationCategory = parse_json(tostring(Changes['properties.category'])) | extend AvailabilityStatePreviousValue = tostring(AvailabilityStateJson.previousValue) | extend AvailabilityStateCurrentValue = tostring(AvailabilityStateJson.newValue) | extend AnnotationNamePreviousValue = tostring(AnnotationNameJson.previousValue) | extend AnnotationNameCurrentValue = tostring(AnnotationNameJson.newValue) | extend AnnotationSummaryCurrentValue = tostring(AnnotationSummary.newValue) | extend AnnotationReasonCurrentValue = tostring(AnnotationReason.newValue) | extend AnnotationImpactTypeCurrentValue = tostring(AnnotationImpactType.newValue) | extend AnnotationContextCurrentValue = tostring(AnnotationContext.newValue) | extend AnnotationCategoryCurrentValue = tostring(AnnotationCategory.newValue) | project id = VmId, timestamp, ChangeType, AvailabilityStateCurrentValue, AnnotationNameCurrentValue, AnnotationSummaryCurrentValue, AnnotationReasonCurrentValue, AnnotationImpactTypeCurrentValue, AnnotationContextCurrentValue, AnnotationCategoryCurrentValue, Changes | order by id, timestamp asc | project-rename ['Virtual Machine ID'] = id, UTCTimeStamp = timestamp, ['Change Type'] = ChangeType, ['Availability State'] = AvailabilityStateCurrentValue, ['Summary'] = AnnotationSummaryCurrentValue, ['Reason'] = AnnotationReasonCurrentValue, ['Impact Type'] = AnnotationImpactTypeCurrentValue, Category = AnnotationCategoryCurrentValue, Context = AnnotationContextCurrentValue" ``` # [Azure PowerShell](#tab/azure-powershell) ```azurepowershell-interactive Search-AzGraph -Query "Resources | where subscriptionId == 'mySubscriptionId' | where type startswith 'microsoft.workloads/sapvirtualinstances/' | where id startswith 'myResourceId' | mv-expand d = properties.vmDetails | project VmId = tolower(d.virtualMachineId) | join kind = leftouter (HealthResourceChanges | where subscriptionId == 'mySubscriptionId' | where id !has '/virtualMachineScaleSets/' | where id has '/virtualMachines/' | extend timestamp = todatetime(properties.changeAttributes.timestamp) | extend VmId = tolower(tostring(split(id, '/providers/Microsoft.ResourceHealth/')[0])) | where properties has 'properties.availabilityState' or properties has 'properties.annotationName' | extend HealthChangeType = iff(properties has 'properties.availabilityState', 'Availability', 'Annotation') | extend ChangeType = tostring(properties.changeType) | where ChangeType == 'Update' or ChangeType == 'Delete') on `$left.VmId == `$right.VmId | extend Changes = parse_json(tostring(properties.changes)) | extend AvailabilityStateJson = parse_json(tostring(Changes['properties.availabilityState'])) | extend AnnotationNameJson = parse_json(tostring(Changes['properties.annotationName'])) | extend AnnotationSummary = parse_json(tostring(Changes['properties.summary'])) | extend AnnotationReason = parse_json(tostring(Changes['properties.reason'])) | extend AnnotationImpactType = parse_json(tostring(Changes['properties.impactType'])) | extend AnnotationContext = parse_json(tostring(Changes['properties.context'])) | extend AnnotationCategory = parse_json(tostring(Changes['properties.category'])) | extend AvailabilityStatePreviousValue = tostring(AvailabilityStateJson.previousValue) | extend AvailabilityStateCurrentValue = tostring(AvailabilityStateJson.newValue) | extend AnnotationNamePreviousValue = tostring(AnnotationNameJson.previousValue) | extend AnnotationNameCurrentValue = tostring(AnnotationNameJson.newValue) | extend AnnotationSummaryCurrentValue = tostring(AnnotationSummary.newValue) | extend AnnotationReasonCurrentValue = tostring(AnnotationReason.newValue) | extend AnnotationImpactTypeCurrentValue = tostring(AnnotationImpactType.newValue) | extend AnnotationContextCurrentValue = tostring(AnnotationContext.newValue) | extend AnnotationCategoryCurrentValue = tostring(AnnotationCategory.newValue) | project id = VmId, timestamp, ChangeType, AvailabilityStateCurrentValue, AnnotationNameCurrentValue, AnnotationSummaryCurrentValue, AnnotationReasonCurrentValue, AnnotationImpactTypeCurrentValue, AnnotationContextCurrentValue, AnnotationCategoryCurrentValue, Changes | order by id, timestamp asc | project-rename ['Virtual Machine ID'] = id, UTCTimeStamp = timestamp, ['Change Type'] = ChangeType, ['Availability State'] = AvailabilityStateCurrentValue, ['Summary'] = AnnotationSummaryCurrentValue, ['Reason'] = AnnotationReasonCurrentValue, ['Impact Type'] = AnnotationImpactTypeCurrentValue, Category = AnnotationCategoryCurrentValue, Context = AnnotationContextCurrentValue" ``` # [Portal](#tab/azure-portal) - Azure portal: <a href="https://portal.azure.com/#blade/HubsExtension/ArgQueryBlade/query/Resources%0D%0A%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%7C%20where%20type%20startswith%20%27microsoft.workloads%2Fsapvirtualinstances%2F%27%0D%0A%7C%20where%20id%20startswith%20%27myResourceId%27%0D%0A%7C%20mv-expand%20d%20%3D%20properties.vmDetails%0D%0A%7C%20project%20VmId%20%3D%20tolower%28d.virtualMachineId%29%0D%0A%7C%20join%20kind%20%3D%20leftouter%20%28%0D%0A%20%20HealthResourceChanges%0D%0A%20%20%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%20%20%7C%20where%20id%20%21has%20%27%2FvirtualMachineScaleSets%2F%27%0D%0A%20%20%7C%20where%20id%20has%20%27%2FvirtualMachines%2F%27%0D%0A%20%20%7C%20extend%20timestamp%20%3D%20todatetime%28properties.changeAttributes.timestamp%29%0D%0A%20%20%7C%20extend%20VmId%20%3D%20tolower%28tostring%28split%28id%2C%20%27%2Fproviders%2FMicrosoft.ResourceHealth%2F%27%29%5B0%5D%29%29%0D%0A%20%20%7C%20where%20properties%20has%20%27properties.availabilityState%27%20or%20properties%20has%20%27properties.annotationName%27%0D%0A%20%20%7C%20extend%20HealthChangeType%20%3D%20iff%28properties%20has%20%27properties.availabilityState%27%2C%20%27Availability%27%2C%20%27Annotation%27%29%0D%0A%20%20%7C%20extend%20ChangeType%20%3D%20tostring%28properties.changeType%29%0D%0A%20%20%7C%20where%20ChangeType%20%3D%3D%20%27Update%27%20%20or%20ChangeType%20%3D%3D%20%27Delete%27%29%0D%0Aon%20%24left.VmId%20%3D%3D%20%24right.VmId%0D%0A%7C%20extend%20Changes%20%3D%20parse_json%28tostring%28properties.changes%29%29%0D%0A%7C%20extend%20AvailabilityStateJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.availabilityState%27%5D%29%29%0D%0A%7C%20extend%20AnnotationNameJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.annotationName%27%5D%29%29%0D%0A%7C%20extend%20AnnotationSummary%20%3D%20parse_json%28tostring%28Changes%5B%27properties.summary%27%5D%29%29%0D%0A%7C%20extend%20AnnotationReason%20%3D%20parse_json%28tostring%28Changes%5B%27properties.reason%27%5D%29%29%0D%0A%7C%20extend%20AnnotationImpactType%20%3D%20parse_json%28tostring%28Changes%5B%27properties.impactType%27%5D%29%29%0D%0A%7C%20extend%20AnnotationContext%20%3D%20parse_json%28tostring%28Changes%5B%27properties.context%27%5D%29%29%0D%0A%7C%20extend%20AnnotationCategory%20%3D%20parse_json%28tostring%28Changes%5B%27properties.category%27%5D%29%29%0D%0A%7C%20extend%20AvailabilityStatePreviousValue%20%3D%20tostring%28AvailabilityStateJson.previousValue%29%0D%0A%7C%20extend%20AvailabilityStateCurrentValue%20%3D%20tostring%28AvailabilityStateJson.newValue%29%0D%0A%7C%20extend%20AnnotationNamePreviousValue%20%3D%20tostring%28AnnotationNameJson.previousValue%29%0D%0A%7C%20extend%20AnnotationNameCurrentValue%20%3D%20tostring%28AnnotationNameJson.newValue%29%0D%0A%7C%20extend%20AnnotationSummaryCurrentValue%20%3D%20tostring%28AnnotationSummary.newValue%29%0D%0A%7C%20extend%20AnnotationReasonCurrentValue%20%3D%20tostring%28AnnotationReason.newValue%29%0D%0A%7C%20extend%20AnnotationImpactTypeCurrentValue%20%3D%20tostring%28AnnotationImpactType.newValue%29%0D%0A%7C%20extend%20AnnotationContextCurrentValue%20%3D%20tostring%28AnnotationContext.newValue%29%0D%0A%7C%20extend%20AnnotationCategoryCurrentValue%20%3D%20tostring%28AnnotationCategory.newValue%29%0D%0A%7C%20project%20id%20%3D%20VmId%2C%20timestamp%2C%20ChangeType%2C%20AvailabilityStateCurrentValue%2C%20AnnotationNameCurrentValue%2C%20AnnotationSummaryCurrentValue%2C%20AnnotationReasonCurrentValue%2C%20AnnotationImpactTypeCurrentValue%2C%20AnnotationContextCurrentValue%2C%20AnnotationCategoryCurrentValue%2C%20Changes%0D%0A%7C%20order%20by%20id%2C%20timestamp%20asc%0D%0A%7C%20project-rename%20%5B%27Virtual%20Machine%20ID%27%5D%20%3D%20id%2C%20UTCTimeStamp%20%3D%20timestamp%2C%20%5B%27Change%20Type%27%5D%20%3D%20ChangeType%2C%20%5B%27Availability%20State%27%5D%20%3D%20AvailabilityStateCurrentValue%2C%20%5B%27Summary%27%5D%20%3D%20AnnotationSummaryCurrentValue%2C%20%5B%27Reason%27%5D%20%3D%20AnnotationReasonCurrentValue%2C%20%5B%27Impact%20Type%27%5D%20%3D%20AnnotationImpactTypeCurrentValue%2C%20Category%20%3D%20AnnotationCategoryCurrentValue%2C%20Context%20%3D%20AnnotationContextCurrentValue" target="_blank">portal.azure.com</a> - Azure Government portal: <a href="https://portal.azure.us/#blade/HubsExtension/ArgQueryBlade/query/Resources%0D%0A%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%7C%20where%20type%20startswith%20%27microsoft.workloads%2Fsapvirtualinstances%2F%27%0D%0A%7C%20where%20id%20startswith%20%27myResourceId%27%0D%0A%7C%20mv-expand%20d%20%3D%20properties.vmDetails%0D%0A%7C%20project%20VmId%20%3D%20tolower%28d.virtualMachineId%29%0D%0A%7C%20join%20kind%20%3D%20leftouter%20%28%0D%0A%20%20HealthResourceChanges%0D%0A%20%20%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%20%20%7C%20where%20id%20%21has%20%27%2FvirtualMachineScaleSets%2F%27%0D%0A%20%20%7C%20where%20id%20has%20%27%2FvirtualMachines%2F%27%0D%0A%20%20%7C%20extend%20timestamp%20%3D%20todatetime%28properties.changeAttributes.timestamp%29%0D%0A%20%20%7C%20extend%20VmId%20%3D%20tolower%28tostring%28split%28id%2C%20%27%2Fproviders%2FMicrosoft.ResourceHealth%2F%27%29%5B0%5D%29%29%0D%0A%20%20%7C%20where%20properties%20has%20%27properties.availabilityState%27%20or%20properties%20has%20%27properties.annotationName%27%0D%0A%20%20%7C%20extend%20HealthChangeType%20%3D%20iff%28properties%20has%20%27properties.availabilityState%27%2C%20%27Availability%27%2C%20%27Annotation%27%29%0D%0A%20%20%7C%20extend%20ChangeType%20%3D%20tostring%28properties.changeType%29%0D%0A%20%20%7C%20where%20ChangeType%20%3D%3D%20%27Update%27%20%20or%20ChangeType%20%3D%3D%20%27Delete%27%29%0D%0Aon%20%24left.VmId%20%3D%3D%20%24right.VmId%0D%0A%7C%20extend%20Changes%20%3D%20parse_json%28tostring%28properties.changes%29%29%0D%0A%7C%20extend%20AvailabilityStateJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.availabilityState%27%5D%29%29%0D%0A%7C%20extend%20AnnotationNameJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.annotationName%27%5D%29%29%0D%0A%7C%20extend%20AnnotationSummary%20%3D%20parse_json%28tostring%28Changes%5B%27properties.summary%27%5D%29%29%0D%0A%7C%20extend%20AnnotationReason%20%3D%20parse_json%28tostring%28Changes%5B%27properties.reason%27%5D%29%29%0D%0A%7C%20extend%20AnnotationImpactType%20%3D%20parse_json%28tostring%28Changes%5B%27properties.impactType%27%5D%29%29%0D%0A%7C%20extend%20AnnotationContext%20%3D%20parse_json%28tostring%28Changes%5B%27properties.context%27%5D%29%29%0D%0A%7C%20extend%20AnnotationCategory%20%3D%20parse_json%28tostring%28Changes%5B%27properties.category%27%5D%29%29%0D%0A%7C%20extend%20AvailabilityStatePreviousValue%20%3D%20tostring%28AvailabilityStateJson.previousValue%29%0D%0A%7C%20extend%20AvailabilityStateCurrentValue%20%3D%20tostring%28AvailabilityStateJson.newValue%29%0D%0A%7C%20extend%20AnnotationNamePreviousValue%20%3D%20tostring%28AnnotationNameJson.previousValue%29%0D%0A%7C%20extend%20AnnotationNameCurrentValue%20%3D%20tostring%28AnnotationNameJson.newValue%29%0D%0A%7C%20extend%20AnnotationSummaryCurrentValue%20%3D%20tostring%28AnnotationSummary.newValue%29%0D%0A%7C%20extend%20AnnotationReasonCurrentValue%20%3D%20tostring%28AnnotationReason.newValue%29%0D%0A%7C%20extend%20AnnotationImpactTypeCurrentValue%20%3D%20tostring%28AnnotationImpactType.newValue%29%0D%0A%7C%20extend%20AnnotationContextCurrentValue%20%3D%20tostring%28AnnotationContext.newValue%29%0D%0A%7C%20extend%20AnnotationCategoryCurrentValue%20%3D%20tostring%28AnnotationCategory.newValue%29%0D%0A%7C%20project%20id%20%3D%20VmId%2C%20timestamp%2C%20ChangeType%2C%20AvailabilityStateCurrentValue%2C%20AnnotationNameCurrentValue%2C%20AnnotationSummaryCurrentValue%2C%20AnnotationReasonCurrentValue%2C%20AnnotationImpactTypeCurrentValue%2C%20AnnotationContextCurrentValue%2C%20AnnotationCategoryCurrentValue%2C%20Changes%0D%0A%7C%20order%20by%20id%2C%20timestamp%20asc%0D%0A%7C%20project-rename%20%5B%27Virtual%20Machine%20ID%27%5D%20%3D%20id%2C%20UTCTimeStamp%20%3D%20timestamp%2C%20%5B%27Change%20Type%27%5D%20%3D%20ChangeType%2C%20%5B%27Availability%20State%27%5D%20%3D%20AvailabilityStateCurrentValue%2C%20%5B%27Summary%27%5D%20%3D%20AnnotationSummaryCurrentValue%2C%20%5B%27Reason%27%5D%20%3D%20AnnotationReasonCurrentValue%2C%20%5B%27Impact%20Type%27%5D%20%3D%20AnnotationImpactTypeCurrentValue%2C%20Category%20%3D%20AnnotationCategoryCurrentValue%2C%20Context%20%3D%20AnnotationContextCurrentValue" target="_blank">portal.azure.us</a> - Microsoft Azure operated by 21Vianet portal: <a href="https://portal.azure.cn/#blade/HubsExtension/ArgQueryBlade/query/Resources%0D%0A%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%7C%20where%20type%20startswith%20%27microsoft.workloads%2Fsapvirtualinstances%2F%27%0D%0A%7C%20where%20id%20startswith%20%27myResourceId%27%0D%0A%7C%20mv-expand%20d%20%3D%20properties.vmDetails%0D%0A%7C%20project%20VmId%20%3D%20tolower%28d.virtualMachineId%29%0D%0A%7C%20join%20kind%20%3D%20leftouter%20%28%0D%0A%20%20HealthResourceChanges%0D%0A%20%20%7C%20where%20subscriptionId%20%3D%3D%20%27mySubscriptionId%27%0D%0A%20%20%7C%20where%20id%20%21has%20%27%2FvirtualMachineScaleSets%2F%27%0D%0A%20%20%7C%20where%20id%20has%20%27%2FvirtualMachines%2F%27%0D%0A%20%20%7C%20extend%20timestamp%20%3D%20todatetime%28properties.changeAttributes.timestamp%29%0D%0A%20%20%7C%20extend%20VmId%20%3D%20tolower%28tostring%28split%28id%2C%20%27%2Fproviders%2FMicrosoft.ResourceHealth%2F%27%29%5B0%5D%29%29%0D%0A%20%20%7C%20where%20properties%20has%20%27properties.availabilityState%27%20or%20properties%20has%20%27properties.annotationName%27%0D%0A%20%20%7C%20extend%20HealthChangeType%20%3D%20iff%28properties%20has%20%27properties.availabilityState%27%2C%20%27Availability%27%2C%20%27Annotation%27%29%0D%0A%20%20%7C%20extend%20ChangeType%20%3D%20tostring%28properties.changeType%29%0D%0A%20%20%7C%20where%20ChangeType%20%3D%3D%20%27Update%27%20%20or%20ChangeType%20%3D%3D%20%27Delete%27%29%0D%0Aon%20%24left.VmId%20%3D%3D%20%24right.VmId%0D%0A%7C%20extend%20Changes%20%3D%20parse_json%28tostring%28properties.changes%29%29%0D%0A%7C%20extend%20AvailabilityStateJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.availabilityState%27%5D%29%29%0D%0A%7C%20extend%20AnnotationNameJson%20%3D%20parse_json%28tostring%28Changes%5B%27properties.annotationName%27%5D%29%29%0D%0A%7C%20extend%20AnnotationSummary%20%3D%20parse_json%28tostring%28Changes%5B%27properties.summary%27%5D%29%29%0D%0A%7C%20extend%20AnnotationReason%20%3D%20parse_json%28tostring%28Changes%5B%27properties.reason%27%5D%29%29%0D%0A%7C%20extend%20AnnotationImpactType%20%3D%20parse_json%28tostring%28Changes%5B%27properties.impactType%27%5D%29%29%0D%0A%7C%20extend%20AnnotationContext%20%3D%20parse_json%28tostring%28Changes%5B%27properties.context%27%5D%29%29%0D%0A%7C%20extend%20AnnotationCategory%20%3D%20parse_json%28tostring%28Changes%5B%27properties.category%27%5D%29%29%0D%0A%7C%20extend%20AvailabilityStatePreviousValue%20%3D%20tostring%28AvailabilityStateJson.previousValue%29%0D%0A%7C%20extend%20AvailabilityStateCurrentValue%20%3D%20tostring%28AvailabilityStateJson.newValue%29%0D%0A%7C%20extend%20AnnotationNamePreviousValue%20%3D%20tostring%28AnnotationNameJson.previousValue%29%0D%0A%7C%20extend%20AnnotationNameCurrentValue%20%3D%20tostring%28AnnotationNameJson.newValue%29%0D%0A%7C%20extend%20AnnotationSummaryCurrentValue%20%3D%20tostring%28AnnotationSummary.newValue%29%0D%0A%7C%20extend%20AnnotationReasonCurrentValue%20%3D%20tostring%28AnnotationReason.newValue%29%0D%0A%7C%20extend%20AnnotationImpactTypeCurrentValue%20%3D%20tostring%28AnnotationImpactType.newValue%29%0D%0A%7C%20extend%20AnnotationContextCurrentValue%20%3D%20tostring%28AnnotationContext.newValue%29%0D%0A%7C%20extend%20AnnotationCategoryCurrentValue%20%3D%20tostring%28AnnotationCategory.newValue%29%0D%0A%7C%20project%20id%20%3D%20VmId%2C%20timestamp%2C%20ChangeType%2C%20AvailabilityStateCurrentValue%2C%20AnnotationNameCurrentValue%2C%20AnnotationSummaryCurrentValue%2C%20AnnotationReasonCurrentValue%2C%20AnnotationImpactTypeCurrentValue%2C%20AnnotationContextCurrentValue%2C%20AnnotationCategoryCurrentValue%2C%20Changes%0D%0A%7C%20order%20by%20id%2C%20timestamp%20asc%0D%0A%7C%20project-rename%20%5B%27Virtual%20Machine%20ID%27%5D%20%3D%20id%2C%20UTCTimeStamp%20%3D%20timestamp%2C%20%5B%27Change%20Type%27%5D%20%3D%20ChangeType%2C%20%5B%27Availability%20State%27%5D%20%3D%20AvailabilityStateCurrentValue%2C%20%5B%27Summary%27%5D%20%3D%20AnnotationSummaryCurrentValue%2C%20%5B%27Reason%27%5D%20%3D%20AnnotationReasonCurrentValue%2C%20%5B%27Impact%20Type%27%5D%20%3D%20AnnotationImpactTypeCurrentValue%2C%20Category%20%3D%20AnnotationCategoryCurrentValue%2C%20Context%20%3D%20AnnotationContextCurrentValue" target="_blank">portal.azure.cn</a> ---
Success! Branch created successfully. Create Pull Request on GitHub
Error: