Skip to main content

GET – Metric Report Definition Instance

Request

GET https://{{ip}}/redfish/v1/TelemetryService/MetricReportDefinitions/{{metric_report_def_instance}}
Content-Type: application/json
  1. The Metric Report Definition resource specifies the metric report that the Redfish service will create.

  2. The Metric Reports are updated periodically based on the recurrence interval specified.

Response

The response of the request will be in JSON format. The properties are mentioned in the following table.

Table 1. Metric Report Definition Instance Properties

Name

Type

Read only

Description

(OData Attributes)  

Refer to OData Support

Id (M)

String

True

Refer to Resource Type Definitions

Name

String

True

Description

String

True

Schedule

Object

True

  1. Only Recurrence Interval is supported currently.

  2. If present, A metric values collected starting at each scheduled interval and for the time specified by Duration. No more than Schedule.MaxOccurrences values shall be collected for this metric.

  3. If not present, the corresponding metric values shall be collected when the related metric report is retrieved.

MetricReportDefinitionType

String

True

  1. Only Periodic is supported currently.

  2. The value shall specify when the corresponding metric values are collected by the underlying instrumentation.

  3. If not present, the GatheringType is not known.

Status

Object

True

Refer to Resource Complex Types. The property Status/State will be changed to Disabled when MetricReportDefinitionEnabled is false.

MetricProperties

Array

True

  1. This property shall list the metric properties to include in the metric report.

  2. If this attribute is present, Metrics attribute should not be present.

  3. MetricProperties only support the value defined under the reading of https://{{ip}}/redfish/v1/TelemetryService/MetricDefinitions.

MetricReport

Object

True

The value of this property shall be a reference to the resource where the resultant metric report is placed.

MetricReportDefinitionEnabled

Boolean

False

  1. The value of this property shall be a Boolean indicating whether this MetricReportDefinition is enabled for generating new MetricReports.

  2. Default value is true.

SuppressRepeatedMetricValue

Boolean

False

  1. The value of this property shall indicate whether suppression of Metric information has been enabled or not.

  2. A value of true indicates that any Metric in the MetricReport currently be generated will be suppressed and not included in the MetricReport when the value of the Metric equals the value of the same Metric in the previously generated MetricReport.

  3. A value of false means that the suppression mechanism is not applied to the MetricReport being generated.

  4. A MetricReport may be generated with no MetricProperty array values if all Metrics had the same values as in the previously generated MetricReport. This scenario is applicable only when attribute "ReportUpdates" has a value "NewReport".

  5. Default value is true.

MetricReportHeartbeatInterval

String

False

  1. This property specifies an interval to send complete MetricReport regardless of whether values have changed. It is used in addition to the ReccurranceInterval where SuppressRepeatedMetricValue is Enabled, and the Redfish client desired to be refreshed with metric data occasionally regardless of whether the data is changed or not.

  2. The property value shall be a Redfish Duration describing the time internal between generation of the unsuppressed MetricReport.

  3. It shall always be a value greater than the RecurranceInterval of a MetricReport and should only be applicable when the SuppressRepeatedMetricValue property is Enabled.

  4. The value of this attribute shall be a Redfish Duration in the below mentioned format: "-?P(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?"

  5. There is no default value.

ReportTimespan

String

False

  1. This property shall specify the timespan duration that this metric report covers. The value of ReportTimespan attribute shall be a Redfish Duration in the below mentioned format: "-?P(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?"

  2. This property specifies the amount of time, MetricReports will be generated for a MetricReportDefinition. If the value for this property is specified during the creation of the MetricReportDefinition, the service will stop creating MetricReport once the specified amount of time has reached from the creation of MeteicReportDefinition. If the user

  3. modifies this attribute at a later period of time, then the ReportTimespan will be measured from the point of time the PATCH request was issued.

  4. There is no default value.

  5. This property will not update the value of MetricReportDefinitionEnabled or Status

AppendLimit

Integer

True

  1. This property shall contain a number that indicates the maximum number of entries that can be appended to a metric report. When the metric report reaches its limit, its behavior shall be dictated by the ReportUpdates property. This property shall be required if ReportUpdates is either AppendWrapsWhenFull or AppendStopsWhenFull.

  2. By default, this limit is configured to 50. It cannot be modified or passed in the request body to POST MetricReportDefinitions.

