إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يمكن أن تستخدم علامات الميزات عوامل تصفية الميزات لتمكين الميزات بشكل مشروط. لمعرفة المزيد حول عوامل تصفية الميزات، راجع تمكين الميزات الشرطية باستخدام عوامل تصفية الميزات.
يستند المثال المستخدم في هذا الدليل إلى تطبيق Python المقدم في التشغيل السريع لإدارة الميزات. قبل المتابعة، أكمل التشغيل السريع لإنشاء تطبيق Python مع علامة ميزة Beta . بمجرد الانتهاء، يجب إضافة عامل تصفية ميزة مخصص إلى علامة ميزة Beta في متجر App Configuration.
في هذه المقالة، ستتعلم كيفية تنفيذ عامل تصفية ميزة مخصص واستخدام عامل تصفية الميزة لتمكين الميزات بشكل مشروط.
المتطلبات الأساسية
تنفيذ عامل تصفية ميزة مخصص
لقد أضفت عامل تصفية ميزة مخصصا يسمى Random مع معلمة النسبة المئوية لعلامة ميزة Beta في المتطلبات الأساسية. بعد ذلك، يمكنك تنفيذ عامل تصفية الميزة لتمكين علامة ميزة Beta استنادا إلى الفرصة المحددة بواسطة معلمة النسبة المئوية .
أضف ملفا
RandomFilter.pyباستخدام التعليمات البرمجية التالية.import random from featuremanagement import FeatureFilter @FeatureFilter.alias("Random") class RandomFilter(FeatureFilter): def evaluate(self, context, **kwargs): value = context.get("parameters", {}).get("Value", 0) if value < random.randint(0, 100): return True return Falseلقد أضفت
RandomFilterفئة تنفذFeatureFilterالفئة المجردة من المكتبةFeatureManagement.FeatureFilterتحتوي الفئة على أسلوب واحد يسمىevaluate، والذي يتم استدعاؤه كلما تم تقييم علامة ميزة. فيevaluate، يمكن عامل تصفية الميزة علامة ميزة عن طريق إرجاعtrue.لقد قمت بتزيين
FeatureFilter.aliasإلى لمنح عامل التصفيةRandomFilterاسما مستعارا عشوائيا، والذي يطابق اسم عامل التصفية الذي قمت بتعيينه في علامة ميزة بيتا في تكوين تطبيق Azure.افتح ملف app.py وسجل
RandomFilterعند إنشاءFeatureManager. أيضا، قم بتعديل التعليمات البرمجية لعدم التحديث تلقائيا وللوصول أيضا إلى علامة ميزة Beta عدة مرات، كما هو موضح أدناه.from featuremanagement import FeatureManager from azure.appconfiguration.provider import load from azure.identity import DefaultAzureCredential import os endpoint = os.environ.get("APPCONFIGURATION_ENDPOINT_STRING") # Connect to Azure App Configuration using and Endpoint and Azure Entra ID # feature_flag_enabled makes it so that the provider will load feature flags from Azure App Configuration # feature_flag_refresh_enabled makes it so that the provider will refresh feature flags # from Azure App Configuration, when the refresh operation is triggered config = load(endpoint=endpoint, credential=DefaultAzureCredential(), feature_flag_enabled=True) feature_manager = FeatureManager(config, feature_filters=[RandomFilter()]) for i in range(0, 10): print("Beta is", feature_manager.is_enabled("Beta"))
عامل تصفية الميزة قيد التنفيذ
عند تشغيل التطبيق، سيقوم موفر التكوين بتحميل علامة ميزة Beta من Azure App Configuration. ستتم طباعة نتيجة is_enabled("Beta") الأسلوب إلى وحدة التحكم.
RandomFilter كما يتم تنفيذها واستخدامها بواسطة علامة ميزة بيتا، ستكون True النتيجة 50 في المئة من الوقت و50 False في المئة الأخرى من الوقت.
سيؤدي تشغيل التطبيق إلى إظهار تمكين علامة ميزة Beta في بعض الأحيان، وفي بعض الأحيان لا يتم تمكينها.
Beta is True
Beta is False
Beta is True
Beta is True
Beta is True
Beta is False
Beta is False
Beta is False
Beta is True
Beta is True
الخطوات التالية
لمعرفة المزيد حول عوامل تصفية الميزات المضمنة، تابع إلى المستندات التالية.