1description: > 2 Implement this interface to provide report inspection features. An 3 implementation service should additionally implement 4 xyz.openbmc_project.Object.Delete for deletion of individual report objects. 5 6methods: 7 - name: Update 8 description: > 9 The Update method is defined for the on demand metric report update. 10 It triggers update of the Readings property. If ReportingType is not 11 set to OnRequest then method does nothing. 12 13properties: 14 - name: Persistency 15 type: boolean 16 description: > 17 Defines if the report configuration is stored in non volatile memory. 18 Configuration contains all Report properties excluding Readings. 19 - name: ReadingParameters 20 type: array[struct[array[struct[object_path,string]],enum[self.OperationType],string,enum[self.CollectionTimescope],uint64]] 21 description: > 22 Collection of metric parameters. Single entry consists of: 23 array of [sensor path, metadata] tuples, operation type, metric ID, 24 collection timescope and collection duration. Sensor paths point to 25 sensors providing readings. Metadata contains client information; in 26 case of Redfish it shall be metric's URI. Operation type provides 27 knowledge of action executed on readings. Metric ID contains name that 28 can be mapped to metadata (like Redfish Metric ID). Collection 29 timescope specifies type of time scope applied to specific metric. 30 Collection duration stores timestamp related with timescope type in 31 milliseconds. 32 - name: Readings 33 type: struct[uint64,array[struct[string,string,double,uint64]]] 34 description: > 35 Structure that contains timestamp of readings update in milliseconds 36 and array of metric Id, metadata, reading value and timestamp of 37 single reading update in milliseconds. Metric Id and metadata are 38 equal to its counterparts in ReadingParameters property. 39 flags: 40 - readonly 41 - name: ReportingType 42 type: enum[self.ReportingType] 43 description: Defines how readings are updated. 44 - name: ReportUpdates 45 type: enum[self.ReportUpdates] 46 description: Defines how Readings array is filled. 47 - name: AppendLimit 48 type: size 49 description: Defines the maximum number of entries in 'Readings' property. 50 flags: 51 - readonly 52 - name: Interval 53 type: uint64 54 description: > 55 Defines period of time in milliseconds when readings are updated. 56 - name: Enabled 57 type: boolean 58 description: > 59 Indicates if readings in report will be updated. This may be set to 60 false by the service if ReportUpdates property is 61 'AppendStopsWhenFull' and readings limit specified by AppendLimit is 62 reached. 63 - name: ErrorMesages 64 type: array[struct[enum[self.ErrorType],string]] 65 description: > 66 Stores errors related with incorrect or conflicting property values. 67 Error messages are stored in pairs containing error type and affected 68 property. 69 flags: 70 - readonly 71 - name: Name 72 type: string 73 description: > 74 Defines the name of reading report to be exposed over D-Bus. 75 flags: 76 - const 77 - name: ReportActions 78 type: array[enum[self.ReportActions]] 79 description: > 80 Contains set of flags indicating additional actions that can be 81 triggered after readings' update. 82 - name: Triggers 83 type: array[object_path] 84 description: > 85 Array of paths to Trigger objects associated with this report. 86 flags: 87 - readonly 88 89enumerations: 90 - name: OperationType 91 description: Type of action that is executed on readings. 92 values: 93 - name: Maximum 94 description: > 95 Store maximal reading during defined time period. 96 - name: Minimum 97 description: > 98 Store minimal reading during defined time period. 99 - name: Average 100 description: > 101 Calculate average of readings during defined time period. 102 - name: Summation 103 description: > 104 Calculate sum of readings over defined time period. 105 - name: ReportingType 106 description: > 107 The type that defines when Readings are updated. 108 values: 109 - name: OnChange 110 description: > 111 On sensor reading change. 112 - name: OnRequest 113 description: > 114 On Update method call. 115 - name: Periodic 116 description: > 117 After period of time defined by Interval property. 118 - name: ReportUpdates 119 description: > 120 The type that defines how Readings are updated. 121 values: 122 - name: Overwrite 123 description: > 124 Last sensor reading is written to Readings overwriting the 125 previous value. AppendLimit set by user is ignored. Readings 126 size is equal to count of all sensors across all metrics. 127 - name: AppendWrapsWhenFull 128 description: > 129 Append sensor reading to Readings up to limit specify in 130 AppendLimit then start from the beginning. 131 - name: AppendStopsWhenFull 132 description: > 133 Append sensor reading to Readings up to limit specify in 134 AppendLimit then stop till report update. 135 - name: CollectionTimescope 136 description: > 137 The time scope of the related metric values. 138 values: 139 - name: Point 140 description: > 141 The corresponding metric apply to a point in time. The reading 142 timestamp in Readings property specifies point in time. 143 - name: Interval 144 description: > 145 The corresponding metric apply to a time interval. The reading 146 timestamp in Readings property specifies the end of the time 147 interval and the collection duration of ReadingParameters 148 specify its duration. 149 - name: StartupInterval 150 description: > 151 The corresponding metric apply to a time interval that began on 152 report creation. The reading timestamp in Readings property 153 specifies the end of the time interval. Collection duration of 154 ReadingParameters specifies the duration between the startup of 155 resource and timestamp. 156 - name: ErrorType 157 description: > 158 Enumerates error types that might occur during properties' 159 configuration. 160 values: 161 - name: PropertyConflict 162 description: > 163 Appears in situation when two properties, which are dependent 164 from each other, have conflicting values. For example, when 165 ReportingType property has value "Periodic", but Interval is set 166 to 0, such conflict will occur. 167 - name: ReportActions 168 description: > 169 Enumerates types of actions, that can be triggered when Readings 170 property value is updated. 171 values: 172 - name: EmitsReadingsUpdate 173 description: > 174 On Readings update PropertiesChanged signal is emitted. It 175 allows to decrease generation of load on DBus when Readings 176 property is updated. Redfish Event Service requires this option 177 to be equal to enabled. 178 - name: LogToMetricReportsCollection 179 description: > 180 On Readings update report is stored to Metric Report Collection 181 in Redfish Telemetry Service. 182