TSG-14909 tsg-service-chaining-engine的service_function_status metrics适配vsys_id的变更
This commit is contained in:
@@ -136,6 +136,7 @@ enum admin_status
|
||||
|
||||
struct sf_param
|
||||
{
|
||||
int sf_vsys_id;
|
||||
int sf_profile_id;
|
||||
int sf_ref_cnt;
|
||||
|
||||
@@ -681,16 +682,18 @@ static void sf_param_new_cb(const char *table_name, int table_id, const char *ke
|
||||
int admin_status = 0;
|
||||
char connectivity[128] = {0};
|
||||
char health_check[128] = {0};
|
||||
int vsys_id = 0;
|
||||
int is_valid = 0;
|
||||
|
||||
if (sscanf(table_line, "%d\t%s\t%d\t%s\t%s\t%d",
|
||||
&profile_id, device_group, &admin_status, connectivity, health_check, &is_valid) != 6)
|
||||
if (sscanf(table_line, "%d\t%s\t%d\t%s\t%s\t%d\t%d",
|
||||
&profile_id, device_group, &admin_status, connectivity, health_check, &vsys_id, &is_valid) != 7)
|
||||
{
|
||||
LOG_ERROR("%s: unexpected sf profile: %s", LOG_TAG_POLICY, table_line);
|
||||
return;
|
||||
}
|
||||
|
||||
param = (struct sf_param *)calloc(1, sizeof(struct sf_param));
|
||||
param->sf_vsys_id = vsys_id;
|
||||
param->sf_profile_id = atoi(key);
|
||||
param->sf_ref_cnt = 1;
|
||||
memcpy(param->sf_device_group, device_group, strlen(device_group));
|
||||
@@ -849,7 +852,7 @@ static void sf_param_new_cb(const char *table_name, int table_id, const char *ke
|
||||
param->sf_health_check.retires = item->valueint;
|
||||
LOG_DEBUG("%s: parse sf profile: %d, health_check->retires: %d", LOG_TAG_POLICY, param->sf_profile_id, item->valueint);
|
||||
}
|
||||
param->health_check_session_id = health_check_session_add(param->sf_profile_id, ¶m->sf_health_check);
|
||||
param->health_check_session_id = health_check_session_add(param->sf_profile_id, param->sf_vsys_id, ¶m->sf_health_check);
|
||||
|
||||
*ad = param;
|
||||
LOG_INFO("%s: Add sf profile: %d", LOG_TAG_POLICY, param->sf_profile_id);
|
||||
@@ -1600,6 +1603,7 @@ void policy_enforce_select_chainings(struct policy_enforcer *enforcer, struct se
|
||||
continue;
|
||||
}
|
||||
|
||||
item->sf_vsys_id = sf_param->sf_vsys_id;
|
||||
connectivity_copy(&item->sf_connectivity, &sf_param->sf_connectivity);
|
||||
memcpy(item->sf_dst_ip, sf_param->sf_connectivity.dest_ip, strlen(sf_param->sf_connectivity.dest_ip));
|
||||
chaining->chaining_used++;
|
||||
|
||||
Reference in New Issue
Block a user