ReportActions

Array

True

  1. This property specifies the set of actions to perform when a metric report is generated and should be any one of the Enum values LogToMetricReportsCollection , RedfishEvent.

  2. By default, this property will have the value LogToMetricReportCollection.

  3. Also, MetricReportDefinitions and MetricReports update or the generation will not add any log entries inside MetricReportLogs.

  4. "ReportUpdates" attribute will not be supported if "RedfishActions" attribute has a value of "RedfishEvent" alone.

  5. For "ReportUpdates" attribute to be supported, "RedfishActions" attribute must have the value "LogToMetricreportsCollection" with/without the value "RedfishEvent".

ReportUpdates

String

True

  1. This property shall contain how subsequent metric reports are handled in relationship to an existing metric report created from the metric report definition. It specifies whether to overwrite, append, or create a report Resource.

  2. The allowable values for this property are - Overwrite, AppendWrapsWhenFull, AppendStopsWhenFull, NewReport.

  3. The default value is "Overwrite".

  4. If we want to create a MetricReportDefinition with the ReportUpdates property having value as "NewReport", then it is mandatory that the ReportActions property must have "LogToMetricReportsCollection" as one of its members.

LinksObjectTrueThe Links property, as described by the Redfish Specification, shall contain references to resources that are related to, but not contained by (subordinate to), this resource.

Name

Type

Read only

Description

Oem

Object

 Refer to Resource Complex Types.

Triggers

Array

True

The value shall be a set of references to triggers that will cause this metric report definition to generate a new metric report upon a trigger occurrence when the TriggerActions property contains the value RedfishMetricReport.

Triggers@odata.count

Integer

True

An integer representing the number of items in a collection.

MetricsObjectTrue
  1. A collection of metrics specifying the CollectionFunction and the MetricProperties to apply these functions.

  2. If this attribute is present, MetricProperties attribute should not be present.

Properties

Description

MetricId

Id of the metric

CollectionDuration

Time interval

CollectionFunction

Minimum, Maximum, Average or Summation

CollectionTimeScope

  1. Only Interval is supported.

  2. The time scope of the corresponding metric values. If not present, the time scope was not qualified by the metric designer or is unknown to the provider.

MetricProperties

  1. A collection of URI for the metric properties to include in the metric report.

  2. MetricProperties only support the values defined under the Members of MetricDefinitions URI

https://{{ip}}/redfish/v1/TelemetryService/MetricDefinitions.

Request

Average Temperature Report

GET https://{{ip}}/redfish/v1/TelemetryService/MetricReportDefinitions/AverageTemperatureReport
Content-Type: application/json

Response

Average Temperature Report

{
"@odata.context": "/redfish/v1/$metadata#MetricReportDefinition.MetricReportDefinition(ReportUpdates,
MetricReportDefinitionEnabled,Id,Status,Name,ReportActions,MetricReportDefinitionType,MetricReport,Schedule,Metrics)",
"@odata.etag": "\"1581503942\"",
"@odata.id": "/redfish/v1/TelemetryService/MetricDefinitions/AverageTemperatureReport",
"@odata.type": "#MetricReportDefinition.v1_2_0.MetricReportDefinition",
"Id": "AverageTemperatureReport",
"MetricReport": {
"@odata.id": "/redfish/v1/TelemetryService/MetricReports/AverageTemperatureReport"
],
"MetricReportDefinitionEnabled": true,
"MetricReportDefinitionType": "Periodic",
"Metrics": [
{
"CollectionDuration": "PT40S",
"CollectionFunction": "Average",
"CollectionTimeScope": "Interval",
"MetricId": "AverageTemperature",
"MetricProperties": [
"/redfish/v1/Chassis/Self/Thermal#/Temperatures/116_0/ReadingCelsius",
"/redfish/v1/Chassis/Self/Thermal#/Temperatures/117_0/ReadingCelsius"
]
}
],
"Name": "Average_Temperature_Report",
"ReportActions": [
"LogToMetricReportsCollection"
],
"ReportUpdates": "Overwrite",
"Schedule": {
"RecurrenceInterval": "PT40S"
},
"Status": {
"Health": "OK",
"State": "Enabled"
}
}