From 17bbb543431bf9842e5655fe05d150d5b85fd7e2 Mon Sep 17 00:00:00 2001 From: fengweihao Date: Fri, 4 Dec 2020 18:20:36 +0800 Subject: [PATCH] =?UTF-8?q?TSG-4524=20panggu=E5=92=8Cdoh=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E8=AE=BE=E7=BD=AEcommon=5Fdirection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/include/tfe_cmsg.h | 1 + plugin/business/doh/src/logger.cpp | 8 ++++++-- plugin/business/pangu-http/src/pangu_logger.cpp | 7 ++++++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/common/include/tfe_cmsg.h b/common/include/tfe_cmsg.h index e8b4b8b..df46091 100644 --- a/common/include/tfe_cmsg.h +++ b/common/include/tfe_cmsg.h @@ -81,6 +81,7 @@ enum tfe_cmsg_tlv_type TFE_CMSG_FQDN_CAT_ID_NUM, // unsigned int TFE_CMSG_FQDN_CAT_ID_VAL, // max size 8 * sizeof(unsigned int) + TFE_CMSG_COMMON_DIRECTION, /* Add new cmsg here */ /* Add new cmsg here */ /* Add new cmsg here */ diff --git a/plugin/business/doh/src/logger.cpp b/plugin/business/doh/src/logger.cpp index 95dbe30..a5cc0fb 100644 --- a/plugin/business/doh/src/logger.cpp +++ b/plugin/business/doh/src/logger.cpp @@ -334,7 +334,7 @@ int doh_send_log(struct doh_conf *handle, const struct tfe_http_session *http, c cJSON_AddStringToObject(common_obj, "common_schema_type", "DoH"); char opt_val[24] = { 0 }; - uint16_t opt_out_size; + uint16_t opt_out_size; unsigned int common_direction=0; struct tfe_cmsg *cmsg = tfe_stream_get0_cmsg(stream); if (cmsg != NULL) { @@ -342,6 +342,11 @@ int doh_send_log(struct doh_conf *handle, const struct tfe_http_session *http, c if (ret == 0) { cJSON_AddNumberToObject(common_obj, "common_stream_trace_id", atoll(opt_val)); + } + ret = tfe_cmsg_get_value(cmsg, TFE_CMSG_COMMON_DIRECTION, (unsigned char *)&common_direction, sizeof(common_direction), &opt_out_size); + if (ret==0) + { + cJSON_AddNumberToObject(common_obj, "common_direction", common_direction); //0:域内->域外,1:域外->域内,描述的是CLIENT_IP信息 } } @@ -392,7 +397,6 @@ int doh_send_log(struct doh_conf *handle, const struct tfe_http_session *http, c tfe_stream_info_get(stream, INFO_FROM_DOWNSTREAM_RX_OFFSET, &c2s_byte_num, sizeof(c2s_byte_num)); tfe_stream_info_get(stream, INFO_FROM_UPSTREAM_RX_OFFSET, &s2c_byte_num, sizeof(s2c_byte_num)); - cJSON_AddNumberToObject(common_obj, "common_direction", 0); //0:域内->域外,1:域外->域内,描述的是CLIENT_IP信息 cJSON_AddNumberToObject(common_obj, "common_link_id", 0); cJSON_AddNumberToObject(common_obj, "common_stream_dir", 3); //1:c2s, 2:s2c, 3:double cJSON_AddStringToObject(common_obj, "common_sled_ip", handle->kafka_logger->local_ip_str); diff --git a/plugin/business/pangu-http/src/pangu_logger.cpp b/plugin/business/pangu-http/src/pangu_logger.cpp index 86efcab..70d2dd5 100644 --- a/plugin/business/pangu-http/src/pangu_logger.cpp +++ b/plugin/business/pangu-http/src/pangu_logger.cpp @@ -125,6 +125,7 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg) cJSON_AddStringToObject(common_obj, "http_version", app_proto[http->major_version]); cJSON_AddStringToObject(common_obj, "common_schema_type", "HTTP"); + unsigned int common_direction=0; char opt_val[24] = { 0 }; uint16_t opt_out_size; struct tfe_cmsg * cmsg = tfe_stream_get0_cmsg(log_msg->stream); if (cmsg!=NULL) @@ -134,6 +135,11 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg) { cJSON_AddNumberToObject(common_obj, "common_stream_trace_id", atoll(opt_val)); } + ret = tfe_cmsg_get_value(cmsg, TFE_CMSG_COMMON_DIRECTION, (unsigned char *)&common_direction, sizeof(common_direction), &opt_out_size); + if (ret==0) + { + cJSON_AddNumberToObject(common_obj, "common_direction", common_direction); //0:域内->域外,1:域外->域内,描述的是CLIENT_IP信息 + } } if (http->req) @@ -183,7 +189,6 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg) tfe_stream_info_get(log_msg->stream, INFO_FROM_DOWNSTREAM_RX_OFFSET, &c2s_byte_num, sizeof(c2s_byte_num)); tfe_stream_info_get(log_msg->stream, INFO_FROM_UPSTREAM_RX_OFFSET, &s2c_byte_num, sizeof(s2c_byte_num)); - cJSON_AddNumberToObject(common_obj, "common_direction", 0); //0:域内->域外,1:域外->域内,描述的是CLIENT_IP信息 cJSON_AddNumberToObject(common_obj, "common_link_id", 0); cJSON_AddNumberToObject(common_obj, "common_stream_dir", 3); //1:c2s, 2:s2c, 3:double cJSON_AddStringToObject(common_obj, "common_sled_ip", handle->kafka_logger->local_ip_str);