WIFI-1311: Cloud Backend - Update ApPerformance metric to include perProcessUtil for cpu and mem

This commit is contained in:
Mike Hansen
2021-01-19 12:22:15 -05:00
parent 4822a60f79
commit cdc29b6b32
2 changed files with 30 additions and 16 deletions

View File

@@ -72,6 +72,12 @@
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>service-metric-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>system-event-service-interface</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
@@ -83,12 +89,6 @@
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>client-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>alarm-service-interface</artifactId>
@@ -108,6 +108,12 @@
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>client-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency>
<artifactId>routing-service-interface</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>

View File

@@ -21,7 +21,6 @@ import com.google.protobuf.util.JsonFormat;
import com.google.protobuf.util.JsonFormat.TypeRegistry;
import com.telecominfraproject.wlan.client.ClientServiceInterface;
import com.telecominfraproject.wlan.client.info.models.ClientInfoDetails;
import com.telecominfraproject.wlan.client.session.models.AssociationState;
import com.telecominfraproject.wlan.client.session.models.ClientEapDetails;
import com.telecominfraproject.wlan.client.session.models.ClientFailureDetails;
import com.telecominfraproject.wlan.client.session.models.ClientSession;
@@ -50,6 +49,7 @@ import com.telecominfraproject.wlan.servicemetric.apnode.models.ApPerformance;
import com.telecominfraproject.wlan.servicemetric.apnode.models.DnsProbeMetric;
import com.telecominfraproject.wlan.servicemetric.apnode.models.EthernetLinkState;
import com.telecominfraproject.wlan.servicemetric.apnode.models.NetworkProbeMetrics;
import com.telecominfraproject.wlan.servicemetric.apnode.models.PerProcessUtilization;
import com.telecominfraproject.wlan.servicemetric.apnode.models.RadioStatistics;
import com.telecominfraproject.wlan.servicemetric.apnode.models.RadioUtilization;
import com.telecominfraproject.wlan.servicemetric.apnode.models.StateUpDownError;
@@ -1021,6 +1021,16 @@ public class MqttStatsPublisher {
}
apPerformance.setUpTime((long) deviceReport.getUptime());
List<PerProcessUtilization> cpuPerProcess = new ArrayList<>();
deviceReport.getPsCpuUtilList().stream()
.forEach(c -> cpuPerProcess.add(new PerProcessUtilization(c.getPid(), c.getCmd(), c.getUtil())));
apPerformance.setPsCpuUtil(cpuPerProcess);
List<PerProcessUtilization> memPerProcess = new ArrayList<>();
deviceReport.getPsMemUtilList().stream()
.forEach(c -> memPerProcess.add(new PerProcessUtilization(c.getPid(), c.getCmd(), c.getUtil())));
apPerformance.setPsMemUtil(memPerProcess);
updateDeviceStatusForReport(customerId, equipmentId, deviceReport, avgRadioTemp);
}
@@ -1784,19 +1794,17 @@ public class MqttStatsPublisher {
if (session != null) {
ClientSessionDetails latestSessionDetails = new ClientSessionDetails();
ClientSessionDetails latestSessionDetails = new ClientSessionDetails();
// could still be values from before
// disconnect occured.
latestSessionDetails.setMetricDetails(
calculateClientSessionMetricDetails(client, clientReport.getTimestampMs()));
// could still be values from before
// disconnect occured.
latestSessionDetails.setMetricDetails(calculateClientSessionMetricDetails(
client, clientReport.getTimestampMs()));
session.getDetails().mergeSession(latestSessionDetails);
session.getDetails().mergeSession(latestSessionDetails);
clientServiceInterface.updateSession(session);
clientServiceInterface.updateSession(session);
}
}