use list in test device

This commit is contained in:
lnk
2025-03-28 13:43:55 +08:00
parent e8b5f08c6b
commit 07015b523e
2 changed files with 52 additions and 8 deletions

View File

@@ -859,7 +859,7 @@ void rocketmq_test_300(int mpnum,int front_index) {
data.mp_id = QString::number(data.monitor_id); data.mp_id = QString::number(data.monitor_id);
std::string modified_time = to_string(current_time_ms); // 时间转换为整数类型Unix时间戳 std::string modified_time = my_to_string(current_time_ms); // 时间转换为整数类型Unix时间戳
// 替换消息中的 Monitor 和 TIME 字段(只匹配字段名,不匹配具体数值) // 替换消息中的 Monitor 和 TIME 字段(只匹配字段名,不匹配具体数值)
std::string modified_strText = base_strText; std::string modified_strText = base_strText;
@@ -871,7 +871,7 @@ void rocketmq_test_300(int mpnum,int front_index) {
size_t quote_pos = modified_strText.find("\"", colon_pos); size_t quote_pos = modified_strText.find("\"", colon_pos);
size_t end_quote_pos = modified_strText.find("\"", quote_pos + 1); size_t end_quote_pos = modified_strText.find("\"", quote_pos + 1);
if (colon_pos != std::string::npos && quote_pos != std::string::npos && end_quote_pos != std::string::npos) { if (colon_pos != std::string::npos && quote_pos != std::string::npos && end_quote_pos != std::string::npos) {
modified_strText.replace(quote_pos + 1, end_quote_pos - quote_pos - 1, to_string(data.monitor_id)); modified_strText.replace(quote_pos + 1, end_quote_pos - quote_pos - 1, my_to_string(data.monitor_id));
} }
} }

View File

