hmci/src/main/java/biz/nellemann/hmci/ManagedSystem.java

548 lines
22 KiB
Java
Raw Normal View History

/*
* Copyright 2020 Mark Nellemann <mark.nellemann@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package biz.nellemann.hmci;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
class ManagedSystem extends MetaSystem {
private final static Logger log = LoggerFactory.getLogger(ManagedSystem.class);
2021-01-14 12:51:18 +00:00
//public final String hmcId;
public final String id;
public final String name;
public final String type;
public final String model;
public final String serialNumber;
public final SystemEnergy energy;
2021-01-14 12:51:18 +00:00
ManagedSystem(String id, String name, String type, String model, String serialNumber) {
this.id = id;
this.name = name;
this.type = type;
this.model = model;
this.serialNumber = serialNumber;
this.energy = new SystemEnergy(this);
}
2021-01-13 07:31:07 +00:00
@Override
public String toString() {
return String.format("[%s] %s (%s-%s %s)", id, name, type, model, serialNumber);
}
2021-03-25 15:46:04 +00:00
List<Measurement> getDetails() {
List<Measurement> list = new ArrayList<>();
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
log.trace("getDetails() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
Map<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("mtm", String.format("%s-%s %s", type, model, serialNumber));
fieldsMap.put("APIversion", metrics.systemUtil.utilInfo.version);
fieldsMap.put("metric", metrics.systemUtil.utilInfo.metricType);
fieldsMap.put("frequency", metrics.systemUtil.utilInfo.frequency);
fieldsMap.put("nextract", "HMCi");
fieldsMap.put("name", name);
fieldsMap.put("utilizedProcUnits", metrics.systemUtil.sample.systemFirmwareUtil.utilizedProcUnits);
fieldsMap.put("assignedMem", metrics.systemUtil.sample.systemFirmwareUtil.assignedMem);
log.trace("getDetails() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
return list;
}
// Memory
List<Measurement> getMemoryMetrics() {
List<Measurement> list = new ArrayList<>();
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
log.trace("getMemoryMetrics() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
Map<String, Object> fieldsMap = new HashMap<>();
2020-12-01 10:48:05 +00:00
fieldsMap.put("totalMem", metrics.systemUtil.sample.serverUtil.memory.totalMem);
fieldsMap.put("availableMem", metrics.systemUtil.sample.serverUtil.memory.availableMem);
fieldsMap.put("configurableMem", metrics.systemUtil.sample.serverUtil.memory.configurableMem);
fieldsMap.put("assignedMemToLpars", metrics.systemUtil.sample.serverUtil.memory.assignedMemToLpars);
2021-03-25 15:46:04 +00:00
fieldsMap.put("virtualPersistentMem", metrics.systemUtil.sample.serverUtil.memory.virtualPersistentMem);
log.trace("getMemoryMetrics() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
return list;
}
2021-03-25 15:46:04 +00:00
// Processor
List<Measurement> getProcessorMetrics() {
List<Measurement> list = new ArrayList<>();
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
log.trace("getProcessorMetrics() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
2020-12-01 10:48:05 +00:00
fieldsMap.put("totalProcUnits", metrics.systemUtil.sample.serverUtil.processor.totalProcUnits);
fieldsMap.put("utilizedProcUnits", metrics.systemUtil.sample.serverUtil.processor.utilizedProcUnits);
fieldsMap.put("availableProcUnits", metrics.systemUtil.sample.serverUtil.processor.availableProcUnits);
fieldsMap.put("configurableProcUnits", metrics.systemUtil.sample.serverUtil.processor.configurableProcUnits);
log.trace("getProcessorMetrics() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
return list;
}
2021-03-25 15:46:04 +00:00
// Shared ProcessorPools
List<Measurement> getSharedProcessorPools() {
List<Measurement> list = new ArrayList<>();
2021-03-25 15:46:04 +00:00
metrics.systemUtil.sample.serverUtil.sharedProcessorPool.forEach(sharedProcessorPool -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("pool", sharedProcessorPool.id);
tagsMap.put("poolname", sharedProcessorPool.name);
log.trace("getSharedProcessorPools() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("assignedProcUnits", sharedProcessorPool.assignedProcUnits);
fieldsMap.put("availableProcUnits", sharedProcessorPool.availableProcUnits);
fieldsMap.put("utilizedProcUnits", sharedProcessorPool.utilizedProcUnits);
fieldsMap.put("borrowedProcUnits", sharedProcessorPool.borrowedProcUnits);
fieldsMap.put("configuredProcUnits", sharedProcessorPool.configuredProcUnits);
log.trace("getSharedProcessorPools() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
2021-03-25 15:46:04 +00:00
// Physical ProcessorPool
List<Measurement> getPhysicalProcessorPool() {
List<Measurement> list = new ArrayList<>();
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
log.trace("getPhysicalProcessorPool() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("assignedProcUnits", metrics.systemUtil.sample.serverUtil.physicalProcessorPool.assignedProcUnits);
fieldsMap.put("availableProcUnits", metrics.systemUtil.sample.serverUtil.physicalProcessorPool.availableProcUnits);
fieldsMap.put("utilizedProcUnits", metrics.systemUtil.sample.serverUtil.physicalProcessorPool.utilizedProcUnits);
fieldsMap.put("configuredProcUnits", metrics.systemUtil.sample.serverUtil.physicalProcessorPool.configuredProcUnits);
fieldsMap.put("borrowedProcUnits", metrics.systemUtil.sample.serverUtil.physicalProcessorPool.borrowedProcUnits);
log.trace("getPhysicalProcessorPool() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
return list;
}
// VIO Details
List<Measurement> getViosDetails() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
log.trace("getViosDetails() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("viosid", vios.id);
fieldsMap.put("viosstate", vios.state);
fieldsMap.put("viosname", vios.name);
fieldsMap.put("affinityScore", vios.affinityScore);
log.trace("getViosDetails() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
// VIO Memory
List<Measurement> getViosMemoryMetrics() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
log.trace("getViosMemoryMetrics() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
Number assignedMem = getNumberMetricObject(vios.memory.assignedMem);
Number utilizedMem = getNumberMetricObject(vios.memory.utilizedMem);
if(assignedMem != null) {
fieldsMap.put("assignedMem", vios.memory.assignedMem);
}
if(utilizedMem != null) {
fieldsMap.put("utilizedMem", vios.memory.utilizedMem);
}
if(assignedMem != null && utilizedMem != null) {
Number usedMemPct = (utilizedMem.intValue() * 100 ) / assignedMem.intValue();
2021-03-25 15:46:04 +00:00
fieldsMap.put("utilizedPct", usedMemPct.floatValue());
}
log.trace("getViosMemoryMetrics() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
2021-03-25 15:46:04 +00:00
// VIO Processor
List<Measurement> getViosProcessorMetrics() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
log.trace("getViosProcessorMetrics() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("utilizedProcUnits", vios.processor.utilizedProcUnits);
fieldsMap.put("utilizedCappedProcUnits", vios.processor.utilizedCappedProcUnits);
fieldsMap.put("utilizedUncappedProcUnits", vios.processor.utilizedUncappedProcUnits);
2021-03-25 15:46:04 +00:00
fieldsMap.put("currentVirtualProcessors", vios.processor.currentVirtualProcessors);
fieldsMap.put("maxVirtualProcessors", vios.processor.maxVirtualProcessors);
fieldsMap.put("maxProcUnits", vios.processor.maxProcUnits);
fieldsMap.put("entitledProcUnits", vios.processor.entitledProcUnits);
fieldsMap.put("donatedProcUnits", vios.processor.donatedProcUnits);
fieldsMap.put("idleProcUnits", vios.processor.idleProcUnits);
fieldsMap.put("timeSpentWaitingForDispatch", vios.processor.timePerInstructionExecution);
2021-03-25 15:46:04 +00:00
fieldsMap.put("timePerInstructionExecution", vios.processor.timeSpentWaitingForDispatch);
fieldsMap.put("weight", vios.processor.weight);
fieldsMap.put("mode", vios.processor.mode);
log.trace("getViosProcessorMetrics() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
2021-03-25 15:46:04 +00:00
// VIOs - Network
List<Measurement> getViosNetworkLpars() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
log.trace("getViosNetworkLpars() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("clientlpars", vios.network.clientLpars.size());
log.trace("getViosNetworkLpars() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
// VIO Network - Shared
List<Measurement> getViosNetworkSharedAdapters() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
vios.network.sharedAdapters.forEach(adapter -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
//tagsMap.put("id", adapter.id);
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosNetworkSharedAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("id", adapter.id);
fieldsMap.put("type", adapter.type);
2020-12-01 10:48:05 +00:00
fieldsMap.put("sentBytes", adapter.sentBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("sentPackets", adapter.sentPackets);
2020-12-01 10:48:05 +00:00
fieldsMap.put("receivedBytes", adapter.receivedBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("receivedPackets", adapter.receivedPackets);
fieldsMap.put("droppedPackets", adapter.droppedPackets);
2020-12-01 10:48:05 +00:00
fieldsMap.put("transferredBytes", adapter.transferredBytes);
log.trace("getViosNetworkSharedAdapters() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
2021-03-25 15:46:04 +00:00
// VIO Network - Virtual
List<Measurement> getViosNetworkVirtualAdapters() {
List<Measurement> list = new ArrayList<>();
2021-03-25 15:46:04 +00:00
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
2021-03-25 15:46:04 +00:00
vios.network.virtualEthernetAdapters.forEach( adapter -> {
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("vlanid", String.valueOf(adapter.vlanId));
tagsMap.put("vswitchid", String.valueOf(adapter.vswitchId));
tagsMap.put("systemname", name);
tagsMap.put("viosname", vios.name);
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosNetworkVirtualAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("droppedPackets", adapter.droppedPackets);
fieldsMap.put("droppedPhysicalPackets", adapter.droppedPhysicalPackets);
fieldsMap.put("isPortVlanId", adapter.isPortVlanId);
fieldsMap.put("receivedBytes", adapter.receivedBytes);
fieldsMap.put("receivedPackets", adapter.receivedPackets);
fieldsMap.put("receivedPhysicalBytes", adapter.receivedPhysicalBytes);
fieldsMap.put("receivedPhysicalPackets", adapter.receivedPhysicalPackets);
fieldsMap.put("sentBytes", adapter.sentBytes);
fieldsMap.put("sentPackets", adapter.sentPackets);
fieldsMap.put("sentPhysicalBytes", adapter.sentPhysicalBytes);
fieldsMap.put("sentPhysicalPackets", adapter.sentPhysicalPackets);
fieldsMap.put("transferredBytes", adapter.transferredBytes);
fieldsMap.put("transferredPhysicalBytes", adapter.transferredPhysicalBytes);
log.trace("getViosNetworkVirtualAdapters() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
// VIO Network - Generic
List<Measurement> getViosNetworkGenericAdapters() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
vios.network.genericAdapters.forEach( adapter -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2020-12-01 10:48:05 +00:00
tagsMap.put("id", adapter.id);
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosNetworkGenericAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("sentBytes", adapter.sentBytes);
fieldsMap.put("sentPackets", adapter.sentPackets);
fieldsMap.put("receivedBytes", adapter.receivedBytes);
fieldsMap.put("receivedPackets", adapter.receivedPackets);
fieldsMap.put("droppedPackets", adapter.droppedPackets);
fieldsMap.put("transferredBytes", adapter.transferredBytes);
log.trace("getViosNetworkGenericAdapters() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
2021-03-25 15:46:04 +00:00
// VIOs - Storage
List<Measurement> getViosStorageLpars() {
2021-03-25 15:46:04 +00:00
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach(vios -> {
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
log.trace("getViosStorageLpars() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("clientlpars", vios.storage.clientLpars.size());
log.trace("getViosStorageLpars() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
});
return list;
}
// VIO Storage FC
List<Measurement> getViosStorageFiberChannelAdapters() {
List<Measurement> list = new ArrayList<>();
2021-03-25 15:46:04 +00:00
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
log.trace("getViosStorageFiberChannelAdapters() - VIOS: {}", vios.name);
2021-03-25 15:46:04 +00:00
vios.storage.fiberChannelAdapters.forEach( adapter -> {
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("id", adapter.id);
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosStorageFiberChannelAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("numOfReads", adapter.numOfReads);
fieldsMap.put("numOfWrites", adapter.numOfWrites);
fieldsMap.put("readBytes", adapter.readBytes);
fieldsMap.put("writeBytes", adapter.writeBytes);
fieldsMap.put("transmittedBytes", adapter.transmittedBytes);
log.trace("getViosStorageFiberChannelAdapters() - fields: {}", fieldsMap);
2021-03-25 15:46:04 +00:00
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
// VIO Storage SSP TODO
List<Measurement> getViosStorageSharedStoragePools() {
List<Measurement> list = new ArrayList<>();
2021-03-26 12:26:03 +00:00
/*
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
2021-03-25 15:46:04 +00:00
vios.storage.fiberChannelAdapters.forEach( adapter -> {
2020-10-15 13:23:16 +00:00
2021-03-25 15:46:04 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
2020-12-01 10:48:05 +00:00
tagsMap.put("id", adapter.id);
2021-03-25 15:46:04 +00:00
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosStorageSharedStoragePools() - tags: " + tagsMap.toString());
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("numOfReads", adapter.numOfReads);
fieldsMap.put("numOfWrites", adapter.numOfWrites);
2020-12-01 10:48:05 +00:00
fieldsMap.put("readBytes", adapter.readBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("writeBytes", adapter.writeBytes);
2020-12-01 10:48:05 +00:00
fieldsMap.put("transmittedBytes", adapter.transmittedBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("physicalLocation", adapter.physicalLocation);
log.trace("getViosStorageSharedStoragePools() - fields: " + fieldsMap.toString());
list.add(new Measurement(tagsMap, fieldsMap));
});
2021-03-26 12:26:03 +00:00
log.trace("getViosStorageSharedStoragePools() - VIOS: " + vios.name);
});
2021-03-26 12:26:03 +00:00
*/
return list;
}
2021-03-25 15:46:04 +00:00
// VIO Storage - Physical
List<Measurement> getViosStoragePhysicalAdapters() {
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
log.trace("getViosStoragePhysicalAdapters() - VIOS: {}", vios.name);
2021-03-25 15:46:04 +00:00
vios.storage.genericPhysicalAdapters.forEach( adapter -> {
2021-03-25 15:46:04 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
2020-12-01 10:48:05 +00:00
tagsMap.put("id", adapter.id);
2021-03-25 15:46:04 +00:00
tagsMap.put("location", adapter.physicalLocation);
log.trace("getViosStoragePhysicalAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("numOfReads", adapter.numOfReads);
fieldsMap.put("numOfWrites", adapter.numOfWrites);
2020-12-01 10:48:05 +00:00
fieldsMap.put("readBytes", adapter.readBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("writeBytes", adapter.writeBytes);
2020-12-01 10:48:05 +00:00
fieldsMap.put("transmittedBytes", adapter.transmittedBytes);
2021-03-25 15:46:04 +00:00
fieldsMap.put("type", adapter.type);
log.trace("getViosStoragePhysicalAdapters() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
2021-03-25 15:46:04 +00:00
// VIO Storage - Virtual
List<Measurement> getViosStorageVirtualAdapters() {
2021-03-25 15:46:04 +00:00
List<Measurement> list = new ArrayList<>();
metrics.systemUtil.sample.viosUtil.forEach( vios -> {
log.trace("getViosStorageVirtualAdapters() - VIOS: {}", vios.name);
2021-03-25 15:46:04 +00:00
vios.storage.genericVirtualAdapters.forEach( adapter -> {
2021-01-13 07:31:07 +00:00
HashMap<String, String> tagsMap = new HashMap<>();
2021-03-25 15:46:04 +00:00
tagsMap.put("servername", name);
tagsMap.put("viosname", vios.name);
tagsMap.put("location", adapter.physicalLocation);
tagsMap.put("id", adapter.id);
log.trace("getViosStorageVirtualAdapters() - tags: {}", tagsMap);
2021-03-25 15:46:04 +00:00
HashMap<String, Object> fieldsMap = new HashMap<>();
fieldsMap.put("numOfReads", adapter.numOfReads);
fieldsMap.put("numOfWrites", adapter.numOfWrites);
fieldsMap.put("readBytes", adapter.readBytes);
fieldsMap.put("writeBytes", adapter.writeBytes);
fieldsMap.put("transmittedBytes", adapter.transmittedBytes);
fieldsMap.put("type", adapter.type);
log.trace("getViosStorageVirtualAdapters() - fields: {}", fieldsMap);
list.add(new Measurement(tagsMap, fieldsMap));
});
});
return list;
}
}