TSG-14908 tsg-service-chaining-engine的service_chaining_rule_hits metrics适配vsys_id的变更

This commit is contained in:
luwenpeng
2023-04-26 14:35:52 +08:00
parent e5df6a84c0
commit 989a118969
16 changed files with 40 additions and 23 deletions

View File

@@ -10,10 +10,11 @@
#include "utils.h"
#include "sf_metrics.h"
#define SCE_SF_METRICS "service_chaining_rule_hits,rule_id=%lu,sff_profile_id=%d,sf_profile_id=%d sent_pkts=%lu,sent_bytes=%lu,recv_pkts=%lu,recv_bytes=%lu"
#define SCE_SF_METRICS "service_chaining_rule_hits,vsys_id=%d,rule_id=%lu,sff_profile_id=%d,sf_profile_id=%d sent_pkts=%lu,sent_bytes=%lu,recv_pkts=%lu,recv_bytes=%lu"
struct key_tuple
{
int vsys_id;
uint64_t rule_id;
int sff_profile_id;
int sf_profile_id;
@@ -137,7 +138,7 @@ void sf_metrics_reset(struct sf_metrics *handle)
}
}
void sf_metrics_inc(struct sf_metrics *handle, uint64_t rule_id, int sff_profile_id, int sf_profile_id, uint64_t rx_pkts, uint64_t rx_bytes, uint64_t tx_pkts, uint64_t tx_bytes)
void sf_metrics_inc(struct sf_metrics *handle, int vsys_id, uint64_t rule_id, int sff_profile_id, int sf_profile_id, uint64_t rx_pkts, uint64_t rx_bytes, uint64_t tx_pkts, uint64_t tx_bytes)
{
if (handle->config.enable == 0)
{
@@ -146,6 +147,7 @@ void sf_metrics_inc(struct sf_metrics *handle, uint64_t rule_id, int sff_profile
struct key_tuple key;
memset(&key, 0, sizeof(struct key_tuple));
key.vsys_id = vsys_id;
key.rule_id = rule_id;
key.sff_profile_id = sff_profile_id;
key.sf_profile_id = sf_profile_id;
@@ -162,6 +164,7 @@ void sf_metrics_inc(struct sf_metrics *handle, uint64_t rule_id, int sff_profile
else
{
temp = (struct node *)calloc(1, sizeof(struct node));
temp->key.vsys_id = vsys_id;
temp->key.rule_id = rule_id;
temp->key.sff_profile_id = sff_profile_id;
temp->key.sf_profile_id = sf_profile_id;
@@ -197,6 +200,7 @@ void sf_metrics_send(struct sf_metrics *handle)
memset(buff, 0, size);
nsend = snprintf(buff, size, SCE_SF_METRICS,
node->key.vsys_id,
node->key.rule_id,
node->key.sff_profile_id,
node->key.sf_profile_id,