use of com.integrien.alive.common.adapter3.MetricData in project Server_Management_Plugin_vRealize by Huawei.
the class CPUBean method convert2Resource.
@Override
public ResourceKey convert2Resource(String id, String adapterKind, Map<ResourceKey, List<MetricData>> metricsByResource) {
ResourceKey resourceKey = new ResourceKey(this.name, Constant.KIND_CPU, adapterKind);
// 设定唯一的标识,保证同名的资源可以正常显示
ResourceIdentifierConfig dnIdentifier = new ResourceIdentifierConfig(Constant.ATTR_ID, id + this.uuid, true);
resourceKey.addIdentifier(dnIdentifier);
long timestamp = System.currentTimeMillis();
List<MetricData> metricDataList = new ArrayList<>();
// 写入resource属性
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_NAME), timestamp, this.name));
metricDataList.add(new MetricData(new MetricKey(false, Constant.ATTR_HEALTHSTATE), timestamp, ConvertUtils.convertHealthState(this.healthState)));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_FREQUENCY), timestamp, this.frequency));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_MANUFACTURE), timestamp, this.manufacture));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_MODEL), timestamp, this.model));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_MOID), timestamp, this.moId));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_UUID), timestamp, this.uuid));
metricDataList.add(new MetricData(new MetricKey(true, Constant.ATTR_PRESENTSTATE), timestamp, ConvertUtils.convertPresentState(this.presentState)));
// 关联key和属性值
metricsByResource.put(resourceKey, metricDataList);
return resourceKey;
}
use of com.integrien.alive.common.adapter3.MetricData in project Server_Management_Plugin_vRealize by Huawei.
the class ESightAdapter method setHealStatus4GroupObject.
/**
* 设置健康状态
*
* @param resourceKey ResourceKey
* @param attrName String
* @param childStatusList Optional values are {OK, Unknown, Warning, Immediate, Critical}
* Level from High to low is: OK, Unknown, Warning, Immediate, Critical
*/
private void setHealStatus4GroupObject(ResourceKey resourceKey, String attrName, List<String> childStatusList) {
String defaultStatus = "OK";
for (String status : childStatusList) {
switch(defaultStatus) {
case "OK":
{
defaultStatus = status;
}
break;
case "Unknown":
{
if ("Warning".equals(status) || "Immediate".equals(status) || "Critical".equals(status)) {
defaultStatus = status;
}
}
break;
case "Warning":
{
if ("Immediate".equals(status) || "Critical".equals(status)) {
defaultStatus = status;
}
}
break;
case "Immediate":
{
if ("Critical".equals(status)) {
defaultStatus = status;
}
}
break;
case "Critical":
{
break;
}
default:
{
break;
}
}
}
if ("Unknown".equals(defaultStatus)) {
defaultStatus = "Warning";
}
List<MetricData> metricDataList = new ArrayList<>();
long timestamp = System.currentTimeMillis();
metricDataList.add(new MetricData(new MetricKey(false, attrName), timestamp, defaultStatus));
metricsByResource.put(resourceKey, metricDataList);
}
use of com.integrien.alive.common.adapter3.MetricData in project Server_Management_Plugin_vRealize by Huawei.
the class ESightAdapter method configEsight.
private void configEsight(String hostIp) {
ResourceKey resourceKey = new ResourceKey(hostIp, Constant.KIND_HOST_INSTANCE, getAdapterKind());
long timestamp = System.currentTimeMillis();
List<MetricData> metricDataList = new ArrayList<>();
// 设置eSight服务器的状态为离线状态
metricDataList.add(new MetricData(new MetricKey(false, Constant.ATTR_HEALTHSTATE), timestamp, ConvertUtils.convertHealthState(-1)));
metricsByResource.put(resourceKey, metricDataList);
DiscoveryResult discoveryResult = collectResult.getDiscoveryResult(true);
if (isNewResource(resourceKey)) {
discoveryResult.addResource(new ResourceConfig(resourceKey));
}
// Check if resource is part of monitored set, otherwise continue
ResourceConfig resourceConfig = getMonitoringResource(resourceKey);
if (resourceConfig == null) {
return;
}
// Add metrics
addMetricData(resourceConfig, metricsByResource.get(resourceKey));
// Add relationships
Relationships rel = new Relationships();
rel.setRelationships(resourceKey, relationshipsByResource.get(resourceKey), Collections.singleton(getAdapterKind()));
discoveryResult.addRelationships(rel);
return;
}
use of com.integrien.alive.common.adapter3.MetricData in project ApplicationInsights-Java by microsoft.
the class HeartBeatTest method testHeartBeat.
@Test
@TargetUri(value = "/index.jsp")
public void testHeartBeat() throws Exception {
List<Envelope> metrics = mockedIngestion.waitForItems(getMetricPredicate("HeartbeatState"), 2, 70, TimeUnit.SECONDS);
assertEquals(2, metrics.size());
MetricData data = (MetricData) ((Data<?>) metrics.get(0).getData()).getBaseData();
assertNotNull(data.getProperties().get("jreVersion"));
assertNotNull(data.getProperties().get("sdkVersion"));
assertNotNull(data.getProperties().get("osVersion"));
assertNotNull(data.getProperties().get("processSessionId"));
assertNotNull(data.getProperties().get("osType"));
assertEquals(5, data.getProperties().size());
}
Aggregations