2015-02-19 5 views
0

В настоящее время я запускаю консольное приложение для обновления автоматического масштабирования на моей подписке на лазурь, но у меня возникают проблемы с дневными и ночными профилями.Azure Auto Scaling management API

У меня есть два профиля, которые работают в течение ночи и дня в будние дни. Я бросил его вместе, чтобы поиграть с api, но я получаю странные результаты.

var weekDayProfile = new AutoscaleProfile 
     { 

      Capacity = new ScaleCapacity 
      { 
       Default = settings.Default.ToString(), 
       Maximum = settings.Maximum.ToString(), 
       Minimum = settings.Minimum.ToString() 
      }, 
      Name = "Day", 
      Recurrence = new Recurrence 
      { 
       Frequency = RecurrenceFrequency.Week, 
       Schedule = new RecurrentSchedule 
       { 
        Days = new List<String> { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }, 
        Hours = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 }, 
        Minutes = new List<int> { 0 }, 
        TimeZone = "Central Standard Time" 
       } 
      }, 
      Rules = GenerateScaleRules(cloudServiceName, roleName, isProduction, settings) 
     }; 
     settings.SetProfileSettings(ProfileEnum.NonProdWeekNight); 
     var weekNightProfile = new AutoscaleProfile 
     { 
      Capacity = new ScaleCapacity 
      { 
       Default = settings.Default.ToString(), 
       Maximum = settings.Maximum.ToString(), 
       Minimum = settings.Minimum.ToString() 
      }, 
      Name = "Night", 
      Recurrence = new Recurrence 
      { 
       Frequency = RecurrenceFrequency.Week, 
       Schedule = new RecurrentSchedule 
       { 
        Days = new List<String> { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }, 
        Hours = {0, 1, 2, 3, 4, 5, 6, 7, 21, 22, 23}, 
        Minutes = new List<int> { 0 }, 
        TimeZone = "Central Standard Time" 
       } 
      }, 
      Rules = GenerateScaleRules(cloudServiceName, roleName, isProduction, settings) 
     }; 
     settings.SetProfileSettings(ProfileEnum.NonProdWeekEnd); 

Теперь, когда я загрузить профиль в облако это проявляется два профиля, но оба они точно так же во всех отношениях. Мне интересно, если это потому, что мои дни перекрываются. Хотя это было возможно, так как вы можете установить день и ночь вручную через портал. Я пропускаю что-то вроде переключателя или настройки.

ответ

0

Видимо, я испортил json вокруг ошибок. Я скучаю, понимал, что на самом деле означает часы.

Отказаться от приложения, чтобы захватить ручной профиль, чтобы он совпал с тем, который я сгенерировал, кажется, часы не на самом деле час S. Любой, кто делает это через api, хорош, чтобы просто пропустить профиль и сопоставить его.

AutoscaleClient autoscaleClient = new AutoscaleClient(new CertificateCloudCredentials(publishSettings.Id, publishSettings.Certificate)); 
AutoscaleSettingGetResponse get = autoscaleClient.Settings.Get(AutoscaleResourceIdBuilder.BuildCloudServiceResourceId("<clound name", "role name", true)); 
AutoscaleSetting setting = get.Setting; 
string profileJson = JsonConvert.SerializeObject(setting); 
Console.WriteLine(profileJson);