增加pangu业务日志发送的开关
This commit is contained in:
@@ -28,6 +28,10 @@ struct pangu_logger
|
|||||||
char local_ip_str[TFE_SYMBOL_MAX];
|
char local_ip_str[TFE_SYMBOL_MAX];
|
||||||
int entry_id;
|
int entry_id;
|
||||||
|
|
||||||
|
unsigned int en_sendlog;
|
||||||
|
unsigned int en_sendlog_meta;
|
||||||
|
unsigned int en_sendlog_body;
|
||||||
|
|
||||||
unsigned int local_ip_nr;
|
unsigned int local_ip_nr;
|
||||||
void* global_logger;
|
void* global_logger;
|
||||||
rd_kafka_t *kafka_handle;
|
rd_kafka_t *kafka_handle;
|
||||||
@@ -43,7 +47,6 @@ struct pangu_logger
|
|||||||
unsigned long long user_abort;
|
unsigned long long user_abort;
|
||||||
char local_log_path[TFE_STRING_MAX];
|
char local_log_path[TFE_STRING_MAX];
|
||||||
struct cache_evbase_instance * log_file_upload_instance;
|
struct cache_evbase_instance * log_file_upload_instance;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static unsigned int get_ip_by_eth_name(const char *ifname)
|
static unsigned int get_ip_by_eth_name(const char *ifname)
|
||||||
@@ -110,7 +113,26 @@ struct pangu_logger* pangu_log_handle_create(const char* profile, const char* s
|
|||||||
struct pangu_logger* instance=ALLOC(struct pangu_logger,1);
|
struct pangu_logger* instance=ALLOC(struct pangu_logger,1);
|
||||||
instance->local_logger=local_logger;
|
instance->local_logger=local_logger;
|
||||||
|
|
||||||
TFE_LOG_ERROR(local_logger,"Pangu log is inititating from %s section %s.", profile, section);
|
TFE_LOG_INFO(local_logger,"Pangu log is inititating from %s section %s.", profile, section);
|
||||||
|
|
||||||
|
MESA_load_profile_uint_def(profile, section, "en_sendlog", &instance->en_sendlog, 1);
|
||||||
|
MESA_load_profile_uint_def(profile, section, "en_sendlog_meta", &instance->en_sendlog_meta, 1);
|
||||||
|
MESA_load_profile_uint_def(profile, section, "en_sendlog_body", &instance->en_sendlog_body, 1);
|
||||||
|
|
||||||
|
if (!instance->en_sendlog)
|
||||||
|
{
|
||||||
|
instance->en_sendlog_body = 0;
|
||||||
|
instance->en_sendlog_meta = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
TFE_LOG_INFO(local_logger, "Pangu sendlog : %s", instance->en_sendlog ? "ENABLE" : "DISABLE");
|
||||||
|
TFE_LOG_INFO(local_logger, "Pangu sendlog meta : %s", instance->en_sendlog_meta ? "ENABLE" : "DISABLE");
|
||||||
|
TFE_LOG_INFO(local_logger, "Pangu sendlog body : %s", instance->en_sendlog_body ? "ENABLE" : "DISABLE");
|
||||||
|
|
||||||
|
if (!instance->en_sendlog)
|
||||||
|
{
|
||||||
|
return instance;
|
||||||
|
}
|
||||||
|
|
||||||
MESA_load_profile_string_def(profile, section, "NIC_NAME",nic_name,sizeof(nic_name),"eth0");
|
MESA_load_profile_string_def(profile, section, "NIC_NAME",nic_name,sizeof(nic_name),"eth0");
|
||||||
instance->local_ip_nr=get_ip_by_eth_name(nic_name);
|
instance->local_ip_nr=get_ip_by_eth_name(nic_name);
|
||||||
@@ -119,27 +141,27 @@ struct pangu_logger* pangu_log_handle_create(const char* profile, const char* s
|
|||||||
TFE_LOG_ERROR(local_logger, "%s get NIC_NAME: %s error.", __FUNCTION__, nic_name);
|
TFE_LOG_ERROR(local_logger, "%s get NIC_NAME: %s error.", __FUNCTION__, nic_name);
|
||||||
goto error_out;
|
goto error_out;
|
||||||
}
|
}
|
||||||
|
|
||||||
inet_ntop(AF_INET,&(instance->local_ip_nr),instance->local_ip_str,sizeof(instance->local_ip_str));
|
inet_ntop(AF_INET,&(instance->local_ip_nr),instance->local_ip_str,sizeof(instance->local_ip_str));
|
||||||
|
|
||||||
MESA_load_profile_int_def(profile, section, "ENTRANCE_ID",&(instance->entry_id),0);
|
MESA_load_profile_int_def(profile, section, "ENTRANCE_ID",&(instance->entry_id),0);
|
||||||
|
|
||||||
ret=MESA_load_profile_string_def(profile, section,"KAFKA_BROKERLIST", instance->brokerlist, sizeof(instance->brokerlist), NULL);
|
ret=MESA_load_profile_string_def(profile, section,"KAFKA_BROKERLIST", instance->brokerlist, sizeof(instance->brokerlist), NULL);
|
||||||
if(ret<0)
|
if(ret<0)
|
||||||
{
|
{
|
||||||
TFE_LOG_ERROR(local_logger,"Pangu log init failed, no brokerlist in profile %s section %s.", profile, section);
|
TFE_LOG_ERROR(local_logger,"Pangu log init failed, no brokerlist in profile %s section %s.", profile, section);
|
||||||
goto error_out;
|
goto error_out;
|
||||||
}
|
}
|
||||||
|
|
||||||
instance->kafka_handle=create_kafka_handle(instance->brokerlist);
|
instance->kafka_handle=create_kafka_handle(instance->brokerlist);
|
||||||
if(instance->kafka_handle==NULL)
|
if(instance->kafka_handle==NULL)
|
||||||
{
|
{
|
||||||
TFE_LOG_ERROR(local_logger,"Pangu log init failed. Cannot create lafka handle with brokerlist: %s.", instance->brokerlist);
|
TFE_LOG_ERROR(local_logger,"Pangu log init failed. Cannot create lafka handle with brokerlist: %s.", instance->brokerlist);
|
||||||
goto error_out;
|
goto error_out;
|
||||||
}
|
}
|
||||||
|
|
||||||
instance->topic_name="PXY-HTTP-LOG";
|
instance->topic_name="PXY-HTTP-LOG";
|
||||||
instance->kafka_topic = rd_kafka_topic_new(instance->kafka_handle,instance->topic_name, NULL);
|
instance->kafka_topic = rd_kafka_topic_new(instance->kafka_handle,instance->topic_name, NULL);
|
||||||
|
|
||||||
log_file_upload_para=cache_evbase_parameter_new(profile, section, local_logger);
|
log_file_upload_para=cache_evbase_parameter_new(profile, section, local_logger);
|
||||||
|
|
||||||
instance->log_file_upload_instance=cache_evbase_instance_new(log_file_upload_para, local_logger);
|
instance->log_file_upload_instance=cache_evbase_instance_new(log_file_upload_para, local_logger);
|
||||||
pthread_mutex_init(&(instance->mutex), NULL);
|
pthread_mutex_init(&(instance->mutex), NULL);
|
||||||
return instance;
|
return instance;
|
||||||
@@ -171,6 +193,11 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg)
|
|||||||
struct json_spec resp_fields[]={ {"content_type", TFE_HTTP_CONT_TYPE},
|
struct json_spec resp_fields[]={ {"content_type", TFE_HTTP_CONT_TYPE},
|
||||||
{"content_len", TFE_HTTP_CONT_LENGTH} };
|
{"content_len", TFE_HTTP_CONT_LENGTH} };
|
||||||
|
|
||||||
|
if (!handle->en_sendlog)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
common_obj=cJSON_CreateObject();
|
common_obj=cJSON_CreateObject();
|
||||||
cur_time = time(NULL);
|
cur_time = time(NULL);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user