Example #1
0
 private static void AreEqual(ActivityLogAlertActionGroup exp, ActivityLogAlertActionGroup act)
 {
     if (exp != null)
     {
         Assert.Equal(exp.ActionGroupId, act.ActionGroupId);
         Assert.Equal(exp.WebhookProperties, act.WebhookProperties);
     }
 }
Example #2
0
        ///GENMHASH:8251517CD3DB23FD0217AD932D86E975:C86469D57481319F5A214F5EC8087A9A
        public ActivityLogAlertImpl WithActionGroups(params string[] actionGroupId)
        {
            if (this.Inner.Actions == null)
            {
                this.Inner.Actions = new ActivityLogAlertActionList();
                this.Inner.Actions.ActionGroups = new List <ActivityLogAlertActionGroup>();
            }
            this.Inner.Actions.ActionGroups.Clear();

            foreach (var agid in actionGroupId)
            {
                var aaa = new ActivityLogAlertActionGroup();
                aaa.ActionGroupId = agid;
                this.Inner.Actions.ActionGroups.Add(aaa);
            }

            return(this);
        }
Example #3
0
        public PSMetricAlertRuleV2(MetricAlertResource metricAlertResource)
            : base(location: metricAlertResource.Location, description: metricAlertResource.Description, severity: metricAlertResource.Severity, enabled: metricAlertResource.Enabled, evaluationFrequency: metricAlertResource.EvaluationFrequency, windowSize: metricAlertResource.WindowSize, criteria: metricAlertResource.Criteria, id: metricAlertResource.Id, name: metricAlertResource.Name, type: metricAlertResource.Type, tags: metricAlertResource.Tags, scopes: metricAlertResource.Scopes, autoMitigate: metricAlertResource.AutoMitigate, actions: metricAlertResource.Actions, lastUpdatedTime: metricAlertResource.LastUpdatedTime, targetResourceRegion: metricAlertResource.TargetResourceRegion, targetResourceType: metricAlertResource.TargetResourceType)
        {
            Criteria = new List <IPSMultiMetricCriteria>();
            if (metricAlertResource.Criteria is MetricAlertSingleResourceMultipleMetricCriteria)
            {
                var criteria = metricAlertResource.Criteria as MetricAlertSingleResourceMultipleMetricCriteria;
                foreach (var condition in criteria.AllOf)
                {
                    Criteria.Add(new PSMetricCriteria(condition));
                }
            }
            else if (metricAlertResource.Criteria is MetricAlertMultipleResourceMultipleMetricCriteria)
            {
                var criteria = metricAlertResource.Criteria as MetricAlertMultipleResourceMultipleMetricCriteria;
                foreach (var condition in criteria.AllOf)
                {
                    if (condition is MetricCriteria)
                    {
                        Criteria.Add(new PSMetricCriteria(condition as MetricCriteria));
                    }
                    else
                    {
                        Criteria.Add(new PSDynamicMetricCriteria(condition as DynamicMetricCriteria));
                    }
                }
            }
            else
            {
                //Web-Test
            }
            Actions = new ActivityLogAlertActionGroup[metricAlertResource.Actions.Count];
            for (int i = 0; i < metricAlertResource.Actions.Count; i++)
            {
                Actions[i] = new ActivityLogAlertActionGroup(metricAlertResource.Actions[i].ActionGroupId, metricAlertResource.Actions[i].WebhookProperties);
            }

            var resourceIdentifier = new ResourceIdentifier(metricAlertResource.Id);

            ResourceGroup = resourceIdentifier.ResourceGroupName;
        }