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