Add missing fields in RSD 2.2 telemetry

Change-Id: I3592e1b2bea87a11327c627913572777653c0c83
This commit is contained in:
Lin Yang 2019-02-06 16:48:20 -08:00
parent 464a697441
commit bedc76e7ed
3 changed files with 31 additions and 0 deletions

View File

@ -17,15 +17,32 @@ from sushy.resources import base
from sushy import utils
from rsd_lib.resources.v2_2.telemetry import metric_definitions
from rsd_lib import utils as rsd_lib_utils
class StatusField(base.CompositeField):
state = base.Field('State')
health = base.Field('Health')
health_rollup = base.Field('HealthRollup')
class Telemetry(base.ResourceBase):
max_reports = base.Field('MaxReports', adapter=rsd_lib_utils.num_or_none)
"""If present, the value shall specify the maximum number of metric
collectors that can be supported by this service
"""
min_collection_interval = base.Field('MinCollectionInterval')
"""If present, the value shall be an ISO 8601 duration specifying the
minimum time between collections
"""
supported_collection_functions = base.Field('SupportedCollectionFunctions')
"""If present, the value shall define the function to apply over the
collection duration
"""
status = StatusField('Status')
"""The telemetry service status"""

View File

@ -10,5 +10,14 @@
},
"MetricDefinitions": {
"@odata.id": "/redfish/v1/TelemetryService/MetricDefinitions"
},
"MetricReportDefinitions": {
"@odata.id": "/redfish/v1/TelemetryService/MetricReportDefinitions"
},
"MetricReports": {
"@odata.id": "/redfish/v1/TelemetryService/MetricReports"
},
"Triggers": {
"@odata.id": "/redfish/v1/TelemetryService/Triggers"
}
}

View File

@ -41,6 +41,11 @@ class TelemetryTestCase(testtools.TestCase):
self.assertEqual('1.1.0', self.telemetry_inst.redfish_version)
self.assertEqual('Enabled', self.telemetry_inst.status.state)
self.assertEqual('OK', self.telemetry_inst.status.health)
self.assertEqual(None, self.telemetry_inst.status.health_rollup)
self.assertEqual(None, self.telemetry_inst.max_reports)
self.assertEqual(None, self.telemetry_inst.min_collection_interval)
self.assertEqual(
None, self.telemetry_inst.supported_collection_functions)
def test__get_metric_definitions_path(self):
self.assertEqual('/redfish/v1/TelemetryService/MetricDefinitions',