@@ -325,9 +325,11 @@ std::string G_CONNECT_KEY = "";//consumer key
int G_TEST_FLAG = 0; int G_TEST_FLAG = 0;
int G_TEST_NUM = 0; int G_TEST_NUM = 0;
int TEST_PORT = 11000;//<2F><><EFBFBD>ڵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>̵<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>shell<6C>Ķ˿<C4B6> int TEST_PORT = 11000;//<2F><><EFBFBD>ڵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>̵<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>shell<6C>Ķ˿<C4B6>
std::string G_TEST_LIST = "";//<2F><><EFBFBD><EFBFBD><EFBFBD>õķ<C3B5><C4B7><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5>ն<EFBFBD><D5B6>б<EFBFBD>
std::vector<std::string> TESTARRAY;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>
//<2F>ն˺ͼ<CBBA><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ɸѡ //<2F>ն˺ͼ<CBBA><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ɸѡ
std::string TERMINAL_STATUS = ""; std::string TERMINAL_STATUS = "";
std::string MONITOR_STATUS = ""; std::string MONITOR_STATUS = "";
@@ -661,10 +663,36 @@ void update_odbc(char* newServicename, char* newPort) {
rename(tempFilenameBuffer, filename); rename(tempFilenameBuffer, filename);
} }
//lnk20250328<32><38><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>б<EFBFBD><D0B1>õĺ<C3B5><C4BA><EFBFBD>
void parseTestList(const std::string& input) {
TESTARRAY.clear(); // <20><><EFBFBD>վ<EFBFBD><D5BE><EFBFBD><EFBFBD><EFBFBD>
size_t start = 0;
size_t end = 0;
while ((end = input.find(',', start)) != std::string::npos) {
std::string id = input.substr(start, end - start);
if (!id.empty()) {
TESTARRAY.push_back(id);
std::cout << "use realdata device id:" << id << std::endl;
}
start = end + 1;
}
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB> ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ж<EFBFBD><D0B6>Ž<EFBFBD>β<EFBFBD><CEB2>
if (start < input.length()) {
std::string lastId = input.substr(start);
if (!lastId.empty()) {
TESTARRAY.push_back(lastId);
std::cout << "use realdata device id:" << lastId << std::endl;
}
}
}
//CZY 2023-09-06 config //CZY 2023-09-06 config
void init_config() { void init_config() {
QByteArray ba; QByteArray ba;
QString MyKafkaIniFilename = QString("../etc/") + QString("mykafka.ini"); //+QString::fromAscii(subdir) QString MyKafkaIniFilename = QString("../etc/config/") + QString("mykafka.ini"); //+QString::fromAscii(subdir)
QSettings settings(MyKafkaIniFilename, QSettings::IniFormat); QSettings settings(MyKafkaIniFilename, QSettings::IniFormat);
ACCOUNT_UPDATE_INTERVAL = settings.value("AccountUpdate/Interval", 0).toInt(); ACCOUNT_UPDATE_INTERVAL = settings.value("AccountUpdate/Interval", 0).toInt();
@@ -929,6 +957,11 @@ void init_config() {
//MQ<4D><51><EFBFBD><EFBFBD> //MQ<4D><51><EFBFBD><EFBFBD>
G_TEST_FLAG = settings.value("RocketMq/Testflag", 0).toInt(); G_TEST_FLAG = settings.value("RocketMq/Testflag", 0).toInt();
G_TEST_NUM = settings.value("RocketMq/Testnum", 0).toInt(); G_TEST_NUM = settings.value("RocketMq/Testnum", 0).toInt();
ba = settings.value("RocketMq/TestList", 0).toString().toLatin1();
G_TEST_LIST = strdup(ba.data());
parseTestList(G_TEST_LIST);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5>ն<EFBFBD><D5B6>б<EFBFBD>
//<2F><><EFBFBD><EFBFBD>shell //<2F><><EFBFBD><EFBFBD>shell
TEST_PORT = settings.value("RocketMq/TestPort", 0).toInt(); TEST_PORT = settings.value("RocketMq/TestPort", 0).toInt();
@@ -15200,11 +15233,22 @@ void clearIed(ied_t *ied) {
} }
/*<2A><>װC<D7B0>ɵ<EFBFBD><C9B5>õ<EFBFBD>̨<EFBFBD>˸<EFBFBD><CBB8>º<EFBFBD><C2BA><EFBFBD> *///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /*<2A><>װC<D7B0>ɵ<EFBFBD><C9B5>õ<EFBFBD>̨<EFBFBD>˸<EFBFBD><CBB8>º<EFBFBD><C2BA><EFBFBD> */////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//<2F><><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD> //<2F><><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD>
std::string to_string(long long value) { std::string my_to_string(long long value) {
std::stringstream ss; std::stringstream ss;
ss << value; ss << value;
return ss.str(); return ss.str();
} }
//lnk20250328<32><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><E4B5BD><EFBFBD>ն<EFBFBD>
bool shouldSkipTerminal(const char* terminal_id) {
for (size_t i = 0; i < TESTARRAY.size(); ++i) {
if (TESTARRAY[i] == terminal_id) {
return true;
}
}
return false;
}
void rocketmq_test_300(int mpnum,int front_index) { void rocketmq_test_300(int mpnum,int front_index) {
Ckafka_data_t data; Ckafka_data_t data;
data.strTopic = QString::fromStdString(G_ROCKETMQ_TOPIC); data.strTopic = QString::fromStdString(G_ROCKETMQ_TOPIC);
@@ -15243,8 +15287,8 @@ void rocketmq_test_300(int mpnum,int front_index) {
ied_usr = (ied_usr_t*)ied->usr_ext; ied_usr = (ied_usr_t*)ied->usr_ext;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ն<EFBFBD> //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ն<EFBFBD>
if(strcmp(ied_usr->terminal_id, "8499c5ae999d392b4e73112ca0d2d778") == 0){ if (shouldSkipTerminal(ied_usr->terminal_id)) {
std::cout << "8499c5ae999d392b4e73112ca0d2d778 use true message " << std::endl; std::cout << ied_usr->terminal_id << " use true message " << std::endl;
continue; continue;
} }
@@ -15258,7 +15302,7 @@ void rocketmq_test_300(int mpnum,int front_index) {
data.monitor_id = i + j; data.monitor_id = i + j;
std::string modified_time = to_string(current_time_ms); // ʱ<><CAB1>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>Unixʱ<78><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD> std::string modified_time = my_to_string(current_time_ms); // ʱ<><CAB1>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>Unixʱ<78><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><EFBFBD><E6BBBB>Ϣ<EFBFBD>е<EFBFBD> Monitor <20><> TIME <20>ֶΣ<D6B6>ֻƥ<D6BB><C6A5><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5> // <20><EFBFBD><E6BBBB>Ϣ<EFBFBD>е<EFBFBD> Monitor <20><> TIME <20>ֶΣ<D6B6>ֻƥ<D6BB><C6A5><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
std::string modified_strText = base_strText; std::string modified_strText = base_strText;