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> <version>${tip-wlan-cloud.release.version}</version>
</dependency> </dependency>
<dependency>
<artifactId>service-metric-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency> <dependency>
<artifactId>system-event-service-interface</artifactId> <artifactId>system-event-service-interface</artifactId>
<groupId>com.telecominfraproject.wlan</groupId> <groupId>com.telecominfraproject.wlan</groupId>
@@ -84,12 +90,6 @@
<version>${tip-wlan-cloud.release.version}</version> <version>${tip-wlan-cloud.release.version}</version>
</dependency> </dependency>
<dependency>
<artifactId>client-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency> <dependency>
<artifactId>alarm-service-interface</artifactId> <artifactId>alarm-service-interface</artifactId>
<groupId>com.telecominfraproject.wlan</groupId> <groupId>com.telecominfraproject.wlan</groupId>
@@ -108,6 +108,12 @@
<version>${tip-wlan-cloud.release.version}</version> <version>${tip-wlan-cloud.release.version}</version>
</dependency> </dependency>
<dependency>
<artifactId>client-models</artifactId>
<groupId>com.telecominfraproject.wlan</groupId>
<version>${tip-wlan-cloud.release.version}</version>
</dependency>
<dependency> <dependency>
<artifactId>routing-service-interface</artifactId> <artifactId>routing-service-interface</artifactId>
<groupId>com.telecominfraproject.wlan</groupId> <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.google.protobuf.util.JsonFormat.TypeRegistry;
import com.telecominfraproject.wlan.client.ClientServiceInterface; import com.telecominfraproject.wlan.client.ClientServiceInterface;
import com.telecominfraproject.wlan.client.info.models.ClientInfoDetails; 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.ClientEapDetails;
import com.telecominfraproject.wlan.client.session.models.ClientFailureDetails; import com.telecominfraproject.wlan.client.session.models.ClientFailureDetails;
import com.telecominfraproject.wlan.client.session.models.ClientSession; 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.DnsProbeMetric;
import com.telecominfraproject.wlan.servicemetric.apnode.models.EthernetLinkState; import com.telecominfraproject.wlan.servicemetric.apnode.models.EthernetLinkState;
import com.telecominfraproject.wlan.servicemetric.apnode.models.NetworkProbeMetrics; 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.RadioStatistics;
import com.telecominfraproject.wlan.servicemetric.apnode.models.RadioUtilization; import com.telecominfraproject.wlan.servicemetric.apnode.models.RadioUtilization;
import com.telecominfraproject.wlan.servicemetric.apnode.models.StateUpDownError; import com.telecominfraproject.wlan.servicemetric.apnode.models.StateUpDownError;
@@ -1021,6 +1021,16 @@ public class MqttStatsPublisher {
} }
apPerformance.setUpTime((long) deviceReport.getUptime()); 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); updateDeviceStatusForReport(customerId, equipmentId, deviceReport, avgRadioTemp);
} }
@@ -1786,17 +1796,15 @@ public class MqttStatsPublisher {
ClientSessionDetails latestSessionDetails = new ClientSessionDetails(); ClientSessionDetails latestSessionDetails = new ClientSessionDetails();
// could still be values from before // could still be values from before
// disconnect occured. // disconnect occured.
latestSessionDetails.setMetricDetails(calculateClientSessionMetricDetails( latestSessionDetails.setMetricDetails(
client, clientReport.getTimestampMs())); calculateClientSessionMetricDetails(client, clientReport.getTimestampMs()));
session.getDetails().mergeSession(latestSessionDetails); session.getDetails().mergeSession(latestSessionDetails);
clientServiceInterface.updateSession(session); clientServiceInterface.updateSession(session);
} }
} }