示例#1
0
        protected override void ProcessRecord()
        {
            PSWorkspacePurgeBody parameters;

            if (this.IsParameterBound(c => c.PurgeBody))
            {
                parameters = PurgeBody;
            }
            else
            {
                var filters = new List <WorkspacePurgeBodyFilters> {
                    new WorkspacePurgeBodyFilters(Column, OperatorProperty, Value, Key)
                };
                parameters = new PSWorkspacePurgeBody(filters, Table);
            }

            if (ShouldProcess(WorkspaceName, $"Purges data in a LogAnalytics workspace: {WorkspaceName}, resource group: {ResourceGroupName}"))
            {
                WriteObject(OperationalInsightsClient.PurgeWorkspace(ResourceGroupName, WorkspaceName, parameters));
            }
        }
 public virtual PSWorkspacePurgeResponse PurgeWorkspace(string resourceGroupName, string workspaceName, PSWorkspacePurgeBody purgeBody)
 {
     try
     {
         PSWorkspacePurgeResponse response = new PSWorkspacePurgeResponse(OperationalInsightsManagementClient.WorkspacePurge.Purge(resourceGroupName, workspaceName, purgeBody.GetWorkspacePurgeBody()));
         return(response);
     }
     catch (RestException e)
     {
         throw new PSInvalidOperationException($"Failed to purge workspace: '{workspaceName}', with error: '{e}'.");
     }
 }