blob: 9c9d3c1c6820fb6cf8f1a309c3a950c50c3a8afb [file] [log] [blame]
Jagpal Singh Gilla60ff842023-07-12 15:13:25 -07001description: >
2 This interface provides the Board Manager Metric values for resource
3 utilization.
4
5properties:
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
34enumerations:
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
49associations:
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 Gill03af6862023-10-05 11:23:53 -070058
59paths:
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 Gillcc4ce702023-12-30 22:23:27 -080092 - name: TotalCPU
93 description: >
94 The total CPU utilization.
95 value: cpu/total
Jagpal Singh Gillabec9d52024-02-27 15:39:48 -080096 - 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 Gill157c8642023-12-29 15:18:50 -0800102 - name: ReadWriteStorage
103 description: >
Jagpal Singh Gillabec9d52024-02-27 15:39:48 -0800104 The available read write storage. This storage path has been
Manojkiran Eda921791c2024-06-17 14:21:02 +0530105 explicitly added to the interface file as it gets used in BMCWeb
Jagpal Singh Gillabec9d52024-02-27 15:39:48 -0800106 and free storage metric gets exposed via Redfish.
Jagpal Singh Gill157c8642023-12-29 15:18:50 -0800107 value: storage/rw
Jagpal Singh Gill03af6862023-10-05 11:23:53 -0700108 - 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 Gillc2636e82024-02-05 15:59:10 -0800118 - name: BMC
119 description: >
120 The BMC metrics.
121 value: /xyz/openbmc_project/metric/bmc