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: Name 63 type: string 64 description: > 65 Defines the name of reading report to be exposed over D-Bus. 66 flags: 67 - const 68 - name: ReportActions 69 type: array[enum[self.ReportActions]] 70 description: > 71 Contains set of flags indicating additional actions that can be 72 triggered after readings' update. 73 - name: Triggers 74 type: array[object_path] 75 description: > 76 Array of paths to Trigger objects associated with this report. 77 flags: 78 - readonly 79 80enumerations: 81 - name: OperationType 82 description: Type of action that is executed on readings. 83 values: 84 - name: Maximum 85 description: > 86 Store maximal reading during defined time period. 87 - name: Minimum 88 description: > 89 Store minimal reading during defined time period. 90 - name: Average 91 description: > 92 Calculate average of readings during defined time period. 93 - name: Summation 94 description: > 95 Calculate sum of readings over defined time period. 96 - name: ReportingType 97 description: > 98 The type that defines when Readings are updated. 99 values: 100 - name: OnChange 101 description: > 102 On sensor reading change. 103 - name: OnRequest 104 description: > 105 On Update method call. 106 - name: Periodic 107 description: > 108 After period of time defined by Interval property. 109 - name: ReportUpdates 110 description: > 111 The type that defines how Readings are updated. 112 values: 113 - name: Overwrite 114 description: > 115 Last sensor reading is written to Readings overwriting the 116 previous value. AppendLimit set by user is ignored. Readings 117 size is equal to count of all sensors across all metrics. 118 - name: AppendWrapsWhenFull 119 description: > 120 Append sensor reading to Readings up to limit specify in 121 AppendLimit then start from the beginning. 122 - name: AppendStopsWhenFull 123 description: > 124 Append sensor reading to Readings up to limit specify in 125 AppendLimit then stop till report update. 126 - name: CollectionTimescope 127 description: > 128 The time scope of the related metric values. 129 values: 130 - name: Point 131 description: > 132 The corresponding metric apply to a point in time. The reading 133 timestamp in Readings property specifies point in time. 134 - name: Interval 135 description: > 136 The corresponding metric apply to a time interval. The reading 137 timestamp in Readings property specifies the end of the time 138 interval and the collection duration of ReadingParameters 139 specify its duration. 140 - name: StartupInterval 141 description: > 142 The corresponding metric apply to a time interval that began on 143 report creation. The reading timestamp in Readings property 144 specifies the end of the time interval. Collection duration of 145 ReadingParameters specifies the duration between the startup of 146 resource and timestamp. 147 - name: ErrorType 148 description: > 149 Enumerates error types that might occur during properties' 150 configuration. 151 values: 152 - name: PropertyConflict 153 description: > 154 Appears in situation when two properties, which are dependent 155 from each other, have conflicting values. For example, when 156 ReportingType property has value "Periodic", but Interval is set 157 to 0, such conflict will occur. 158 - name: ReportActions 159 description: > 160 Enumerates types of actions, that can be triggered when Readings 161 property value is updated. 162 values: 163 - name: EmitsReadingsUpdate 164 description: > 165 On Readings update PropertiesChanged signal is emitted. It 166 allows to decrease generation of load on DBus when Readings 167 property is updated. Redfish Event Service requires this option 168 to be equal to enabled. 169 - name: LogToMetricReportsCollection 170 description: > 171 On Readings update report is stored to Metric Report Collection 172 in Redfish Telemetry Service. 173