修正Http-kill位置过完的问题,增加TCP链接摘要日志功能

This commit is contained in:
luqiuwen
2018-12-14 03:06:34 +06:00
parent 8c93f7203d
commit 8713da2d81
7 changed files with 203 additions and 75 deletions

View File

@@ -50,6 +50,23 @@ struct tfe_conn_private
uint8_t on_writing;
};
enum tfe_stream_event_log_type
{
EVENT_LOG_CLOSE_BY_FD_PEER,
EVENT_LOG_CLOSE_BY_FD_EOF,
EVENT_LOG_CLOSE_BY_FD_ERROR,
EVENT_LOG_CLOSE_BY_SSL_ERROR,
__EVENT_LOG_CLOSE_MAX
};
struct tfe_stream_event_log
{
enum tfe_stream_event_log_type type;
enum tfe_conn_dir dir;
unsigned int error;
const char * str_error;
};
struct tfe_stream_private
{
struct tfe_stream head;
@@ -103,12 +120,20 @@ struct tfe_stream_private
bool is_suspended;
enum tfe_conn_dir suspended_by;
/* KILL */
bool need_to_be_kill;
/* KEYRING-ID */
unsigned keyring_id;
/* ONLY FOR LOG */
evutil_socket_t log_fd_downstream;
evutil_socket_t log_fd_upstream;
/* EVENT LOG */
#define STREAM_EVENT_LOG_MAX 8
struct tfe_stream_event_log log_event[STREAM_EVENT_LOG_MAX];
unsigned int nr_log_event;
};
static inline void * __STREAM_LOGGER(struct tfe_stream_private * _stream)