2020-08-07 11:20:07 +00:00
|
|
|
package biz.nellemann.hmci
|
2020-08-07 06:13:48 +00:00
|
|
|
|
2020-08-07 11:20:07 +00:00
|
|
|
import groovy.util.logging.Slf4j
|
|
|
|
|
2020-08-11 14:26:16 +00:00
|
|
|
|
2020-08-07 11:20:07 +00:00
|
|
|
@Slf4j
|
2020-08-11 14:26:16 +00:00
|
|
|
class ManagedSystem extends MetaSystem {
|
2020-08-07 06:13:48 +00:00
|
|
|
|
|
|
|
public String id
|
|
|
|
public String name
|
|
|
|
public String type
|
|
|
|
public String model
|
|
|
|
public String serialNumber
|
|
|
|
|
2020-08-12 15:00:31 +00:00
|
|
|
// From PCM Data
|
|
|
|
|
2020-08-07 14:27:42 +00:00
|
|
|
|
2020-08-11 14:26:16 +00:00
|
|
|
ManagedSystem(String id, String name, String type, String model, String serialNumber) {
|
2020-08-07 06:13:48 +00:00
|
|
|
this.id = id
|
2020-08-11 14:26:16 +00:00
|
|
|
this.name = name
|
|
|
|
this.type = type
|
|
|
|
this.model = model
|
|
|
|
this.serialNumber = serialNumber
|
2020-08-07 06:13:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
String toString() {
|
|
|
|
return "[${id}] ${name} (${type}-${model} ${serialNumber})"
|
|
|
|
}
|
|
|
|
|
2020-08-12 15:00:31 +00:00
|
|
|
|
|
|
|
Object getMetrics(String metric) {
|
|
|
|
switch (metric) {
|
|
|
|
case "SystemSharedProcessorPool":
|
|
|
|
return getSharedProcessorPools()
|
|
|
|
break
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
2020-08-10 13:44:14 +00:00
|
|
|
|
2020-08-11 14:26:16 +00:00
|
|
|
Map<String,BigDecimal> getMemoryMetrics() {
|
|
|
|
|
|
|
|
HashMap<String, BigDecimal> map = [
|
2020-08-12 15:00:31 +00:00
|
|
|
totalMem: metrics.systemUtil.utilSamples.first().serverUtil.memory.totalMem.first(),
|
|
|
|
availableMem: metrics.systemUtil.utilSamples.first().serverUtil.memory.availableMem.first(),
|
|
|
|
configurableMem: metrics.systemUtil.utilSamples.first().serverUtil.memory.configurableMem.first(),
|
|
|
|
assignedMemToLpars: metrics.systemUtil.utilSamples.first().serverUtil.memory.assignedMemToLpars.first(),
|
2020-08-11 14:26:16 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
return map
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Map<String,BigDecimal> getProcessorMetrics() {
|
|
|
|
|
|
|
|
HashMap<String, BigDecimal> map = [
|
2020-08-12 15:00:31 +00:00
|
|
|
availableProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.processor.totalProcUnits.first(),
|
|
|
|
utilizedProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.processor.utilizedProcUnits.first(),
|
|
|
|
availableProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.processor.availableProcUnits.first(),
|
|
|
|
configurableProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.processor.configurableProcUnits.first(),
|
|
|
|
]
|
|
|
|
|
|
|
|
return map
|
|
|
|
}
|
|
|
|
|
|
|
|
Map<String, BigDecimal> getPhysicalProcessorPool() {
|
|
|
|
|
|
|
|
HashMap<String, BigDecimal> map = [
|
|
|
|
assignedProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.physicalProcessorPool.assignedProcUnits.first(),
|
|
|
|
availableProcUnits: metrics.systemUtil.utilSamples.first().serverUtil.physicalProcessorPool.availableProcUnits.first(),
|
2020-08-11 14:26:16 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
return map
|
2020-08-07 11:20:07 +00:00
|
|
|
}
|
2020-08-12 15:00:31 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, Map<String, BigDecimal>> getSharedProcessorPools() {
|
|
|
|
|
|
|
|
Map<String, Map> map = new HashMap<String, Map>()
|
|
|
|
metrics.systemUtil.utilSamples.first().serverUtil.sharedProcessorPool.each {
|
|
|
|
|
|
|
|
HashMap<String, BigDecimal> innerMap = [
|
|
|
|
assignedProcUnits: it.assignedProcUnits.first(),
|
|
|
|
availableProcUnits: it.availableProcUnits.first(),
|
|
|
|
]
|
|
|
|
map.put(it.name, innerMap)
|
|
|
|
}
|
|
|
|
return map
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// SystemSharedAdapters
|
|
|
|
// SystemGenericPhysicalAdapters
|
|
|
|
// SystemGenericVirtualAdapters
|
|
|
|
// SystemGenericPhysicalAdapters
|
|
|
|
// SystemGenericAdapters
|
|
|
|
// SystemFiberChannelAdapters
|
2020-08-07 14:27:42 +00:00
|
|
|
|
2020-08-07 06:13:48 +00:00
|
|
|
}
|