aiotc icon indicating copy to clipboard operation
aiotc copied to clipboard

obj manager, id:3, get lowest slave failed !!!

Open tp111222 opened this issue 4 years ago • 7 comments
trafficstars

hi,@debugger999,When I test gat1400 protocol with postman,The following error occurred:

ERR : FILE -> work.cpp, LINE -> 216, mqOpen, mq open 172.17.0.2:5672 failed obj manager, id:3, get lowest slave failed

the postman info:

http://172.17.0.2:11706/system/init { "masterIp": "172.17.0.2", "msgOutParams": [ { "type": "mq", "host": "172.17.0.2", "port": 5672, "userName": "guest", "passWord": "guest", "exchange": "aiotc.exchange.message", "routingKey": "" } ],

"gat1400Params": {
    "localGatHostIp": "34010000002000000001",
    "localGatServerId": "32020200002000000002",
    "localGatPort": 7100,
    "platform": [
        {
            "id": "32020200002000000001",
            "ip": "172.17.0.2",
            "port": 7200,
            "username": "admin",
            "password": "admin",
            "extra": {
                "manufactor": "hik"
            }
        }
    ]
}

}

http://172.17.0.2:11706/obj/add/gat1400 { "name":"test", "type":"camera", "id":3, "data":{ "subType":"gat1400", "deviceId": "32020200002000000003", "mode": 0, "slaveIp": "172.17.2.0", "platformId": "32020200002000000001" } }

tp111222 avatar Dec 30 '20 02:12 tp111222

http://172.17.0.2:11706/system/slave/add { "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764, "internetIp": "8.8.8.8" }

tp111222 avatar Dec 30 '20 03:12 tp111222

关于“mq open 172.17.0.2:5672 failed”,应该是你没有初始化rabiitmq服务器导致,这个不影响测试,只是无法通过mq接收抓拍信息。 关于“get lowest slave failed”,我的理解,可能是没有严格按照"https://debugger999.github.io/2020/06/29/js-version/"中的步骤,漏了“添加slave”这一步。 仅作参考。

debugger999 avatar Dec 30 '20 07:12 debugger999

我刚刚又做了测试的,还是报 “get lowest slave failed“错误,终端打印印象如下:

WARRING : FILE -> work.cpp, LINE -> 194, mqOpen, please system init first DEBUG : FILE -> rest.cpp, LINE -> 287, request_cb, pid:2118, /system/init:{ "masterIp": "172.17.0.2", "msgOutParams": [ { "type": "mq", "host": "172.17.0.2", "port": 5672, "userName": "guest", "passWord": "guest", "exchange": "aiotc.exchange.message", "routingKey": "" } ],

"gat1400Params": {
    "localGatHostIp": "34010000002000000001",
    "localGatServerId": "32020200002000000002",
    "localGatPort": 7100,
    "platform": [
        {
            "id": "32020200002000000001",
            "ip": "172.17.0.2",
            "port": 7200,
            "username": "admin",
            "password": "admin",
            "extra": {
                "manufactor": "hik"
            }
        }
    ]
}

}

delet failed, original.msgOutParams.type, No suitable servers found (serverSelectionTryOnce set): [connection refused calling ismaster on '192.168.0.99:27017'] ERR : FILE -> db.cpp, LINE -> 273, dbWrite, insert failed, {"original":{ "masterIp": "172.17.0.2", "msgOutParams": [ { "type": "mq", "host": "172.17.0.2", "port": 5672, "userName": "guest", "passWord": "guest", "exchange": "aiotc.exchange.message", "routingKey": "" } ],

"gat1400Params": {
    "localGatHostIp": "34010000002000000001",
    "localGatServerId": "32020200002000000002",
    "localGatPort": 7100,
    "platform": [
        {
            "id": "32020200002000000001",
            "ip": "172.17.0.2",
            "port": 7200,
            "username": "admin",
            "password": "admin",
            "extra": {
                "manufactor": "hik"
            }
        }
    ]
}

} }, No servers yet eligible for rescan

