Fix spaming log
When shelly integration can't join the multicast group it begins spaming the log each 5s. With this commit it log the joining problem each 5s for the first Minute, after that each 10min. Signed-off-by: Martin Lukas <martin.lukas@chargebyte.com>
This commit is contained in:
parent
7c4af8cd2c
commit
f90561fb26
@ -768,12 +768,23 @@ void IntegrationPluginShelly::joinMulticastGroup()
|
||||
{
|
||||
if (m_coap->joinMulticastGroup()) {
|
||||
qCInfo(dcShelly()) << "Joined CoIoT multicast group";
|
||||
m_multicastRetryCnt = 0;
|
||||
} else {
|
||||
qCWarning(dcShelly()) << "Failed to join CoIoT multicast group. Retrying in 5 seconds...";
|
||||
uint retryTime = 0;
|
||||
|
||||
// FIXME: It would probably be better to monitor the network interfaces and re-join if necessary
|
||||
QTimer::singleShot(5000, m_coap, [this](){
|
||||
if (m_multicastRetryCnt < 12) {
|
||||
qCWarning(dcShelly()) << "Failed to join CoIoT multicast group. Retrying in 5 seconds...";
|
||||
retryTime = 5000;
|
||||
} else {
|
||||
qCWarning(dcShelly()) << "Failed to join CoIoT multicast group. Retrying in 10 minutes...";
|
||||
retryTime = 600000;
|
||||
}
|
||||
|
||||
QTimer::singleShot(retryTime, m_coap, [this](){
|
||||
joinMulticastGroup();
|
||||
});
|
||||
m_multicastRetryCnt++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -94,6 +94,7 @@ private:
|
||||
PluginTimer *m_reconfigureTimer = nullptr;
|
||||
|
||||
Coap *m_coap = nullptr;
|
||||
uint m_multicastRetryCnt = 0;
|
||||
|
||||
QHash<Thing*, ShellyJsonRpcClient*> m_rpcClients;
|
||||
};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user