完成数据追踪原始数据上送
This commit is contained in:
@@ -44,6 +44,7 @@ extern std::string WEB_COMFLAG;
|
||||
extern std::string WEB_EVENT;
|
||||
extern std::string WEB_FILEDOWNLOAD;
|
||||
extern std::string G_CONNECT_TOPIC;
|
||||
extern std::string DATA_TRACE_TOPIC;//lnk20260609数据追踪topic
|
||||
|
||||
extern int RECALL_ONLY_FLAG;
|
||||
|
||||
@@ -290,24 +291,36 @@ static void trace_hit_and_decrement(const QString& mp_id)
|
||||
}
|
||||
|
||||
//追踪61850原始数据
|
||||
static QString build_mms_multiline_text(const json_block_data* data)
|
||||
static QString build_mms_json_object(const json_block_data* data)
|
||||
{
|
||||
QStringList lines;
|
||||
QString json = "{";
|
||||
|
||||
QMapIterator<QString, double> it(data->mms_str_map);
|
||||
bool first = true;
|
||||
|
||||
while (it.hasNext()) {
|
||||
it.next();
|
||||
lines << QString("%1 = %2").arg(it.key()).arg(it.value(), 0, 'g', 15);
|
||||
|
||||
if (!first)
|
||||
json += ",";
|
||||
|
||||
json += QString("\"%1\":%2")
|
||||
.arg(escape_json_string(it.key()))
|
||||
.arg(QString::number(it.value(), 'g', 15));
|
||||
|
||||
first = false;
|
||||
}
|
||||
|
||||
return lines.join("\n");
|
||||
json += "}";
|
||||
|
||||
return json;
|
||||
}
|
||||
|
||||
static QString build_trace_json(const json_block_data* data)
|
||||
{
|
||||
if (!data) return "{}";
|
||||
|
||||
QString mms_text = build_mms_multiline_text(data);
|
||||
QString mms_json = build_mms_json_object(data);
|
||||
|
||||
QString json;
|
||||
json += "{";
|
||||
@@ -316,7 +329,7 @@ static QString build_trace_json(const json_block_data* data)
|
||||
json += QString("\"data_time\":%1,").arg(QString::number((qlonglong)data->time));
|
||||
json += QString("\"voltage_level\":\"%1\",").arg(QString::number(data->voltage_level, 'f', 6));
|
||||
json += QString("\"dev_type\":\"%1\",").arg(escape_json_string(data->dev_type));
|
||||
json += QString("\"mms_text\":\"%1\"").arg(escape_json_string(mms_text));
|
||||
json += QString("\"mms_json\":%1").arg(mms_json);
|
||||
json += "}";
|
||||
|
||||
return json;
|
||||
@@ -334,7 +347,7 @@ static void send_trace_if_needed(json_block_data* pdata)
|
||||
Ckafka_data_t KafkaData;
|
||||
KafkaData.monitor_id = pdata->monitorId;
|
||||
KafkaData.mp_id = pdata->mp_id;
|
||||
KafkaData.strTopic = "DATA_TRACE_TOPIC";
|
||||
KafkaData.strTopic = QString::fromStdString(DATA_TRACE_TOPIC);
|
||||
KafkaData.strText = jsonText;
|
||||
|
||||
kafka_data_list_mutex.lock();
|
||||
@@ -1204,6 +1217,9 @@ int transfer_json_block_data(char v_wiring_type[], json_block_data *data) //json
|
||||
print_mms_str_map(data);
|
||||
}
|
||||
|
||||
//数据追踪上送
|
||||
send_trace_if_needed(data);
|
||||
|
||||
list<CTopic*> ctopic_list;
|
||||
|
||||
////lnk2024-8-15 区分星型,角型接线
|
||||
|
||||
Reference in New Issue
Block a user