| Jagpal Singh Gill | a60ff84 | 2023-07-12 15:13:25 -0700 | [diff] [blame] | 1 | description: > | 
 | 2 |     This interface provides the Board Manager Metric values for resource | 
 | 3 |     utilization. | 
 | 4 |  | 
 | 5 | properties: | 
 | 6 |     - name: Value | 
 | 7 |       type: double | 
 | 8 |       description: > | 
 | 9 |           The current metric value. | 
 | 10 |       flags: | 
 | 11 |           - readonly | 
 | 12 |     - name: MaxValue | 
 | 13 |       type: double | 
 | 14 |       default: infinity | 
 | 15 |       flags: | 
 | 16 |           - readonly | 
 | 17 |       description: > | 
 | 18 |           The maximum supported metric value. | 
 | 19 |     - name: MinValue | 
 | 20 |       type: double | 
 | 21 |       default: -infinity | 
 | 22 |       flags: | 
 | 23 |           - readonly | 
 | 24 |       description: > | 
 | 25 |           The minimum supported metric value. | 
 | 26 |     - name: Unit | 
 | 27 |       type: enum[self.Unit] | 
 | 28 |       description: > | 
 | 29 |           The unit for metric value. For example, memory in bytes, CPU in | 
 | 30 |           percent, reboots in count. | 
 | 31 |       flags: | 
 | 32 |           - const | 
 | 33 |  | 
 | 34 | enumerations: | 
 | 35 |     - name: Unit | 
 | 36 |       description: > | 
 | 37 |           Metric value unit. | 
 | 38 |       values: | 
 | 39 |           - name: Bytes | 
 | 40 |             description: > | 
 | 41 |                 Unit to indicate bytes. | 
 | 42 |           - name: Count | 
 | 43 |             description: > | 
 | 44 |                 Unit to indicate counts. | 
 | 45 |           - name: Percent | 
 | 46 |             description: > | 
 | 47 |                 Unit to indicate percentage. | 
 | 48 |  | 
 | 49 | associations: | 
 | 50 |     - name: measuring | 
 | 51 |       description: > | 
 | 52 |           Metrics measure the inventory item's resource utilization, therefore | 
 | 53 |           implement an association to the inventory item. | 
 | 54 |       reverse_names: | 
 | 55 |           - measured_by | 
 | 56 |       required_endpoint_interfaces: | 
 | 57 |           - xyz.openbmc_project.Inventory.Item | 
| Jagpal Singh Gill | 03af686 | 2023-10-05 11:23:53 -0700 | [diff] [blame] | 58 |  | 
 | 59 | paths: | 
 | 60 |     - namespace: /xyz/openbmc_project/metric | 
 | 61 |       description: > | 
 | 62 |           The root path for all Metrics. | 
 | 63 |       segments: | 
 | 64 |           - name: TotalMemory | 
 | 65 |             description: > | 
 | 66 |                 The total memory metric. | 
 | 67 |             value: memory/total | 
 | 68 |           - name: FreeMemory | 
 | 69 |             description: > | 
 | 70 |                 The free memory metric. | 
 | 71 |             value: memory/free | 
 | 72 |           - name: AvailableMemory | 
 | 73 |             description: > | 
 | 74 |                 The available memory metric. | 
 | 75 |             value: memory/available | 
 | 76 |           - name: SharedMemory | 
 | 77 |             description: > | 
 | 78 |                 The shared memory utilization. | 
 | 79 |             value: memory/shared | 
 | 80 |           - name: BufferedAndCachedMemory | 
 | 81 |             description: > | 
 | 82 |                 The buffered and cached memory memory utilization. | 
 | 83 |             value: memory/buffered_and_cached | 
 | 84 |           - name: KernelCPU | 
 | 85 |             description: > | 
 | 86 |                 The kernel CPU utilization. | 
 | 87 |             value: cpu/kernel | 
 | 88 |           - name: UserCPU | 
 | 89 |             description: > | 
 | 90 |                 The user CPU utilization. | 
 | 91 |             value: cpu/user | 
| Jagpal Singh Gill | cc4ce70 | 2023-12-30 22:23:27 -0800 | [diff] [blame] | 92 |           - name: TotalCPU | 
 | 93 |             description: > | 
 | 94 |                 The total CPU utilization. | 
 | 95 |             value: cpu/total | 
| Jagpal Singh Gill | abec9d5 | 2024-02-27 15:39:48 -0800 | [diff] [blame] | 96 |           - name: Storage | 
 | 97 |             description: > | 
 | 98 |                 The different types of available storage, such as tmp, var etc. | 
 | 99 |                 Each storage type will have path relative to storage/, for | 
 | 100 |                 example storage/tmp for temporary storage. | 
 | 101 |             value: storage | 
| Jagpal Singh Gill | 157c864 | 2023-12-29 15:18:50 -0800 | [diff] [blame] | 102 |           - name: ReadWriteStorage | 
 | 103 |             description: > | 
| Jagpal Singh Gill | abec9d5 | 2024-02-27 15:39:48 -0800 | [diff] [blame] | 104 |                 The available read write storage. This storage path has been | 
| Manojkiran Eda | 921791c | 2024-06-17 14:21:02 +0530 | [diff] [blame] | 105 |                 explicitly added to the interface file as it gets used in BMCWeb | 
| Jagpal Singh Gill | abec9d5 | 2024-02-27 15:39:48 -0800 | [diff] [blame] | 106 |                 and free storage metric gets exposed via Redfish. | 
| Jagpal Singh Gill | 157c864 | 2023-12-29 15:18:50 -0800 | [diff] [blame] | 107 |             value: storage/rw | 
| Jagpal Singh Gill | 03af686 | 2023-10-05 11:23:53 -0700 | [diff] [blame] | 108 |           - name: RebootCount | 
 | 109 |             description: > | 
 | 110 |                 Reboot statistic to track number of times device rebooted | 
 | 111 |                 without failure. | 
 | 112 |             value: reboot/count | 
 | 113 |           - name: RebootCountWithFailure | 
 | 114 |             description: > | 
 | 115 |                 Reboot statistic to track number of times device rebooted | 
 | 116 |                 because of a failure. | 
 | 117 |             value: reboot/count_with_failure | 
| Jagpal Singh Gill | c2636e8 | 2024-02-05 15:59:10 -0800 | [diff] [blame] | 118 |     - name: BMC | 
 | 119 |       description: > | 
 | 120 |           The BMC metrics. | 
 | 121 |       value: /xyz/openbmc_project/metric/bmc |