增加拦截字节数fs统计

This commit is contained in:
崔一鸣
2019-08-11 15:18:55 +08:00
parent a0183d9e0c
commit b01f282f34
2 changed files with 18 additions and 0 deletions

View File

@@ -99,6 +99,10 @@ enum kni_field{
KNI_FIELD_KEEPALIVE_REPLAY_ADD_SUCC, KNI_FIELD_KEEPALIVE_REPLAY_ADD_SUCC,
KNI_FIELD_KEEPALIVE_REPLAY_DEL_SUCC, KNI_FIELD_KEEPALIVE_REPLAY_DEL_SUCC,
KNI_FIELD_KEEPALIVE_REPLAY_DEL_FAIL, KNI_FIELD_KEEPALIVE_REPLAY_DEL_FAIL,
KNI_FIELD_KNI_INTCP_BYTES,
KNI_FIELD_TFE_INTCP_BYTES,
KNI_FIELD_KNI_INTCP_STM,
KNI_FIELD_TFE_INTCP_STM,
//KNI_FIELD_TFE_STATUS_BASE must be last //KNI_FIELD_TFE_STATUS_BASE must be last
KNI_FIELD_TFE_STATUS_BASE, KNI_FIELD_TFE_STATUS_BASE,
}; };

View File

@@ -453,6 +453,15 @@ static void stream_destroy(struct pme_info *pmeinfo){
KNI_LOG_DEBUG(logger, "Succeed at log_generate, stream traceid is %s", pmeinfo->stream_traceid); KNI_LOG_DEBUG(logger, "Succeed at log_generate, stream traceid is %s", pmeinfo->stream_traceid);
} }
} }
//intercept traffic stat
FS_operate(g_kni_fs_handle->handle, g_kni_fs_handle->fields[KNI_FIELD_KNI_INTCP_BYTES], 0, FS_OP_ADD,
pmeinfo->server_bytes + pmeinfo->client_bytes);
FS_operate(g_kni_fs_handle->handle, g_kni_fs_handle->fields[KNI_FIELD_KNI_INTCP_STM], 0, FS_OP_ADD, 1);
if(pmeinfo->intercept_state == 1){
FS_operate(g_kni_fs_handle->handle, g_kni_fs_handle->fields[KNI_FIELD_TFE_INTCP_BYTES], 0, FS_OP_ADD,
pmeinfo->server_bytes + pmeinfo->client_bytes);
FS_operate(g_kni_fs_handle->handle, g_kni_fs_handle->fields[KNI_FIELD_TFE_INTCP_STM], 0, FS_OP_ADD, 1);
}
//only intercetp stream need del htable //only intercetp stream need del htable
if(pmeinfo->action == KNI_ACTION_INTERCEPT){ if(pmeinfo->action == KNI_ACTION_INTERCEPT){
//del keepalive_replay_htable //del keepalive_replay_htable
@@ -1734,6 +1743,11 @@ static struct kni_field_stat_handle * fs_init(const char *profile){
fs_handle->fields[KNI_FIELD_SENDLOG_FAIL] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "sendlog_fail"); fs_handle->fields[KNI_FIELD_SENDLOG_FAIL] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "sendlog_fail");
fs_handle->fields[KNI_FIELD_PME_NEW_SUCC] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "pme_new"); fs_handle->fields[KNI_FIELD_PME_NEW_SUCC] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "pme_new");
fs_handle->fields[KNI_FIELD_PME_FREE] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "pme_free"); fs_handle->fields[KNI_FIELD_PME_FREE] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "pme_free");
//intercept traffic stat
fs_handle->fields[KNI_FIELD_KNI_INTCP_BYTES] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "kni_intcp_bytes");
fs_handle->fields[KNI_FIELD_TFE_INTCP_BYTES] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "tfe_intcp_bytes");
fs_handle->fields[KNI_FIELD_KNI_INTCP_STM] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "kni_intcp_stm");
fs_handle->fields[KNI_FIELD_TFE_INTCP_STM] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "tfe_intcp_stm");
//htable //htable
fs_handle->fields[KNI_FIELD_ID2PME_ADD_SUCC] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "id2pme_add_succ"); fs_handle->fields[KNI_FIELD_ID2PME_ADD_SUCC] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "id2pme_add_succ");
fs_handle->fields[KNI_FIELD_ID2PME_ADD_FAIL] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "id2pme_add_fail"); fs_handle->fields[KNI_FIELD_ID2PME_ADD_FAIL] = FS_register(handle, FS_STYLE_FIELD, FS_CALC_CURRENT, "id2pme_add_fail");