Узнайте, как создавать многомерные и логические флаги функций в ConfigCat.

Что такое флаг функции?

Возможно, вы слышали о сплит-тестировании при запуске рекламы в Facebook. Флаги функций позволяют нам делать то же самое в коде.

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

Настройка флагов ваших функций

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



Соглашение об именовании

Если у вас еще нет согласованного соглашения об именах, самое время начать. Мы рекомендуем змеиный чехол. Но ваше соглашение об именах может включать следующее:

  • кожух (используйте футляр для верблюжьей или змеи, или что-нибудь еще, если хотите.)
  • структура для имени, описывающая, где его можно найти. например ‹Product› _ ‹page› _ ‹feature-flag-name›

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

Наконец, постарайтесь не использовать повторно имена флагов. Хорошо отслеживать те, которые вы использовали, в одном месте, чтобы не дублировать их! Если вы повторно используете имена флагов функций, вы испортите свои данные измерений.

Создание флага функции

Первое, что нам нужно сделать, это войти в ConfigCat, как только мы это сделаем, мы сможем сразу приступить к созданию флагов!

Прежде чем мы начнем, следует отметить одну вещь: когда вы создаете свои флаги (логические или многовариантные), очень важно установить для флага значение по умолчанию. Это гарантирует, что во время тестирования вы не увидите, что флаги демонстрируют неожиданное поведение, или случайно не передадите в рабочую среду флаг с неожиданными значениями.

Многомерный

  1. Щелкните раскрывающийся список рядом с «Добавить отметку функции» и выберите параметр «Добавить текст».

2. Добавьте имя для вашего флага, добавление пробелов между вашими словами автоматически применяет соглашение об именах, которое вы настроили (или значение по умолчанию).

3. Щелкните создать флаг.

4. Нажмите кнопку «Добавить новый%» чуть ниже вашего нового флага, чтобы начать сегментирование флага по мере необходимости. Назовите сегменты «контрольный», «вариант» и «незарегистрированный». Мы используем «не зарегистрирован», чтобы гарантировать, что у нас есть точные данные о том, кто был зачислен в эксперимент, а кто нет, вместо того, чтобы запускать события с «вариацией» и «контролем» в разное время для конкретного пользователя.

5. Добавьте «незарегистрированный» в качестве значения для неопознанных пользователей.

6. Проверьте, работает ли ваш флаг во всех ваших средах (разработка, постановка, продакшн и т. Д.). Для этого вам нужно добавить свой идентификатор пользователя (идентификатор) в верхнюю часть раздела с флагами. (Вам необходимо убедиться, что идентификатор пользователя в вашем коде такой же, как тот, который передается в ConfigCat через их sdk)

Это означает, что вы можете напрямую управлять флажком, который видите, и проверять, правильно ли он работает. Ваш код должен проверить, разрешается ли флаг как «вариант» или нет, и отображать код в соответствии с флагом.

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

Когда вы закончите, нажмите "Сохранить".

Логический

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

  1. Чтобы добавить логический флаг, сначала мы начнем с нажатия кнопки «добавить флаг функции», для этого нам не нужен раскрывающийся список.
  2. Назовите свой флаг функции.
  3. Нажмите "Создать".
  4. Затем добавьте процент людей, которых вы хотели бы зачислить в каждую когорту флага (true или false).

Когда вы закончите, нажмите "Сохранить" в правом нижнем углу. Мы забыли сделать это несколько раз раньше и задались вопросом, почему мы все еще не получаем ожидаемого опыта от тестового пользователя.

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

Сообщите нам, что бы вы хотели узнать дальше!