|
@@ -390,6 +390,13 @@ def filter_flow_pool_new_with_level_score():
|
|
|
level_weight = redis_helper.get_data_from_redis(key_name=config_.FLOWPOOL_LEVEL_WEIGHT_KEY_NAME)
|
|
|
level_list = [level for level in json.loads(level_weight)]
|
|
|
log_.info(f"level_list: {level_list}")
|
|
|
+ flow_pool_abtest_config = redis_helper.get_data_from_redis(key_name=config_.FLOWPOOL_ABTEST_KEY_NAME)
|
|
|
+ if flow_pool_abtest_config is not None:
|
|
|
+ flow_pool_abtest_config = json.loads(flow_pool_abtest_config)
|
|
|
+ else:
|
|
|
+ flow_pool_abtest_config = {}
|
|
|
+ abtest_config_info = flow_pool_abtest_config.get('flow_set_level_score', {})
|
|
|
+ ab_key_list = [ab_key for ab_key, _ in abtest_config_info.items()]
|
|
|
app_type_list = [config_.APP_TYPE['LAO_HAO_KAN_VIDEO'], config_.APP_TYPE['ZUI_JING_QI']]
|
|
|
for _, app_type in config_.APP_TYPE.items():
|
|
|
log_.info('app_type {} videos filter start...'.format(app_type))
|
|
@@ -407,6 +414,11 @@ def filter_flow_pool_new_with_level_score():
|
|
|
key_name = get_pool_redis_key(pool_type='flow_level_score', app_type=app_type,
|
|
|
flow_pool_id=flow_pool_id, level=level)
|
|
|
filter_flow_pool_level_score_process(app_type, flow_pool_id, key_name)
|
|
|
+ for ab_key in ab_key_list:
|
|
|
+ log_.info(f"ab_key: {ab_key}")
|
|
|
+ key_name = get_pool_redis_key(pool_type='flow_level_score', app_type=app_type,
|
|
|
+ flow_pool_id=flow_pool_id, level=level, ab_key=ab_key)
|
|
|
+ filter_flow_pool_level_score_process(app_type, flow_pool_id, key_name)
|
|
|
log_.info(f"app_type = {app_type}, level = {level} videos filter end!")
|
|
|
log_.info(f"app_type = {app_type} videos filter end!")
|
|
|
log_.info("flow pool filter end!")
|
|
@@ -524,7 +536,7 @@ def filter_rov_updated_app():
|
|
|
log_.info("update rov videos app filter end!")
|
|
|
|
|
|
|
|
|
-def get_pool_redis_key(pool_type, app_type=None, flow_pool_id=None, level=None):
|
|
|
+def get_pool_redis_key(pool_type, app_type=None, flow_pool_id=None, level=None, ab_key=None):
|
|
|
"""
|
|
|
拼接key
|
|
|
:param pool_type: type-string {'rov': rov召回池, 'flow': 流量池}
|
|
@@ -609,7 +621,10 @@ def get_pool_redis_key(pool_type, app_type=None, flow_pool_id=None, level=None):
|
|
|
if flow_pool_id == config_.QUICK_FLOW_POOL_ID:
|
|
|
return f"{config_.QUICK_FLOWPOOL_KEY_NAME_PREFIX}{app_type}:{flow_pool_id}"
|
|
|
else:
|
|
|
- return f"{config_.FLOWPOOL_KEY_NAME_PREFIX_SET_LEVEL_SCORE}{app_type}:{level}"
|
|
|
+ if ab_key is None:
|
|
|
+ return f"{config_.FLOWPOOL_KEY_NAME_PREFIX_SET_LEVEL_SCORE}{app_type}:{level}"
|
|
|
+ else:
|
|
|
+ return f"{config_.FLOWPOOL_KEY_NAME_PREFIX_SET_LEVEL_SCORE}{ab_key}:{app_type}:{level}"
|
|
|
|
|
|
else:
|
|
|
log_.error('pool type error')
|