TSG-13196 Decrypted Traffic Steering增加FieldStat字段

* stee_ssl_conn
    * stee_http_conn
    * stee_c_tx_B
    * stee_s_rx_B
    * stee_s_tx_B
    * stee_c_rx_B
This commit is contained in:
luwenpeng
2022-12-29 10:24:02 +08:00
parent 3268648414
commit 0f542d376f
3 changed files with 35 additions and 4 deletions

View File

@@ -602,13 +602,16 @@ static void __stream_bev_readcb(struct bufferevent * bev, void * arg)
(STREAM_PROTO_PLAIN == _stream->session_type && _stream->proxy_ref->traffic_steering_options.enable_steering_http) ||
(STREAM_PROTO_SSL == _stream->session_type &&_stream->proxy_ref->traffic_steering_options.enable_steering_ssl)))
{
enum TFE_STAT_FIELD stat_filed = TFE_STAT_MAX;
if (bev == _stream->conn_downstream->bev)
{
peer_conn = _stream->conn_fake_c;
stat_filed = STAT_STEERING_CLIENT_TX_B;
}
else if (bev == _stream->conn_upstream->bev)
{
peer_conn = _stream->conn_fake_s;
stat_filed = STAT_STEERING_SERVER_TX_B;
}
else
{
@@ -626,14 +629,13 @@ static void __stream_bev_readcb(struct bufferevent * bev, void * arg)
return;
}
// TODO 增加计数
TFE_LOG_DEBUG(__STREAM_LOGGER(_stream), "decrypted traffic steering, %s send %d bytes from %s to %s",
_stream->str_stream_addr,
evbuffer_get_length(inbuf),
bev == _stream->conn_downstream->bev ? "conn_downstream" : "conn_upstream",
bev == _stream->conn_downstream->bev ? "conn_fake_c" : "conn_fake_s");
TFE_PROXY_STAT_INCREASE(stat_filed, evbuffer_get_length(inbuf));
outbuf = bufferevent_get_output(peer_conn->bev);
evbuffer_add_buffer(outbuf, inbuf);
@@ -1064,13 +1066,16 @@ static void __steering_stream_bev_readcb(struct bufferevent * bev, void * arg)
struct tfe_stream_private * _stream = (struct tfe_stream_private *)arg;
struct tfe_conn_private * peer_conn = NULL;
enum TFE_STAT_FIELD stat_filed = TFE_STAT_MAX;
if (bev == _stream->conn_fake_c->bev)
{
peer_conn = _stream->conn_downstream;
stat_filed = STAT_STEERING_CLIENT_RX_B;
}
else if (bev == _stream->conn_fake_s->bev)
{
peer_conn = _stream->conn_upstream;
stat_filed = STAT_STEERING_SERVER_RX_B;
}
else
{
@@ -1088,8 +1093,6 @@ static void __steering_stream_bev_readcb(struct bufferevent * bev, void * arg)
return;
}
// TODO 增加计数
TFE_LOG_DEBUG(__STREAM_LOGGER(_stream), "decrypted traffic steering, %s send %d bytes form %s to %s",
_stream->str_stream_addr,
evbuffer_get_length(inbuf),
@@ -1097,6 +1100,7 @@ static void __steering_stream_bev_readcb(struct bufferevent * bev, void * arg)
bev == _stream->conn_fake_c->bev ? "conn_downstream" : "conn_upstream"
);
TFE_PROXY_STAT_INCREASE(stat_filed, evbuffer_get_length(inbuf));
struct evbuffer * outbuf = bufferevent_get_output(peer_conn->bev);
evbuffer_add_buffer(outbuf, inbuf);
}
@@ -1188,6 +1192,7 @@ void ssl_downstream_create_on_success(future_result_t * result, void * user)
{
__conn_private_enable(_stream->conn_fake_c);
__conn_private_enable(_stream->conn_fake_s);
TFE_PROXY_STAT_INCREASE(STAT_STEERING_SSL_CONN, 1);
}
return;
@@ -1749,6 +1754,7 @@ int tfe_stream_init_by_fds(struct tfe_stream * stream, evutil_socket_t fd_downst
{
__conn_private_enable(_stream->conn_fake_s);
__conn_private_enable(_stream->conn_fake_c);
TFE_PROXY_STAT_INCREASE(STAT_STEERING_HTTP_CONN, 1);
}
TFE_PROXY_STAT_INCREASE(STAT_STREAM_TCP_PLAIN, 1);