modify log
This commit is contained in:
@@ -5807,7 +5807,7 @@ void on_device_response_minimal(int response_code,
|
||||
<< " rc=" << response_code << " recall_status=" << front.recall_status<< std::endl; //错误响应码
|
||||
|
||||
//记录日志
|
||||
DIY_ERRORLOG_CODE(matched_monitor->monitor_id.c_str(),2,static_cast<int>(LogCode::LOG_CODE_RECALL),"监测点:%s 补招数据失败 - 失败时间点:%s 至 %s",matched_monitor->monitor_name.c_str(),front.StartTime.c_str(),front.EndTime.c_str());
|
||||
DIY_ERRORLOG_CODE(matched_monitor->monitor_id.c_str(),2,LOG_CODE_RECALL,"补招数据失败,失败时间点:%s 至 %s",front.StartTime.c_str(),front.EndTime.c_str());
|
||||
}
|
||||
updated = true;
|
||||
} else { //首条不是 RUNNING 状态,不应该收到这条响应
|
||||
|
||||
@@ -195,7 +195,7 @@ void handleUploadResponse(const std::string& response, std::string& wavepath) {
|
||||
wavepath = nameWithoutExt;
|
||||
|
||||
std::cout << "wavepath: " << wavepath << std::endl;
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_FILE, "前置上传文件成功,远端文件名:%s", wavepath.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_FILE, "上传文件成功,远端文件名:%s", wavepath.c_str());
|
||||
}
|
||||
|
||||
//上传文件
|
||||
@@ -710,7 +710,7 @@ int parse_device_cfg_web()
|
||||
input_jstr += "}";
|
||||
|
||||
std::cout << "input_jstr: " << input_jstr << std::endl;
|
||||
DIY_DEBUGLOG_CODE("process",0,LOG_CODE_LEDGER,"前置获取台账使用的请求输入为:%s", input_jstr.c_str());
|
||||
DIY_DEBUGLOG_CODE("process",0,LOG_CODE_LEDGER,"台账接口输入:%s", input_jstr.c_str());
|
||||
|
||||
// 2. 调用接口
|
||||
std::map<std::string, terminal_dev> terminal_dev_map;
|
||||
@@ -750,7 +750,7 @@ int parse_device_cfg_web()
|
||||
// 5. 台账数量与配置比对
|
||||
int count_cfg = static_cast<int>(terminal_dev_map.size());
|
||||
std::cout << "terminal_ledger_num: " << count_cfg << std::endl;
|
||||
DIY_DEBUGLOG_CODE("process",0,LOG_CODE_LEDGER,"前置获取到的台账的数量为:%d",count_cfg);
|
||||
DIY_DEBUGLOG_CODE("process",0,LOG_CODE_LEDGER,"获取到台账数量:%d",count_cfg);
|
||||
|
||||
if (IED_COUNT < count_cfg) {
|
||||
std::cout << "!!!!!!!!!!single process has ledger count more than config!!!!!!!" << std::endl;
|
||||
@@ -808,7 +808,7 @@ int parse_device_cfg_web()
|
||||
if (!mon.terminal_connect.empty() && mon.terminal_connect != "0") {
|
||||
isdelta_flag = 1;
|
||||
std::cout << "monitor_id " << mon.monitor_id<< " v_wiring_type: " << mon.terminal_connect << " is delta wiring: " << isdelta_flag << std::endl;
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_WIRETYPE,"装置:%s - 监测点: %s 是角形接线",dev.terminal_name.c_str(),mon.monitor_name.c_str());
|
||||
//DIY_WARNLOG_CODE("process",0,LOG_CODE_WIRETYPE,"装置:%s - 监测点: %s 是角形接线",dev.terminal_name.c_str(),mon.monitor_name.c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1055,7 +1055,7 @@ static void writeJsonToFile(const std::string& filePath, const std::string& json
|
||||
{
|
||||
FILE* fp = fopen(filePath.c_str(), "w");
|
||||
if (!fp) {
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "前置无法将暂态事件写入本地缓存");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "无法将暂态事件写入本地缓存,暂态事件保存失败");
|
||||
std::cerr << "Failed to write in file : " << filePath << std::endl;
|
||||
return;
|
||||
}
|
||||
@@ -1167,7 +1167,7 @@ static void scanAndResendOfflineFiles(const std::string& dirPath)
|
||||
// 读取 JSON 文件内容
|
||||
std::ifstream inFile(file.fileName.c_str());
|
||||
if (!inFile) {
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "无法打开本地缓存的暂态事件");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "无法打开本地缓存的暂态事件,暂态事件重发失败");
|
||||
std::cerr << "fail to open existing file: " << file.fileName << std::endl;
|
||||
continue;
|
||||
}
|
||||
@@ -1186,14 +1186,14 @@ static void scanAndResendOfflineFiles(const std::string& dirPath)
|
||||
try {
|
||||
json j_r = json::parse(response);
|
||||
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "前置重发暂态事件成功");
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "重发暂态事件成功");
|
||||
std::cout << "old file send success, remove it" << std::endl;
|
||||
|
||||
std::remove(file.fileName.c_str());
|
||||
} catch (...) {
|
||||
std::cout << "old file send fail (response parse failed)" << std::endl;
|
||||
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "前置重发暂态事件失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_TRANSIENT_COMM, "暂态接口响应异常,重发暂态事件失败");
|
||||
handleCommentResponse(response); // 仍然处理文本响应
|
||||
}
|
||||
} else {
|
||||
@@ -1294,15 +1294,7 @@ int transfer_json_qvvr_data(const std::string& dev_id, ushort monitor_id,
|
||||
&& j_r["code"].is_string()
|
||||
&& j_r["code"].get<std::string>() != "0") {
|
||||
|
||||
DIY_ERRORLOG_CODE(
|
||||
mpid.c_str(),
|
||||
2,
|
||||
LOG_CODE_TRANSIENT_COMM,
|
||||
"暂态接口业务失败(code=%s),无法上送装置%s - 监测点%s的暂态事件",
|
||||
j_r["code"].get<std::string>().c_str(),
|
||||
showName_d,
|
||||
showName_m
|
||||
);
|
||||
DIY_ERRORLOG_CODE(mpid.c_str(),2,LOG_CODE_TRANSIENT_COMM,"暂态接口业务失败(code=%s),无法上送暂态事件",j_r["code"].get<std::string>().c_str());
|
||||
|
||||
std::cout << "qvvr send fail ,store in local" << std::endl;
|
||||
std::string qvvrDir = FRONT_PATH + "/dat/qvvr/";
|
||||
@@ -1318,7 +1310,7 @@ int transfer_json_qvvr_data(const std::string& dev_id, ushort monitor_id,
|
||||
|
||||
} catch (...) {
|
||||
// 响应异常,保存 json
|
||||
DIY_ERRORLOG_CODE(mpid.c_str(),2,LOG_CODE_TRANSIENT_COMM, "暂态接口响应异常,无法上送装置%s - 监测点%s的暂态事件",showName_d, showName_m);
|
||||
DIY_ERRORLOG_CODE(mpid.c_str(),2,LOG_CODE_JSON, "暂态接口响应异常,无法上送暂态事件");
|
||||
|
||||
std::cout << "qvvr send fail ,store in local" << std::endl;
|
||||
std::string qvvrDir = FRONT_PATH + "/dat/qvvr/";
|
||||
@@ -1328,7 +1320,7 @@ int transfer_json_qvvr_data(const std::string& dev_id, ushort monitor_id,
|
||||
}
|
||||
} else {
|
||||
// 无响应,保存 json
|
||||
DIY_ERRORLOG_CODE(mpid.c_str(),2,LOG_CODE_TRANSIENT_COMM,"暂态接口无响应,无法上送装置%s - 监测点%s的暂态事件",showName_d, showName_m);
|
||||
DIY_ERRORLOG_CODE(mpid.c_str(),2,LOG_CODE_TRANSIENT_COMM,"暂态接口无响应,无法上送暂态事件");
|
||||
|
||||
std::cout << "qvvr send fail ,store in local" << std::endl;
|
||||
std::string qvvrDir = FRONT_PATH + "/dat/qvvr/";
|
||||
|
||||
@@ -219,14 +219,14 @@ void RocketMQProducer::sendMessage(const std::string& body,
|
||||
<< std::endl;
|
||||
} catch (const MQClientException& e) {
|
||||
std::cerr << "[RocketMQProducer] 发送失败: " << e.what() << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ客户端异常,mq消息发送失败");
|
||||
// 根据需要进行重试或日志记录
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "[RocketMQProducer] 异常: " << e.what() << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ异常,mq消息发送失败");
|
||||
} catch (...) {
|
||||
std::cerr << "[RocketMQProducer] 未知错误,消息发送失败。" << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ未知错误,mq消息发送失败");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -247,13 +247,13 @@ void RocketMQProducer::sendMessageOrderly(const std::string& body,
|
||||
<< std::endl;
|
||||
} catch (const MQClientException& e) {
|
||||
std::cerr << "[RocketMQProducer] 顺序发送失败: " << e.what() << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ客户端异常,mq消息发送失败");
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "[RocketMQProducer] 异常: " << e.what() << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ异常,mq消息发送失败");
|
||||
} catch (...) {
|
||||
std::cerr << "[RocketMQProducer] 未知错误,顺序消息发送失败。" << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ未知错误,mq消息发送失败");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -310,7 +310,6 @@ void rocketmq_producer_send(rocketmq::RocketMQProducer* producer,
|
||||
producer->sendMessage(body, topic, tags, keys);
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "[rocketmq_producer_send] 发送失败: " << e.what() << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_MQ, "MQ发送失败");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -520,8 +519,7 @@ bool parseJsonMessageSET(const std::string& json_str) {
|
||||
|
||||
std::cout << "msg index: " << index_value << " self index: " << g_front_seg_index << std::endl;
|
||||
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_PROCESS_CONTROL, "收到主题:%s - tag:%s的进程控制消息",
|
||||
G_MQCONSUMER_TOPIC_SET.c_str(),FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_PROCESS_CONTROL, "收到进程控制消息,开始处理");
|
||||
|
||||
if (code_str == "set_process") {
|
||||
|
||||
@@ -553,8 +551,12 @@ bool parseJsonMessageSET(const std::string& json_str) {
|
||||
|
||||
execute_bash(fun, processNum, frontType);
|
||||
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_PROCESS_CONTROL, "执行指令:%s,reset表示重启所有进程,add表示添加进程",
|
||||
fun.c_str());
|
||||
if (fun == "reset") {
|
||||
DIY_WARNLOG_CODE("process", 0, LOG_CODE_PROCESS_CONTROL,"执行重置进程指令,更新多进程数:%d", processNum);
|
||||
}
|
||||
else if (fun == "add") {
|
||||
DIY_WARNLOG_CODE("process", 0, LOG_CODE_PROCESS_CONTROL,"执行添加进程指令,新增进程号:%d", processNum);
|
||||
}
|
||||
|
||||
send_reply_to_queue(guid, static_cast<int>(ResponseCode::ACCEPTED), "收到重置进程指令,重启所有进程!");
|
||||
std::cout << "this msg should only execute once" << std::endl;
|
||||
@@ -570,7 +572,7 @@ bool parseJsonMessageSET(const std::string& json_str) {
|
||||
// delete 分支:不要求 frontType/processNum
|
||||
send_reply_to_queue(guid, static_cast<int>(ResponseCode::ACCEPTED), "收到删除进程指令,这个进程将会重启 ");
|
||||
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_PROCESS_CONTROL, "执行指令:%s,即将重启", fun.c_str());
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_PROCESS_CONTROL, "执行删除进程指令,当前进程即将重启");
|
||||
|
||||
std::this_thread::sleep_for(std::chrono::seconds(3));
|
||||
::_exit(-1039); // 进程退出
|
||||
@@ -659,8 +661,7 @@ bool parseJsonMessageLOG(const std::string& json_str) {
|
||||
return true;
|
||||
}*/
|
||||
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_LOG_REQUEST,"收到主题:%s - tag:%s的日志控制消息",
|
||||
G_MQCONSUMER_TOPIC_LOG.c_str(),FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_LOG_REQUEST,"收到日志控制消息,开始处理");
|
||||
|
||||
std::cout << "msg index: " << processNo << " self index: " << g_front_seg_index << std::endl;
|
||||
/*std::cout << "msg frontType: " << frontType << " self frontType: " << subdir << std::endl;*/
|
||||
@@ -734,8 +735,7 @@ bool parseJsonMessageUD(const std::string& json_str, const std::string& output_d
|
||||
|
||||
std::cout << "msg index: " << process_No << " self index: " << g_front_seg_index << std::endl;
|
||||
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_LEDGER_UPDATE,"收到主题:%s - tag:%s的台账更新消息",
|
||||
G_MQCONSUMER_TOPIC_UD.c_str(), FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_LEDGER_UPDATE,"收到台账更新消息,开始处理");
|
||||
|
||||
//send_reply_to_queue(guid, static_cast<int>(ResponseCode::ACCEPTED), "收到台账更新指令");
|
||||
std::vector<DeviceReply> reply_list;
|
||||
@@ -888,7 +888,7 @@ bool parseJsonMessageUD(const std::string& json_str, const std::string& output_d
|
||||
/*send_reply_to_queue(json_data.guid, static_cast<int>(ResponseCode::NOT_FOUND),
|
||||
"终端 id: " + tid + " 无法修改台账,未找到指定装置,改为添加这个装置");*/
|
||||
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_LEDGER_UPDATE,"无法修改台账,未找到指定装置: %s ,改为添加这个装置的台账", json_data.terminal_name.c_str());
|
||||
DIY_WARNLOG_CODE("process",0,LOG_CODE_LEDGER_UPDATE,"未找到需要修改的装置: %s ,添加这个装置的台账", json_data.terminal_name.c_str());
|
||||
|
||||
init_loggers_bydevid(json_data.terminal_id);
|
||||
terminal_devlist.push_back(json_data);
|
||||
@@ -1026,7 +1026,7 @@ rocketmq::ConsumeStatus myMessageCallbackrtdata(const rocketmq::MQMessageExt& ms
|
||||
}
|
||||
|
||||
// 日志记录
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_RT_DATA,"收到主题:%s - tag:%s的实时触发消息",G_MQCONSUMER_TOPIC_RT.c_str(),FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_RT_DATA,"收到实时数据触发消息,开始处理");
|
||||
|
||||
std::cout << "rtdata Callback received message: " << body << std::endl;
|
||||
if (!key.empty()) {
|
||||
@@ -1137,7 +1137,7 @@ rocketmq::ConsumeStatus myMessageCallbackupdate(const rocketmq::MQMessageExt& ms
|
||||
// 调用业务逻辑处理函数
|
||||
std::string updatefilepath = FRONT_PATH + "/etc/ledgerupdate";
|
||||
if (!parseJsonMessageUD(body, updatefilepath)) {
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"主题:%s - tag:%s的台账更新消息失败",G_MQCONSUMER_TOPIC_UD.c_str(),FRONT_INST.c_str());
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"无法解析台账更新指令,台账更新失败");
|
||||
}
|
||||
|
||||
return rocketmq::CONSUME_SUCCESS;
|
||||
@@ -1181,7 +1181,7 @@ rocketmq::ConsumeStatus myMessageCallbackset(const rocketmq::MQMessageExt& msg)
|
||||
|
||||
// 调用业务处理逻辑
|
||||
if (!parseJsonMessageSET(body)) {
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"主题:%s - tag:%s的进程控制消息失败", G_MQCONSUMER_TOPIC_SET.c_str(), FRONT_INST.c_str());
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"无法解析进程控制指令,进程控制失败");
|
||||
}
|
||||
|
||||
return rocketmq::CONSUME_SUCCESS;
|
||||
@@ -1225,7 +1225,7 @@ rocketmq::ConsumeStatus myMessageCallbacklog(const rocketmq::MQMessageExt& msg)
|
||||
|
||||
// 执行日志上送处理
|
||||
if (!parseJsonMessageLOG(body)) {
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"主题:%s - tag:%s的日志上送消息失败",G_MQCONSUMER_TOPIC_LOG.c_str(),FRONT_INST.c_str());
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON, "无法解析日志控制指令,日志控制失败");
|
||||
}
|
||||
|
||||
return rocketmq::CONSUME_SUCCESS;
|
||||
@@ -1273,8 +1273,7 @@ rocketmq::ConsumeStatus myMessageCallbackrecall(const rocketmq::MQMessageExt& ms
|
||||
std::cout << "Message Key: N/A" << std::endl;
|
||||
}
|
||||
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_RECALL,"收到主题:%s - tag:%s的补招消息",
|
||||
G_MQCONSUMER_TOPIC_RC.c_str(), FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_RECALL,"收到补招消息,开始处理");
|
||||
|
||||
// 解析 JSON 字符串
|
||||
recall_json_handle_from_mq(body);//不再使用文件补招方式
|
||||
@@ -2424,7 +2423,7 @@ rocketmq::ConsumeStatus cloudMessageCallback(const rocketmq::MQMessageExt& msg)
|
||||
}
|
||||
|
||||
// 日志记录
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_CLOUD, "收到主题:%s - tag:%s的云前置控制消息",G_MQCONSUMER_TOPIC_CLOUD.c_str(),FRONT_INST.c_str());
|
||||
DIY_INFOLOG_CODE("process",0,LOG_CODE_CLOUD, "收到云前置指令,开始处理");
|
||||
|
||||
std::cout << "cloud Callback received message: " << body << std::endl;
|
||||
if (!key.empty()) {
|
||||
@@ -2442,7 +2441,7 @@ rocketmq::ConsumeStatus cloudMessageCallback(const rocketmq::MQMessageExt& msg)
|
||||
|
||||
if (!parseJsonMessageCLOUD(body, devid, guid, DetailObj,FrontId,Node)) {
|
||||
std::cerr << "Failed to parse the JSON message." << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON, "主题:%s - tag:%s的云前置控制消息失败", G_MQCONSUMER_TOPIC_CLOUD.c_str(), FRONT_INST.c_str());
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON, "无法解析云前置指令,云前置指令执行失败");
|
||||
return rocketmq::RECONSUME_LATER;
|
||||
}
|
||||
|
||||
@@ -2461,7 +2460,7 @@ rocketmq::ConsumeStatus cloudMessageCallback(const rocketmq::MQMessageExt& msg)
|
||||
|
||||
if(!parsemsg(devid,guid,DetailObj)){
|
||||
std::cerr << "clouddata is error." << std::endl;
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON,"主题:%s - tag:%s的云前置控制消息失败",G_MQCONSUMER_TOPIC_CLOUD.c_str(),FRONT_INST.c_str());
|
||||
DIY_ERRORLOG_CODE("process",0,LOG_CODE_JSON, "无法解析云前置指令,云前置指令执行失败");
|
||||
}
|
||||
|
||||
return rocketmq::CONSUME_SUCCESS;
|
||||
|
||||
Reference in New Issue
Block a user