summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Spinler <spinler@us.ibm.com>2018-01-26 12:42:54 -0600
committerMatt Spinler <spinler@us.ibm.com>2018-01-26 12:42:54 -0600
commit18a00f92400cce473579369d64be07448fc3362c (patch)
tree452b792de9bcb60dfad1edab68d342212593bd3d
parent2e2264efcb741950a11fe411a1ee54e30a1b1ff2 (diff)
downloadopenpower-dbus-interfaces-18a00f92400cce473579369d64be07448fc3362c.zip
openpower-dbus-interfaces-18a00f92400cce473579369d64be07448fc3362c.tar.gz
Add Maximum and Average history interfaces
These interfaces hold arrays to store the histories of averages and maximums, along with a timestamp with each value. A real world example is using these to expose the 30 second input power averages and maximums that certain power supplies provide. Change-Id: I8ea42ae7c334488a1834535ca5256e358fba027d Signed-off-by: Matt Spinler <spinler@us.ibm.com>
-rw-r--r--org/open_power/Sensor/Aggregation/History/Average.interface.yaml57
-rw-r--r--org/open_power/Sensor/Aggregation/History/Maximum.interface.yaml57
2 files changed, 114 insertions, 0 deletions
diff --git a/org/open_power/Sensor/Aggregation/History/Average.interface.yaml b/org/open_power/Sensor/Aggregation/History/Average.interface.yaml
new file mode 100644
index 0000000..93795d9
--- /dev/null
+++ b/org/open_power/Sensor/Aggregation/History/Average.interface.yaml
@@ -0,0 +1,57 @@
+description: >
+ Implement to provide an object that contains a history of averages. The
+ object this interface is placed on should provide information about the
+ duration the average is calculated over.
+
+properties:
+ - name: Scale
+ type: int64
+ description: >
+ The reading scaling factor N, where the actual reading is value * 10^N.
+ This is immutable once set.
+
+ - name: Unit
+ type: enum[self.Unit]
+ description: >
+ The unit of the reading. Immutable once set for a sensor.
+ For objects in the temperature namespace, Unit must be "DegreesC".
+ For objects in the fan_tach namespace, Unit must be "RPMS".
+ For objects in the voltage namespace, Unit must be "Volts".
+ For objects in the altitude namespace, Unit must be "Meters".
+ For objects in the current namespace, Unit must be "Amperes".
+ For objects in the power namespace, Unit must be "Watts".
+ For objects in the energy namespace, Unit must be "Joules".
+
+ - name: Values
+ type: array[struct[uint64,int64]]
+ description: >
+ An array of timestamp, average value tuples. The timestamp is the
+ number of milliseconds since 1970. The entries in the array will
+ always be ordered from newest to oldest.
+
+enumerations:
+ - name: Unit
+ description: >
+ A sensor reading unit.
+ values:
+ - name: DegreesC
+ description: >
+ Temperature as degrees Celsius.
+ - name: RPMS
+ description: >
+ Frequency of rotation as revolutions per minute.
+ - name: Volts
+ description: >
+ Electromotive force as volts.
+ - name: Meters
+ description: >
+ Length as meters.
+ - name: Amperes
+ description: >
+ Electrical charge flow rate as Amperes.
+ - name: Watts
+ description: >
+ Rate of energy transfer as Watts.
+ - name: Joules
+ description: >
+ Energy transfer as Joules.
diff --git a/org/open_power/Sensor/Aggregation/History/Maximum.interface.yaml b/org/open_power/Sensor/Aggregation/History/Maximum.interface.yaml
new file mode 100644
index 0000000..e0f116a
--- /dev/null
+++ b/org/open_power/Sensor/Aggregation/History/Maximum.interface.yaml
@@ -0,0 +1,57 @@
+description: >
+ Implement to provide an object that contains a history of maximum values.
+ The values are the maximum values within a time period. The object this
+ interface is placed on should provide information about the time period.
+
+properties:
+ - name: Scale
+ type: int64
+ description: >
+ The reading scaling factor N, where the actual reading is value * 10^N.
+ This is immutable once set.
+
+ - name: Unit
+ type: enum[self.Unit]
+ description: >
+ The unit of the reading. Immutable once set for a sensor.
+ For objects in the temperature namespace, Unit must be "DegreesC".
+ For objects in the fan_tach namespace, Unit must be "RPMS".
+ For objects in the voltage namespace, Unit must be "Volts".
+ For objects in the altitude namespace, Unit must be "Meters".
+ For objects in the current namespace, Unit must be "Amperes".
+ For objects in the power namespace, Unit must be "Watts".
+ For objects in the energy namespace, Unit must be "Joules".
+
+ - name: Values
+ type: array[struct[uint64,int64]]
+ description: >
+ An array of timestamp, maximum value tuples. The timestamp is the
+ number of milliseconds since 1970. The entries in the array will
+ always be ordered from newest to oldest.
+
+enumerations:
+ - name: Unit
+ description: >
+ A sensor reading unit.
+ values:
+ - name: DegreesC
+ description: >
+ Temperature as degrees Celsius.
+ - name: RPMS
+ description: >
+ Frequency of rotation as revolutions per minute.
+ - name: Volts
+ description: >
+ Electromotive force as volts.
+ - name: Meters
+ description: >
+ Length as meters.
+ - name: Amperes
+ description: >
+ Electrical charge flow rate as Amperes.
+ - name: Watts
+ description: >
+ Rate of energy transfer as Watts.
+ - name: Joules
+ description: >
+ Energy transfer as Joules.
OpenPOWER on IntegriCloud