mirror of
https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
synced 2025-11-02 19:47:52 +00:00
Restore Dao function to write Uuid for created VIFs into the Wifi_Radio_Config db table, this was removed initially per a request from AP team, but has been re-evaluated to be necessary. Increase log level to info for MqttMessageProcessor to facilitate stats/metrics analysis
This commit is contained in:
@@ -39,7 +39,6 @@ import com.telecominfraproject.wlan.core.model.equipment.SecurityType;
|
|||||||
import com.telecominfraproject.wlan.core.model.equipment.WiFiSessionUtility;
|
import com.telecominfraproject.wlan.core.model.equipment.WiFiSessionUtility;
|
||||||
import com.telecominfraproject.wlan.core.model.utils.DecibelUtils;
|
import com.telecominfraproject.wlan.core.model.utils.DecibelUtils;
|
||||||
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
import com.telecominfraproject.wlan.equipment.EquipmentServiceInterface;
|
||||||
import com.telecominfraproject.wlan.equipment.models.ApElementConfiguration;
|
|
||||||
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
import com.telecominfraproject.wlan.equipment.models.Equipment;
|
||||||
import com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities.OvsdbToWlanCloudTypeMappingUtility;
|
import com.telecominfraproject.wlan.opensync.ovsdb.dao.utilities.OvsdbToWlanCloudTypeMappingUtility;
|
||||||
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
|
import com.telecominfraproject.wlan.profile.ProfileServiceInterface;
|
||||||
@@ -147,7 +146,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
private CloudEventDispatcherInterface equipmentMetricsCollectorInterface;
|
private CloudEventDispatcherInterface equipmentMetricsCollectorInterface;
|
||||||
|
|
||||||
void processMqttMessage(String topic, WCStatsReport wcStatsReport) {
|
void processMqttMessage(String topic, WCStatsReport wcStatsReport) {
|
||||||
LOG.debug("Received WCStatsReport {}", wcStatsReport.toString());
|
LOG.info("Received WCStatsReport {}", wcStatsReport.toString());
|
||||||
|
|
||||||
LOG.info("Received report on topic {}", topic);
|
LOG.info("Received report on topic {}", topic);
|
||||||
int customerId = extractCustomerIdFromTopic(topic);
|
int customerId = extractCustomerIdFromTopic(topic);
|
||||||
@@ -244,7 +243,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!metricRecordList.isEmpty()) {
|
if (!metricRecordList.isEmpty()) {
|
||||||
LOG.debug("Publishing Metrics {}", metricRecordList);
|
LOG.info("Publishing Metrics {}", metricRecordList);
|
||||||
equipmentMetricsCollectorInterface.publishMetrics(metricRecordList);
|
equipmentMetricsCollectorInterface.publishMetrics(metricRecordList);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -992,7 +991,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
eventTimestamp = videoVoiceReport.getTimestampMs();
|
eventTimestamp = videoVoiceReport.getTimestampMs();
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.debug("Received VideoVoiceReport {} for SIP call", videoVoiceReport);
|
LOG.info("Received VideoVoiceReport {} for SIP call", videoVoiceReport);
|
||||||
|
|
||||||
processRealTImeSipCallReportEvent(customerId, equipmentId, eventTimestamp, eventsList, videoVoiceReport);
|
processRealTImeSipCallReportEvent(customerId, equipmentId, eventTimestamp, eventsList, videoVoiceReport);
|
||||||
|
|
||||||
@@ -1342,7 +1341,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
void populateApNodeMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
void populateApNodeMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
||||||
long locationId) {
|
long locationId) {
|
||||||
LOG.debug("populateApNodeMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
LOG.info("populateApNodeMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
||||||
ApNodeMetrics apNodeMetrics = new ApNodeMetrics();
|
ApNodeMetrics apNodeMetrics = new ApNodeMetrics();
|
||||||
ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
|
ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
|
||||||
|
|
||||||
@@ -1603,7 +1602,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
void updateDeviceStatusRadioUtilizationReport(int customerId, long equipmentId,
|
void updateDeviceStatusRadioUtilizationReport(int customerId, long equipmentId,
|
||||||
RadioUtilizationReport radioUtilizationReport) {
|
RadioUtilizationReport radioUtilizationReport) {
|
||||||
LOG.debug(
|
LOG.info(
|
||||||
"Processing updateDeviceStatusRadioUtilizationReport for equipmentId {} with RadioUtilizationReport {}",
|
"Processing updateDeviceStatusRadioUtilizationReport for equipmentId {} with RadioUtilizationReport {}",
|
||||||
equipmentId, radioUtilizationReport);
|
equipmentId, radioUtilizationReport);
|
||||||
|
|
||||||
@@ -1611,7 +1610,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
StatusDataType.RADIO_UTILIZATION);
|
StatusDataType.RADIO_UTILIZATION);
|
||||||
|
|
||||||
if (radioUtilizationStatus == null) {
|
if (radioUtilizationStatus == null) {
|
||||||
LOG.debug("Create new radioUtilizationStatus");
|
LOG.info("Create new radioUtilizationStatus");
|
||||||
radioUtilizationStatus = new Status();
|
radioUtilizationStatus = new Status();
|
||||||
radioUtilizationStatus.setCustomerId(customerId);
|
radioUtilizationStatus.setCustomerId(customerId);
|
||||||
radioUtilizationStatus.setEquipmentId(equipmentId);
|
radioUtilizationStatus.setEquipmentId(equipmentId);
|
||||||
@@ -1722,24 +1721,24 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
eqOsPerformance.setTotalAvailableMemoryKb(deviceReport.getMemUtil().getMemTotal());
|
eqOsPerformance.setTotalAvailableMemoryKb(deviceReport.getMemUtil().getMemTotal());
|
||||||
status.setDetails(eqOsPerformance);
|
status.setDetails(eqOsPerformance);
|
||||||
status = statusServiceInterface.update(status);
|
status = statusServiceInterface.update(status);
|
||||||
LOG.debug("updated status {}", status);
|
LOG.info("updated status {}", status);
|
||||||
}
|
}
|
||||||
|
|
||||||
void populateApClientMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
void populateApClientMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
||||||
long locationId) {
|
long locationId) {
|
||||||
LOG.debug("populateApClientMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
LOG.info("populateApClientMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
||||||
|
|
||||||
for (ClientReport clReport : report.getClientsList()) {
|
for (ClientReport clReport : report.getClientsList()) {
|
||||||
for (Client cl : clReport.getClientListList()) {
|
for (Client cl : clReport.getClientListList()) {
|
||||||
|
|
||||||
if (cl.getMacAddress() == null) {
|
if (cl.getMacAddress() == null) {
|
||||||
LOG.debug(
|
LOG.info(
|
||||||
"No mac address for Client {}, cannot set device mac address for client in ClientMetrics.",
|
"No mac address for Client {}, cannot set device mac address for client in ClientMetrics.",
|
||||||
cl);
|
cl);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.debug("Processing ClientReport from AP {}", cl.getMacAddress());
|
LOG.info("Processing ClientReport from AP {}", cl.getMacAddress());
|
||||||
|
|
||||||
ServiceMetric smr = new ServiceMetric(customerId, equipmentId, new MacAddress(cl.getMacAddress()));
|
ServiceMetric smr = new ServiceMetric(customerId, equipmentId, new MacAddress(cl.getMacAddress()));
|
||||||
smr.setLocationId(locationId);
|
smr.setLocationId(locationId);
|
||||||
@@ -1763,7 +1762,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
long sessionId = WiFiSessionUtility.encodeWiFiAssociationId(clReport.getTimestampMs() / 1000L,
|
long sessionId = WiFiSessionUtility.encodeWiFiAssociationId(clReport.getTimestampMs() / 1000L,
|
||||||
MacAddress.convertMacStringToLongValue(cl.getMacAddress()));
|
MacAddress.convertMacStringToLongValue(cl.getMacAddress()));
|
||||||
|
|
||||||
LOG.debug("populateApClientMetrics Session Id {}", sessionId);
|
LOG.info("populateApClientMetrics Session Id {}", sessionId);
|
||||||
cMetrics.setSessionId(sessionId);
|
cMetrics.setSessionId(sessionId);
|
||||||
|
|
||||||
if (cl.hasStats()) {
|
if (cl.hasStats()) {
|
||||||
@@ -1821,7 +1820,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.debug("ApClientMetrics Report {}", cMetrics);
|
LOG.info("ApClientMetrics Report {}", cMetrics);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1831,7 +1830,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
void populateNeighbourScanReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
|
void populateNeighbourScanReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
|
||||||
long equipmentId, long locationId) {
|
long equipmentId, long locationId) {
|
||||||
LOG.debug("populateNeighbourScanReports for Customer {} Equipment {}", customerId, equipmentId);
|
LOG.info("populateNeighbourScanReports for Customer {} Equipment {}", customerId, equipmentId);
|
||||||
|
|
||||||
for (Neighbor neighbor : report.getNeighborsList()) {
|
for (Neighbor neighbor : report.getNeighborsList()) {
|
||||||
|
|
||||||
@@ -1992,7 +1991,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
clientSession = clientServiceInterface.updateSession(clientSession);
|
clientSession = clientServiceInterface.updateSession(clientSession);
|
||||||
|
|
||||||
LOG.debug("Updated client session {}", clientSession);
|
LOG.info("Updated client session {}", clientSession);
|
||||||
|
|
||||||
return clientSession;
|
return clientSession;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@@ -2003,14 +2002,14 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
ClientSessionMetricDetails calculateClientSessionMetricDetails(sts.OpensyncStats.Client client, long timestamp) {
|
ClientSessionMetricDetails calculateClientSessionMetricDetails(sts.OpensyncStats.Client client, long timestamp) {
|
||||||
|
|
||||||
LOG.debug("calculateClientSessionMetricDetails for Client {} at timestamp {}", client.getMacAddress(),
|
LOG.info("calculateClientSessionMetricDetails for Client {} at timestamp {}", client.getMacAddress(),
|
||||||
timestamp);
|
timestamp);
|
||||||
|
|
||||||
ClientSessionMetricDetails metricDetails = new ClientSessionMetricDetails();
|
ClientSessionMetricDetails metricDetails = new ClientSessionMetricDetails();
|
||||||
|
|
||||||
|
|
||||||
if (LOG.isDebugEnabled())
|
if (LOG.isDebugEnabled())
|
||||||
LOG.debug("Stats: {} DurationMs {}", client.getStats(), client.getDurationMs());
|
LOG.info("Stats: {} DurationMs {}", client.getStats(), client.getDurationMs());
|
||||||
int rssi = client.getStats().getRssi();
|
int rssi = client.getStats().getRssi();
|
||||||
metricDetails.setRssi(rssi);
|
metricDetails.setRssi(rssi);
|
||||||
metricDetails.setRxBytes(client.getStats().getRxBytes());
|
metricDetails.setRxBytes(client.getStats().getRxBytes());
|
||||||
@@ -2028,7 +2027,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
metricDetails.setRxRateKbps((long) client.getStats().getRxRate());
|
metricDetails.setRxRateKbps((long) client.getStats().getRxRate());
|
||||||
metricDetails.setTxRateKbps((long) client.getStats().getTxRate());
|
metricDetails.setTxRateKbps((long) client.getStats().getTxRate());
|
||||||
if (LOG.isDebugEnabled())
|
if (LOG.isDebugEnabled())
|
||||||
LOG.debug("RxRateKbps {} TxRateKbps {}", metricDetails.getRxRateKbps(), metricDetails.getTxRateKbps());
|
LOG.info("RxRateKbps {} TxRateKbps {}", metricDetails.getRxRateKbps(), metricDetails.getTxRateKbps());
|
||||||
|
|
||||||
// Throughput, do rate / duration
|
// Throughput, do rate / duration
|
||||||
if (client.getDurationMs() > 1000) {
|
if (client.getDurationMs() > 1000) {
|
||||||
@@ -2041,12 +2040,12 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
float txBytesToMb = txBytesFv / 125000F;
|
float txBytesToMb = txBytesFv / 125000F;
|
||||||
|
|
||||||
if (LOG.isDebugEnabled())
|
if (LOG.isDebugEnabled())
|
||||||
LOG.debug("rxBytesToMb {} txBytesToMb {} ", rxBytesToMb, txBytesToMb);
|
LOG.info("rxBytesToMb {} txBytesToMb {} ", rxBytesToMb, txBytesToMb);
|
||||||
|
|
||||||
metricDetails.setRxMbps(rxBytesToMb / durationSec);
|
metricDetails.setRxMbps(rxBytesToMb / durationSec);
|
||||||
metricDetails.setTxMbps(txBytesToMb / durationSec);
|
metricDetails.setTxMbps(txBytesToMb / durationSec);
|
||||||
if (LOG.isDebugEnabled())
|
if (LOG.isDebugEnabled())
|
||||||
LOG.debug("RxMbps {} TxMbps {} ", metricDetails.getRxMbps(), metricDetails.getTxMbps());
|
LOG.info("RxMbps {} TxMbps {} ", metricDetails.getRxMbps(), metricDetails.getTxMbps());
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
LOG.info("Cannot calculate tx/rx throughput for Client {} based on duration of {} Ms",
|
LOG.info("Cannot calculate tx/rx throughput for Client {} based on duration of {} Ms",
|
||||||
@@ -2060,7 +2059,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
void populateApSsidMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
void populateApSsidMetrics(List<ServiceMetric> metricRecordList, Report report, int customerId, long equipmentId,
|
||||||
String apId, long locationId) {
|
String apId, long locationId) {
|
||||||
|
|
||||||
LOG.debug("populateApSsidMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
LOG.info("populateApSsidMetrics for Customer {} Equipment {}", customerId, equipmentId);
|
||||||
ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
|
ServiceMetric smr = new ServiceMetric(customerId, equipmentId);
|
||||||
smr.setLocationId(locationId);
|
smr.setLocationId(locationId);
|
||||||
ApSsidMetrics apSsidMetrics = new ApSsidMetrics();
|
ApSsidMetrics apSsidMetrics = new ApSsidMetrics();
|
||||||
@@ -2072,7 +2071,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
for (ClientReport clientReport : report.getClientsList()) {
|
for (ClientReport clientReport : report.getClientsList()) {
|
||||||
|
|
||||||
LOG.debug("ClientReport for channel {} RadioBand {}", clientReport.getChannel(), clientReport.getBand());
|
LOG.info("ClientReport for channel {} RadioBand {}", clientReport.getChannel(), clientReport.getBand());
|
||||||
|
|
||||||
if (smr.getCreatedTimestamp() < clientReport.getTimestampMs()) {
|
if (smr.getCreatedTimestamp() < clientReport.getTimestampMs()) {
|
||||||
smr.setCreatedTimestamp(clientReport.getTimestampMs());
|
smr.setCreatedTimestamp(clientReport.getTimestampMs());
|
||||||
@@ -2115,7 +2114,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
LOG.debug("Client Report Date is {}", new Date(clientReport.getTimestampMs()));
|
LOG.info("Client Report Date is {}", new Date(clientReport.getTimestampMs()));
|
||||||
int numConnectedClients = 0;
|
int numConnectedClients = 0;
|
||||||
for (Client client : clientReport.getClientListList()) {
|
for (Client client : clientReport.getClientListList()) {
|
||||||
if (client.hasStats()) {
|
if (client.hasStats()) {
|
||||||
@@ -2195,7 +2194,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOG.debug("Unabled to update client {} session {}", client, e);
|
LOG.info("Unabled to update client {} session {}", client, e);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2225,7 +2224,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.debug("ApSsidMetrics {}", apSsidMetrics);
|
LOG.info("ApSsidMetrics {}", apSsidMetrics);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2267,7 +2266,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
void populateChannelInfoReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
|
void populateChannelInfoReports(List<ServiceMetric> metricRecordList, Report report, int customerId,
|
||||||
long equipmentId, long locationId, long profileId) {
|
long equipmentId, long locationId, long profileId) {
|
||||||
|
|
||||||
LOG.debug("populateChannelInfoReports for Customer {} Equipment {}", customerId, equipmentId);
|
LOG.info("populateChannelInfoReports for Customer {} Equipment {}", customerId, equipmentId);
|
||||||
|
|
||||||
ProfileContainer profileContainer = new ProfileContainer(
|
ProfileContainer profileContainer = new ProfileContainer(
|
||||||
profileServiceInterface.getProfileWithChildren(profileId));
|
profileServiceInterface.getProfileWithChildren(profileId));
|
||||||
@@ -2333,7 +2332,7 @@ public class OpensyncExternalIntegrationMqttMessageProcessor {
|
|||||||
smr.setCreatedTimestamp(survey.getTimestampMs());
|
smr.setCreatedTimestamp(survey.getTimestampMs());
|
||||||
metricRecordList.add(smr);
|
metricRecordList.add(smr);
|
||||||
|
|
||||||
LOG.debug("ChannelInfoReports {}", channelInfoReports);
|
LOG.info("ChannelInfoReports {}", channelInfoReports);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -104,12 +104,15 @@ import com.vmware.ovsdb.protocol.methods.TableUpdate;
|
|||||||
import com.vmware.ovsdb.protocol.methods.TableUpdates;
|
import com.vmware.ovsdb.protocol.methods.TableUpdates;
|
||||||
import com.vmware.ovsdb.protocol.operation.Delete;
|
import com.vmware.ovsdb.protocol.operation.Delete;
|
||||||
import com.vmware.ovsdb.protocol.operation.Insert;
|
import com.vmware.ovsdb.protocol.operation.Insert;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.Mutate;
|
||||||
import com.vmware.ovsdb.protocol.operation.Operation;
|
import com.vmware.ovsdb.protocol.operation.Operation;
|
||||||
import com.vmware.ovsdb.protocol.operation.Select;
|
import com.vmware.ovsdb.protocol.operation.Select;
|
||||||
import com.vmware.ovsdb.protocol.operation.Update;
|
import com.vmware.ovsdb.protocol.operation.Update;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Atom;
|
import com.vmware.ovsdb.protocol.operation.notation.Atom;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Condition;
|
import com.vmware.ovsdb.protocol.operation.notation.Condition;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Function;
|
import com.vmware.ovsdb.protocol.operation.notation.Function;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Mutation;
|
||||||
|
import com.vmware.ovsdb.protocol.operation.notation.Mutator;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
import com.vmware.ovsdb.protocol.operation.notation.Row;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
import com.vmware.ovsdb.protocol.operation.notation.Uuid;
|
||||||
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
import com.vmware.ovsdb.protocol.operation.notation.Value;
|
||||||
@@ -2754,7 +2757,7 @@ public class OvsdbDao {
|
|||||||
|
|
||||||
// TODO: when AP support for Bonjour Gateway set values
|
// TODO: when AP support for Bonjour Gateway set values
|
||||||
if (bonjourServiceMap != null && bonjourServiceMap.size() > 0) {
|
if (bonjourServiceMap != null && bonjourServiceMap.size() > 0) {
|
||||||
LOG.debug("SSID {} Bonjour Services per vlan {}", ssid, bonjourServiceMap);
|
LOG.info("SSID {} Bonjour Services per vlan {}", ssid, bonjourServiceMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
updateColumns.put("bridge", new Atom<>(bridgeInterfaceName));
|
updateColumns.put("bridge", new Atom<>(bridgeInterfaceName));
|
||||||
@@ -2832,13 +2835,13 @@ public class OvsdbDao {
|
|||||||
|
|
||||||
if (isUpdate) {
|
if (isUpdate) {
|
||||||
for (OperationResult res : result) {
|
for (OperationResult res : result) {
|
||||||
LOG.debug("Op Result {}", res);
|
LOG.info("Op Result {}", res);
|
||||||
}
|
}
|
||||||
LOG.info("Updated existing SSID {} on interface {} / {}", ssid, vifInterfaceName, radioFreqBand);
|
LOG.info("Updated existing SSID {} on interface {} / {}", ssid, vifInterfaceName, radioFreqBand);
|
||||||
} else {
|
} else {
|
||||||
Uuid vifConfigUuid = null;
|
Uuid vifConfigUuid = null;
|
||||||
for (OperationResult res : result) {
|
for (OperationResult res : result) {
|
||||||
LOG.debug("Op Result {}", res);
|
LOG.info("Op Result {}", res);
|
||||||
if (res instanceof InsertResult) {
|
if (res instanceof InsertResult) {
|
||||||
vifConfigUuid = ((InsertResult) res).getUuid();
|
vifConfigUuid = ((InsertResult) res).getUuid();
|
||||||
}
|
}
|
||||||
@@ -2848,6 +2851,7 @@ public class OvsdbDao {
|
|||||||
}
|
}
|
||||||
updateColumns.clear();
|
updateColumns.clear();
|
||||||
operations.clear();
|
operations.clear();
|
||||||
|
updateVifConfigsSetForRadio(ovsdbClient, ssid, radioFreqBand, operations, updateColumns, vifConfigUuid);
|
||||||
LOG.info("Provisioned SSID {} on interface {} / {}", ssid, vifInterfaceName, radioFreqBand);
|
LOG.info("Provisioned SSID {} on interface {} / {}", ssid, vifInterfaceName, radioFreqBand);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2916,6 +2920,32 @@ public class OvsdbDao {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updateVifConfigsSetForRadio(OvsdbClient ovsdbClient, String ssid, String radioFreqBand,
|
||||||
|
List<Operation> operations, Map<String, Value> updateColumns, Uuid vifConfigUuid)
|
||||||
|
throws OvsdbClientException, InterruptedException, ExecutionException, TimeoutException {
|
||||||
|
|
||||||
|
List<Condition> conditions = new ArrayList<>();
|
||||||
|
conditions.add(new Condition("freq_band", Function.EQUALS, new Atom<>(radioFreqBand)));
|
||||||
|
|
||||||
|
List<Mutation> mutations = new ArrayList<>();
|
||||||
|
Mutation mutation = new Mutation("vif_configs", Mutator.INSERT, new Atom<>(vifConfigUuid));
|
||||||
|
mutations.add(mutation);
|
||||||
|
operations.add(new Mutate(wifiRadioConfigDbTable, conditions, mutations));
|
||||||
|
|
||||||
|
LOG.info("Sending batch of operations : {} ", operations);
|
||||||
|
|
||||||
|
CompletableFuture<OperationResult[]> fResult = ovsdbClient.transact(ovsdbName, operations);
|
||||||
|
OperationResult[] result = fResult.get(ovsdbTimeoutSec, TimeUnit.SECONDS);
|
||||||
|
|
||||||
|
if (LOG.isDebugEnabled()) {
|
||||||
|
LOG.info("Updated WifiRadioConfig {} for SSID {}:", radioFreqBand, ssid);
|
||||||
|
|
||||||
|
for (OperationResult res : result) {
|
||||||
|
LOG.info("Op Result {}", res);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void configureSsids(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncApConfig) {
|
public void configureSsids(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncApConfig) {
|
||||||
|
|
||||||
boolean rrmEnabled = false;
|
boolean rrmEnabled = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user