添加错误映射文件的处理防止崩溃,优化mq处理topic前缀,添加空指针预防
This commit is contained in:
@@ -334,65 +334,83 @@ void add_stat_kafka_json_log(char* log_str)
|
||||
/*新增rocketmq发送数据lnk10-10*/
|
||||
void my_rocketmq_send(Ckafka_data_t& data)
|
||||
{
|
||||
static std::string topic;
|
||||
static std::string cfg_His_tp;
|
||||
static std::string cfg_PLT_tp;
|
||||
static std::string cfg_PST_tp;
|
||||
static std::string cfg_Evt_tp;
|
||||
static std::string cfg_Alm_tp;
|
||||
static std::string cfg_Rt_tp;
|
||||
static bool init = false;
|
||||
if (!init) {
|
||||
try{
|
||||
static std::string topic;
|
||||
static std::string cfg_His_tp;
|
||||
static std::string cfg_PLT_tp;
|
||||
static std::string cfg_PST_tp;
|
||||
static std::string cfg_Evt_tp;
|
||||
static std::string cfg_Alm_tp;
|
||||
static std::string cfg_Rt_tp;
|
||||
static bool init = false;
|
||||
if (!init) {
|
||||
|
||||
cfg_His_tp = TOPIC_STAT;
|
||||
cfg_PLT_tp = TOPIC_PLT;
|
||||
cfg_PST_tp = TOPIC_PST;
|
||||
cfg_Evt_tp = TOPIC_EVENT;
|
||||
cfg_Alm_tp = TOPIC_ALARM;
|
||||
cfg_Rt_tp = TOPIC_RTDATA;
|
||||
cfg_His_tp = TOPIC_STAT;
|
||||
cfg_PLT_tp = TOPIC_PLT;
|
||||
cfg_PST_tp = TOPIC_PST;
|
||||
cfg_Evt_tp = TOPIC_EVENT;
|
||||
cfg_Alm_tp = TOPIC_ALARM;
|
||||
cfg_Rt_tp = TOPIC_RTDATA;
|
||||
|
||||
init = true;
|
||||
}
|
||||
init = true;
|
||||
}
|
||||
|
||||
std::string key = data.mp_id.toStdString();
|
||||
std::string senddata = data.strText.toStdString();
|
||||
if (data.strTopic == "HISDATA")
|
||||
{
|
||||
topic = cfg_His_tp;
|
||||
}
|
||||
else if (data.strTopic == "PLT")
|
||||
std::string key = data.mp_id.toStdString();
|
||||
std::string senddata = data.strText.toStdString();
|
||||
if (data.strTopic == "HISDATA")
|
||||
{
|
||||
topic = cfg_His_tp;
|
||||
}
|
||||
else if (data.strTopic == "PLT")
|
||||
{
|
||||
topic = cfg_PLT_tp;
|
||||
}
|
||||
else if (data.strTopic == "PST")
|
||||
else if (data.strTopic == "PST")
|
||||
{
|
||||
topic = cfg_PST_tp;
|
||||
}
|
||||
else if (data.strTopic == "Event")
|
||||
else if (data.strTopic == "Event")
|
||||
{
|
||||
topic = cfg_Evt_tp;
|
||||
}
|
||||
else if (data.strTopic == "Alm")
|
||||
else if (data.strTopic == "Alm")
|
||||
{
|
||||
topic = cfg_Alm_tp;
|
||||
}
|
||||
else if (data.strTopic == "RTDATA")//lnk20241220
|
||||
else if (data.strTopic == "RTDATA")//lnk20241220
|
||||
{
|
||||
topic = cfg_Rt_tp;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
topic = data.strTopic.toStdString();
|
||||
|
||||
}
|
||||
if (g_onlyIP[0] != 0)
|
||||
{
|
||||
//单例模式
|
||||
add_sng_log(data.strText.toAscii().data());
|
||||
if (g_onlyIP[0] != 0)
|
||||
{
|
||||
//单例模式
|
||||
add_sng_log(data.strText.toAscii().data());
|
||||
|
||||
}
|
||||
//rocketmq_producer_send(const_cast<char*>(senddata.c_str()),const_cast<char*>(topic.c_str()));
|
||||
rocketmq_producer_send(senddata, topic,FRONT_INST,key);//lnk20250623修复偶发性doublefree
|
||||
}
|
||||
//rocketmq_producer_send(const_cast<char*>(senddata.c_str()),const_cast<char*>(topic.c_str()));
|
||||
rocketmq_producer_send(senddata, topic,FRONT_INST,key);//lnk20250623修复偶发性doublefree
|
||||
catch (const std::exception& e)
|
||||
{
|
||||
std::cout << "[MQ][EXCEPTION] "
|
||||
<< e.what()
|
||||
<< std::endl;
|
||||
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ,
|
||||
"mq发送异常:%s", e.what());
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
std::cout << "[MQ][UNKNOWN_EXCEPTION]" << std::endl;
|
||||
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ,
|
||||
"mq发送未知异常");
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
Reference in New Issue
Block a user