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. - name: SetReadingProperties description: > Performs safe modification of ReportingType and Interval properties from this interface with additional checking if provided pair of arguments is allowed. parameters: - name: ReportingType type: enum[self.ReportingType] description: > Indicates how readings should be updated. Possible values are listed in details for corresponding enum. - name: Interval type: uint64 description: > Period of time in milliseconds when readings are updated. 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[struct[object_path,string]],enum[self.OperationType],string,enum[self.CollectionTimescope],uint64]] description: > Collection of metric parameters. Single entry consists of: array of [sensor path, metadata] tuples, operation type, metric ID, collection timescope and collection duration. Sensor paths point to sensors providing readings. Metadata contains client information; in case of Redfish it shall be metric's URI. Operation type provides knowledge of action executed on readings. Metric ID contains name that can be mapped to metadata (like Redfish Metric ID). Collection timescope specifies type of time scope applied to specific metric. Collection duration stores timestamp related with timescope type in milliseconds. - 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: ReportingType type: enum[self.ReportingType] description: Defines how readings are updated. flags: - readonly - 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. flags: - readonly - 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. - name: Name type: string description: > Defines the name of reading report to be exposed over D-Bus. flags: - const - name: ReportActions type: array[enum[self.ReportActions]] description: > Contains set of flags indicating additional actions that can be triggered after readings' update. - name: Triggers type: array[object_path] description: > Array of paths to Trigger objects associated with this report. flags: - readonly enumerations: - name: OperationType description: Type of action that is executed on readings. values: - name: Maximum description: > Store maximal reading during defined time period. - name: Minimum description: > Store minimal reading during defined time period. - name: Average description: > Calculate average of readings during defined time period. - name: Summation 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: 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. - name: ErrorType description: > Enumerates error types that might occur during properties' configuration. values: - name: PropertyConflict description: > Appears in situation when two properties, which are dependent from each other, have conflicting values. For example, when ReportingType property has value "Periodic", but Interval is set to 0, such conflict will occur. - name: ReportActions description: > Enumerates types of actions, that can be triggered when Readings property value is updated. values: - name: EmitsReadingsUpdate 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 enabled. - name: LogToMetricReportsCollection description: > On Readings update report is stored to Metric Report Collection in Redfish Telemetry Service.