Augment metrics model to monitor more # of control metrics
Existing implementation only monitors OpenFlow messages.
This commit augments the metrics model in a way to monitor more
number of control metrics including
- CPU Load, total CPU time, sys CPU time, user CPU time, etc.
- Used memory percentage, free memory percentage
- Disk read/write bytes
- Network incoming/outgoing bytes/packets
Change-Id: I9e8eee163c3033132eb202f3c75bad246c87f133
diff --git a/apps/cpman/src/main/java/org/onosproject/cpman/ControlPlaneMonitorService.java b/apps/cpman/src/main/java/org/onosproject/cpman/ControlPlaneMonitorService.java
index 24f7717..d35f24f 100644
--- a/apps/cpman/src/main/java/org/onosproject/cpman/ControlPlaneMonitorService.java
+++ b/apps/cpman/src/main/java/org/onosproject/cpman/ControlPlaneMonitorService.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2015 Open Networking Laboratory
+ * Copyright 2015-2016 Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,15 @@
void updateMetric(ControlMetric controlMetric, int updateInterval, Optional<DeviceId> deviceId);
/**
+ * Adds a new control metric value with a certain update interval.
+ *
+ * @param controlMetric control plane metric (e.g., disk and network metrics)
+ * @param updateInterval value update interval (time unit will be in minute)
+ * @param resourceName resource name
+ */
+ void updateMetric(ControlMetric controlMetric, int updateInterval, String resourceName);
+
+ /**
* Obtains the control plane load of a specific device.
*
* @param nodeId node id {@link org.onosproject.cluster.NodeId}