| description: > |
| Implement this interface to provide report inspection features. An |
| implementation service should additionally implement |
| xyz.openbmc_project.Object.Delete for deletion of individual report objects. |
| |
| methods: |
| - name: Update |
| description: > |
| The Update method is defined for the on demand metric report update. |
| It triggers update of the Readings property. If ReportingType is not |
| set to OnRequest then method does nothing. |
| |
| properties: |
| - name: Persistency |
| type: boolean |
| description: > |
| Defines if the report configuration is stored in non volatile memory. |
| Configuration contains all Report properties excluding Readings. |
| - name: ReadingParameters |
| type: array[struct[array[object_path],enum[self.OperationType],string,string,enum[self.CollectionTimescope],uint64]] |
| description: > |
| Array of structures that contains array of sensor paths that are |
| monitored by Telemetry service, operation type, metric Id, metadata, |
| collection timescope and collection duration. Metric Id and metadata are |
| used to store user details, e.g. metadata can be used to map sensor name |
| to DBus path. |
| - name: Readings |
| type: struct[uint64,array[struct[string,string,double,uint64]]] |
| description: > |
| Structure that contains timestamp of readings update in milliseconds and |
| array of metric Id, metadata, reading value and timestamp of single |
| reading update in milliseconds. Metric Id and metadata are equal to its |
| counterparts in ReadingParameters property. |
| flags: |
| - readonly |
| - name: EmitsReadingsUpdate |
| type: boolean |
| description: > |
| On Readings update PropertiesChanged signal is emitted. It allows to |
| decrease generation of load on DBus when Readings property is updated. |
| Redfish Event Service requires this option to be equal to true. |
| flags: |
| - const |
| - name: LogToMetricReportsCollection |
| type: boolean |
| description: > |
| Presence of Report in Metric Report Collection in Redfish Telemetry |
| Service. |
| flags: |
| - const |
| - name: ReportingType |
| type: enum[self.ReportingType] |
| description: Defines how readings are updated. |
| - name: ReportUpdates |
| type: enum[self.ReportUpdates] |
| description: Defines how Readings array is filled. |
| - name: AppendLimit |
| type: size |
| description: Defines the maximum number of entries in 'Readings' property. |
| flags: |
| - readonly |
| - name: Interval |
| type: uint64 |
| description: > |
| Defines period of time in milliseconds when readings are updated. |
| - name: Enabled |
| type: boolean |
| description: > |
| Indicates if readings in report will be updated. This may be set to |
| false by the service if ReportUpdates property is 'AppendStopsWhenFull' |
| and readings limit specified by AppendLimit is reached. |
| |
| enumerations: |
| - name: OperationType |
| description: Type of action that is executed on readings. |
| values: |
| - name: Single |
| description: Store the latest reading. |
| - name: Max |
| description: Store maximal reading during defined time period. |
| - name: Min |
| description: Store minimal reading during defined time period. |
| - name: Avg |
| description: Calculate average of readings during defined time period. |
| - name: Sum |
| description: Calculate sum of readings over defined time period. |
| - name: ReportingType |
| description: > |
| The type that defines when Readings are updated. |
| values: |
| - name: OnChange |
| description: > |
| On sensor reading change. |
| - name: OnRequest |
| description: > |
| On Update method call. |
| - name: Periodic |
| description: > |
| After period of time defined by Interval property. |
| - name: ReportUpdates |
| description: > |
| The type that defines how Readings are updated. |
| values: |
| - name: Overwrite |
| description: > |
| Last sensor reading is written to Readings overwriting the previous |
| value. AppendLimit set by user is ignored. Readings size is equal to |
| count of all sensors across all metrics. |
| - name: AppendWrapsWhenFull |
| description: > |
| Append sensor reading to Readings up to limit specify in AppendLimit |
| then start from the beginning. |
| - name: AppendStopsWhenFull |
| description: > |
| Append sensor reading to Readings up to limit specify in AppendLimit |
| then stop till report update. |
| - name: NewReport |
| description: > |
| A new report is created, whose name is the current metric report name |
| concatenated with the timestamp. |
| - name: CollectionTimescope |
| description: > |
| The time scope of the related metric values. |
| values: |
| - name: Point |
| description: > |
| The corresponding metric apply to a point in time. The reading |
| timestamp in Readings property specifies point in time. |
| - name: Interval |
| description: > |
| The corresponding metric apply to a time interval. The reading |
| timestamp in Readings property specifies the end of the time interval |
| and the collection duration of ReadingParameters specify its duration. |
| - name: StartupInterval |
| description: > |
| The corresponding metric apply to a time interval that began on |
| report creation. The reading timestamp in Readings property specifies |
| the end of the time interval. Collection duration of |
| ReadingParameters specifies the duration between the startup of |
| resource and timestamp. |