增加proxy初始化fieldstat,增加sslstream的状态统计输出。

This commit is contained in:
zhengchao
2018-10-05 13:31:10 +08:00
parent 443404ce89
commit 7fd3f5d1fb
6 changed files with 61 additions and 26 deletions

View File

@@ -137,10 +137,8 @@ static void __signal_handler_cb(evutil_socket_t fd, short what, void * arg)
static void __gc_handler_cb(evutil_socket_t fd, short what, void * arg)
{
/* tfe_proxy * ctx = (tfe_proxy *) arg;
(void)fd;
(void)what;
*/
tfe_proxy * ctx = (tfe_proxy *) arg;
FS_passive_output(ctx->fs_handle);
return;
}
@@ -215,6 +213,7 @@ do { if(!(condition)) { TFE_LOG_ERROR(g_default_logger, fmt, ##__VA_ARGS__); exi
int main(int argc, char *argv[])
{
const char* main_profile="./conf/tfe.conf";
const char* fieldstat_output="./tfe.fieldstat";
g_default_logger = MESA_create_runtime_log_handle("log/tfe.log", RLOG_LV_DEBUG);
if (unlikely(g_default_logger == NULL))
@@ -222,16 +221,28 @@ int main(int argc, char *argv[])
TFE_LOG_ERROR(g_default_logger, "Failed at creating default logger: %s", "log/tfe.log");
exit(EXIT_FAILURE);
}
future_promise_library_init();
/* PROXY INSTANCE */
g_default_proxy = ALLOC(struct tfe_proxy, 1);
assert(g_default_proxy);
strcpy(g_default_proxy->name, "tfe3a");
/* CONFIG */
int ret = tfe_proxy_config(g_default_proxy, main_profile);
CHECK_OR_EXIT(ret == 0, "Failed at loading profile %s, Exit.", main_profile);
/* PERFOMANCE MONITOR */
g_default_proxy->fs_handle=FS_create_handle();
FS_set_para(g_default_proxy->fs_handle, OUTPUT_DEVICE, fieldstat_output, strlen(fieldstat_output)+1);
int value=1;
FS_set_para(g_default_proxy->fs_handle, PRINT_MODE, &value, sizeof(value));
value=0;
FS_set_para(g_default_proxy->fs_handle, CREATE_THREAD, &value, sizeof(value));
FS_set_para(g_default_proxy->fs_handle, APP_NAME, g_default_proxy->name, strlen(g_default_proxy->name)+1);
FS_start(g_default_proxy->fs_handle);
/* LOGGER */
g_default_proxy->logger = g_default_logger;
@@ -245,7 +256,7 @@ int main(int argc, char *argv[])
/* SSL INIT */
g_default_proxy->ssl_mgr_handler = ssl_manager_init(main_profile, "ssl",
g_default_proxy->evbase, g_default_logger, NULL);
g_default_proxy->evbase, g_default_logger, g_default_proxy->fs_handle);
CHECK_OR_EXIT(g_default_proxy->ssl_mgr_handler, "Failed at init SSL manager. Exit.");
/* PLUGIN INIT */
@@ -265,7 +276,7 @@ int main(int argc, char *argv[])
evsignal_add(g_default_proxy->sev[i], NULL);
}
struct timeval gc_delay = {60, 0};
struct timeval gc_delay = {2, 0};
evtimer_add(g_default_proxy->gcev , &gc_delay);
/* WORKER THREAD */