diff --git a/lib/remote/apilistener.cpp b/lib/remote/apilistener.cpp index 4d788610f..3a454debb 100644 --- a/lib/remote/apilistener.cpp +++ b/lib/remote/apilistener.cpp @@ -741,11 +741,19 @@ void ApiListener::ApiTimerHandler() for (int ts : files) { bool need = false; + auto localZone (GetLocalEndpoint()->GetZone()); for (const Endpoint::Ptr& endpoint : ConfigType::GetObjectsByType()) { if (endpoint == GetLocalEndpoint()) continue; + auto zone (endpoint->GetZone()); + + /* only care for endpoints in a) the same zone b) our parent zone c) immediate child zones */ + if (!(zone == localZone || zone == localZone->GetParent() || zone->GetParent() == localZone)) { + continue; + } + if (endpoint->GetLogDuration() >= 0 && ts < now - endpoint->GetLogDuration()) continue;