Search in sources :

Example 1 with SwitchPortStats

use of org.openkilda.model.SwitchPortStats in project open-kilda by telstra.

the class StatsService method getSwitchPortsStats.

/**
 * Gets the switch ports stats.
 *
 * @param startDate
 *            the start date
 * @param endDate
 *            the end date
 * @param downSample
 *            the down sample
 * @param switchId
 *            the switch id
 * @return the switch ports stats
 */
public List<PortInfo> getSwitchPortsStats(String startDate, String endDate, String downSample, String switchId) {
    List<String> switchIds = Arrays.asList(switchId);
    List<SwitchPortStats> switchPortStats = new ArrayList<SwitchPortStats>();
    try {
        String result = statsIntegrationService.getStats(startDate, endDate, downSample, switchIds, null, null, null, null, null, null, StatsType.SWITCH_PORT, null, null);
        ObjectMapper mapper = new ObjectMapper();
        switchPortStats = mapper.readValue(result, TypeFactory.defaultInstance().constructCollectionLikeType(List.class, SwitchPortStats.class));
    } catch (Exception e) {
        LOGGER.error("Error occurred while retriving switch port stats", e);
    }
    List<PortInfo> portStats = getSwitchPortStatsReport(switchPortStats, switchId);
    if (storeService.getSwitchStoreConfig().getUrls().size() > 0) {
        if (!CollectionUtil.isEmpty(switchIds)) {
            try {
                List<Port> inventoryPorts = switchStoreService.getSwitchPort(IoUtil.switchCodeToSwitchId(switchIds.get(0)));
                processInventoryPorts(portStats, inventoryPorts);
            } catch (Exception ex) {
                LOGGER.error("Error occurred while retriving switch ports stats for inventory", ex);
            }
        }
    }
    return portStats;
}
Also used : PortInfo(org.openkilda.model.PortInfo) Port(org.openkilda.integration.source.store.dto.Port) ArrayList(java.util.ArrayList) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) IntegrationException(org.openkilda.integration.exception.IntegrationException) SwitchPortStats(org.openkilda.model.SwitchPortStats)

Aggregations

ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 ArrayList (java.util.ArrayList)1 IntegrationException (org.openkilda.integration.exception.IntegrationException)1 Port (org.openkilda.integration.source.store.dto.Port)1 PortInfo (org.openkilda.model.PortInfo)1 SwitchPortStats (org.openkilda.model.SwitchPortStats)1