DEBUG : FILE -> rest.cpp, LINE -> 287, request_cb, pid:2118, /system/slave/add:{ "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764 delet failed, original.slaveIp, No suitable servers found (serverSelectionTryOnce set): [connection refused calling ismaster on '192.168.0.99:27017'] ERR : FILE -> db.cpp, LINE -> 273, dbWrite, insert failed, {"original":{ "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764

}}, No servers yet eligible for rescan

DEBUG : FILE -> rest.cpp, LINE -> 287, request_cb, pid:2118, /obj/add/gat1400:{ "name":"test", "type":"camera", "id":3, "data":{ "subType":"gat1400", "deviceId": "32020200002000000003", "mode": 0, "slaveIp": "172.17.0.2", "platformId": "32020200002000000001" } } obj manager, id:3, get lowest slave failed delet failed, original.id, No suitable servers found (serverSelectionTryOnce set): [connection refused calling ismaster on '192.168.0.99:27017'] ERR : FILE -> db.cpp, LINE -> 273, dbWrite, insert failed, {"original":{ "name":"test", "type":"camera", "id":3, "data":{ "subType":"gat1400", "deviceId": "32020200002000000003", "mode": 0, "slaveIp": "172.17.0.2", "platformId": "32020200002000000001" } }}, No servers yet eligible for rescan

obj manager, id:3, get lowest slave failed obj manager, id:3, get lowest slave failed obj manager, id:3, get lowest slave failed obj manager, id:3, get lowest slave failed obj manager, id:3, get lowest slave failed obj manager, id:3, get lowest slave failed

tp111222 avatar Dec 30 '20 10:12 tp111222

从你的信息,没有看到“添加slave”命令

debugger999 avatar Dec 30 '20 10:12 debugger999

DEBUG : FILE -> rest.cpp, LINE -> 287, request_cb, pid:2118, /system/slave/add:{ "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764 delet failed, original.slaveIp, No suitable servers found (serverSelectionTryOnce set): [connection refused calling ismaster on '192.168.0.99:27017'] ERR : FILE -> db.cpp, LINE -> 273, dbWrite, insert failed, {"original":{ "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764

}}, No servers yet eligible for rescan

这个就是的吧?

tp111222 avatar Dec 31 '20 00:12 tp111222

http://172.17.0.2:11706/system/slave/add { "slaveIp":"172.17.0.2", "restPort":11762, "streamPort":11764

} 这个是我用postman 发的,初始化完了后,就发的增加slave设备这条命令

tp111222 avatar Dec 31 '20 00:12 tp111222

我觉得,你需要在函数_getlowestLoadSlave里面加几条调试信息,看哪个条件导致的异常。参考如下: static int _getlowestLoadSlave(node_common *p, void *arg) { slaveParam **ppLowestSlave = (slaveParam **)arg; slaveParam *pSlaveParam = (slaveParam *)p->name;

printf("##test, %d, %d,%d,%d,%d\n", __LINE__,
        pSlaveParam->online, pSlaveParam->systemInit, pSlaveParam->load,
        pSlaveLast->load);
if(*ppLowestSlave == NULL) {
    printf("##test, %d\n", __LINE__);
    if(pSlaveParam->online && pSlaveParam->systemInit && pSlaveParam->load < SLAVE_LOAD_MAX) {
        printf("##test, %d\n", __LINE__);
        *ppLowestSlave = pSlaveParam;
    }
}
else {
    slaveParam *pSlaveLast = *ppLowestSlave;
    printf("##test, %d\n", __LINE__);
    if(pSlaveParam->load < pSlaveLast->load && pSlaveParam->online && pSlaveParam->systemInit) {
        printf("##test, %d\n", __LINE__);
        *ppLowestSlave = pSlaveParam;
    }
}
printf("##test, %d\n", __LINE__);

return 0;

}

debugger999 avatar Dec 31 '20 02:12 debugger999