diff options
| author | wangmenglan <[email protected]> | 2023-05-09 22:12:38 +0800 |
|---|---|---|
| committer | wangmenglan <[email protected]> | 2023-05-09 22:13:20 +0800 |
| commit | 542f4cbdfa6f58dd8a07e35663116a08f54170bd (patch) | |
| tree | a23444151ef7dbef555d3ed213cc1465d4843d88 /common/src/tfe_metrics.cpp | |
| parent | fecc023418f9e659b46a47e7374c956080a9db67 (diff) | |
TSG-14930 TFE支持发送控制报文给SAPPv4.8.10-20230509
Diffstat (limited to 'common/src/tfe_metrics.cpp')
| -rw-r--r-- | common/src/tfe_metrics.cpp | 176 |
1 files changed, 0 insertions, 176 deletions
diff --git a/common/src/tfe_metrics.cpp b/common/src/tfe_metrics.cpp deleted file mode 100644 index aebf9dd..0000000 --- a/common/src/tfe_metrics.cpp +++ /dev/null @@ -1,176 +0,0 @@ -#include <stdlib.h> -#include <string.h> -#include <assert.h> -#include <MESA/MESA_prof_load.h> - -#include "tfe_proxy.h" -#include "tfe_metrics.h" - -enum SCE_STAT_FIELD -{ - // hit block policy - STAT_HIT_POLICY_PKT, - STAT_HIT_POLICY_B, - - // dev nf interface - STAT_RAW_PKT_RX_PKT, - STAT_RAW_PKT_RX_B, - - STAT_RAW_PKT_TX_PKT, - STAT_RAW_PKT_TX_B, - - STAT_DECRYPTED_TX_PKT, - STAT_DECRYPTED_TX_B, - STAT_DECRYPTED_RX_PKT, - STAT_DECRYPTED_RX_B, - - // control packet - STAT_CONTROL_RX_PKT, - STAT_CONTROL_RX_B, - STAT_CONTROL_TX_PKT, - STAT_CONTROL_TX_B, - - STAT_TAP_RX_PKT, - STAT_TAP_RX_B, - STAT_TAP_TX_PKT, - STAT_TAP_TX_B, - - STAT_TAP_C_RX_PKT, - STAT_TAP_C_RX_B, - STAT_TAP_C_TX_PKT, - STAT_TAP_C_TX_B, - - STAT_TAP_S_RX_PKT, - STAT_TAP_S_RX_B, - STAT_TAP_S_TX_PKT, - STAT_TAP_S_TX_B, - - STAT_CTRL_PKT_OPENING, - STAT_CTRL_PKT_ACTIVE, - STAT_CTRL_PKT_CLOSING, - STAT_CTRL_PKT_RESETALL, - STAT_CTRL_PKT_ERROR, - - // send log - STAT_SEND_LOG, - - // max - STAT_MAX, -}; - -static const char *stat_map[] = -{ - // hit policy - [STAT_HIT_POLICY_PKT] = "hit_policy_pkt", - [STAT_HIT_POLICY_B] = "hit_policy_B", - - // dev nf interface - [STAT_RAW_PKT_RX_PKT] = "raw_rx_pkt", - [STAT_RAW_PKT_RX_B] = "raw_rx_B", - - [STAT_RAW_PKT_TX_PKT] = "raw_tx_pkt", - [STAT_RAW_PKT_TX_B] = "raw_tx_B", - - // decrypted - [STAT_DECRYPTED_TX_PKT] = "decrypt_tx_pkt", - [STAT_DECRYPTED_TX_B] = "decrypt_tx_B", - [STAT_DECRYPTED_RX_PKT] = "decrypt_rx_pkt", - [STAT_DECRYPTED_RX_B] = "decrypt_rx_B", - - // control packet - [STAT_CONTROL_RX_PKT] = "ctrl_rx_pkt", - [STAT_CONTROL_RX_B] = "ctrl_rx_B", - [STAT_CONTROL_TX_PKT] = "ctrl_tx_pkt", - [STAT_CONTROL_TX_B] = "ctrl_tx_B", - - // tap packet - [STAT_TAP_RX_PKT] = "tap_rx_pkt", - [STAT_TAP_RX_B] = "tap_rx_B", - [STAT_TAP_TX_PKT] = "tap_tx_pkt", - [STAT_TAP_TX_B] = "tap_tx_B", - [STAT_TAP_C_RX_PKT] = "tap_c_rx_pkt", - [STAT_TAP_C_RX_B] = "tap_c_rx_B", - [STAT_TAP_C_TX_PKT] = "tap_c_tx_pkt", - [STAT_TAP_C_TX_B] = "tap_c_tx_B", - [STAT_TAP_S_RX_PKT] = "tap_s_rx_pkt", - [STAT_TAP_S_RX_B] = "tap_s_rx_B", - [STAT_TAP_S_TX_PKT] = "tap_s_tx_pkt", - [STAT_TAP_S_TX_B] = "tap_s_tx_B", - - [STAT_CTRL_PKT_OPENING] = "ctrl_pkt_open", - [STAT_CTRL_PKT_ACTIVE] = "ctrl_pkt_avtive", - [STAT_CTRL_PKT_CLOSING] = "ctrl_pkt_close", - [STAT_CTRL_PKT_RESETALL] = "ctrl_pkt_reset", - [STAT_CTRL_PKT_ERROR] = "ctrl_pkt_error", - - // send log - [STAT_SEND_LOG] = "send_log", - - [STAT_MAX] = NULL -}; - -struct global_metrics *global_metrics_create() -{ - struct global_metrics *metrics = (struct global_metrics *)calloc(1, sizeof(struct global_metrics)); - - metrics->fs_handle=tfe_proxy_get_fs_handle(); - for (int i = 0; i < STAT_MAX; i++) - { - metrics->fs_id[i] = FS_register(metrics->fs_handle, FS_STYLE_FIELD, FS_CALC_CURRENT, stat_map[i]); - } - - return metrics; -} - -void global_metrics_destory(struct global_metrics *metrics) -{ - if (metrics) - { - free(metrics); - metrics = NULL; - } -} - -void global_metrics_dump(struct global_metrics *metrics) -{ - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_HIT_POLICY_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->hit_policy.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_HIT_POLICY_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->hit_policy.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_RAW_PKT_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->raw_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_RAW_PKT_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->raw_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_RAW_PKT_TX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->raw_pkt_tx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_RAW_PKT_TX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->raw_pkt_tx.n_bytes), 0, __ATOMIC_RELAXED)); - - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_DECRYPTED_TX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->decrypt_tx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_DECRYPTED_TX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->decrypt_tx.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_DECRYPTED_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->decrypt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_DECRYPTED_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->decrypt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - - // control packet - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CONTROL_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CONTROL_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CONTROL_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CONTROL_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_TX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_TX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_C_RX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_C_RX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_C_TX_PKT], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_pkts), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_TAP_C_TX_B], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_rx.n_bytes), 0, __ATOMIC_RELAXED)); - - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CTRL_PKT_OPENING], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_opening_num), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CTRL_PKT_ACTIVE], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_active_num), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CTRL_PKT_CLOSING], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_closing_num), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CTRL_PKT_RESETALL], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_resetall_num), 0, __ATOMIC_RELAXED)); - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_CTRL_PKT_ERROR], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->ctrl_pkt_error_num), 0, __ATOMIC_RELAXED)); - - // send log - FS_operate(metrics->fs_handle, metrics->fs_id[STAT_SEND_LOG], 0, FS_OP_SET, __atomic_fetch_add(&(metrics->send_log), 0, __ATOMIC_RELAXED)); -} |
