Функция диспетчера функций Azure для оценки с использованием метки во время выполнения

#azure #.net-core #featuretoggle

#azure #.net-core #featuretoggle

Вопрос:

Использование переключений функций в диспетчере функций Azure дает возможность настраивать метку при создании функции, в .NET для использования этой метки единственный вариант, который я смог найти, — это установить метку во время запуска при настройке конфигурации приложения Azure, что можно сделать следующим образом:

  config.AddAzureAppConfiguration(
                        options =>
                        {
                            options.Connect(settings.GetConnectionString("Config"))
                                .UseFeatureFlags(o =>
                                {
                                    o.Label = "Test";
                                    o.CacheExpirationInterval = TimeSpan.FromSeconds(1);
                                });
                        },
 

Проблема с этим подходом заключается в том, что во время выполнения мы не можем изменить метку, поскольку она предварительно настроена во время запуска.
Вопрос в том, как мы можем управлять разными метками, допустим, у меня есть 100 меток, и я хочу, чтобы мое приложение оценивало переключение функций по отношению к его метке. я не мог найти способа добиться этого.
Для оценки функции переключения мы вызываем диспетчер функций следующим образом
await _featureManager.IsEnabledAsync(setting);

Комментарии:

1. Какую оценку на основе меток вы хотите выполнить? Можете ли вы привести несколько примеров ваших меток и оценки?

Ответ №1:

Я бы сказал, что вы не можете, и это неплохо. Метки существуют для того, чтобы один флаг функции сохранялся два раза, возможно с разными значениями и фильтрами. Например.:

  • myFlag (label: test) true
  • myFlag (label: production) false

или

  • myFlag (label: america) true
  • myFlag (label: asia) false

Поэтому вы должны использовать метки для сохранения разных значений для одной функции на разных этапах или для разных регионов или любых других вариантов использования, которые у вас могут быть. Вы не должны переключаться между метками в запущенном приложении.