12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.internal.platform;
27
28 import java.util.Objects;
29
30 public class CgroupMetrics implements Metrics {
31
32 private final CgroupSubsystem subsystem;
33
34 private CgroupMetrics(CgroupSubsystem subsystem) {
35 this.subsystem = Objects.requireNonNull(subsystem);
36 }
37
38 @Override
39 public String getProvider() {
40 return subsystem.getProvider();
41 }
42
43 @Override
44 public long getCpuUsage() {
45 return subsystem.getCpuUsage();
46 }
47
48 @Override
49 public long[] getPerCpuUsage() {
50 return subsystem.getPerCpuUsage();
51 }
52
53 @Override
54 public long getCpuUserUsage() {
98 @Override
99 public int[] getCpuSetCpus() {
100 return subsystem.getCpuSetCpus();
101 }
102
103 @Override
104 public int[] getEffectiveCpuSetCpus() {
105 return subsystem.getEffectiveCpuSetCpus();
106 }
107
108 @Override
109 public int[] getCpuSetMems() {
110 return subsystem.getCpuSetMems();
111 }
112
113 @Override
114 public int[] getEffectiveCpuSetMems() {
115 return subsystem.getEffectiveCpuSetMems();
116 }
117
118 @Override
119 public double getCpuSetMemoryPressure() {
120 return subsystem.getCpuSetMemoryPressure();
121 }
122
123 @Override
124 public Boolean isCpuSetMemoryPressureEnabled() {
125 return subsystem.isCpuSetMemoryPressureEnabled();
126 }
127
128 @Override
129 public long getMemoryFailCount() {
130 return subsystem.getMemoryFailCount();
131 }
132
133 @Override
134 public long getMemoryLimit() {
135 return subsystem.getMemoryLimit();
136 }
137
138 @Override
139 public long getMemoryMaxUsage() {
140 return subsystem.getMemoryMaxUsage();
141 }
142
143 @Override
144 public long getMemoryUsage() {
145 return subsystem.getMemoryUsage();
146 }
147
148 @Override
149 public long getKernelMemoryFailCount() {
150 return subsystem.getKernelMemoryFailCount();
151 }
152
153 @Override
154 public long getKernelMemoryLimit() {
155 return subsystem.getKernelMemoryLimit();
156 }
157
158 @Override
159 public long getKernelMemoryMaxUsage() {
160 return subsystem.getKernelMemoryMaxUsage();
161 }
162
163 @Override
164 public long getKernelMemoryUsage() {
165 return subsystem.getKernelMemoryUsage();
166 }
167
168 @Override
169 public long getTcpMemoryFailCount() {
170 return subsystem.getTcpMemoryFailCount();
171 }
172
173 @Override
174 public long getTcpMemoryLimit() {
175 return subsystem.getTcpMemoryLimit();
176 }
177
178 @Override
179 public long getTcpMemoryMaxUsage() {
180 return subsystem.getTcpMemoryMaxUsage();
181 }
182
183 @Override
184 public long getTcpMemoryUsage() {
185 return subsystem.getTcpMemoryUsage();
186 }
187
188 @Override
189 public long getMemoryAndSwapFailCount() {
190 return subsystem.getMemoryAndSwapFailCount();
191 }
192
193 @Override
194 public long getMemoryAndSwapLimit() {
195 return subsystem.getMemoryAndSwapLimit();
196 }
197
198 @Override
199 public long getMemoryAndSwapMaxUsage() {
200 return subsystem.getMemoryAndSwapMaxUsage();
201 }
202
203 @Override
204 public long getMemoryAndSwapUsage() {
205 return subsystem.getMemoryAndSwapUsage();
206 }
207
208 @Override
209 public Boolean isMemoryOOMKillEnabled() {
210 return subsystem.isMemoryOOMKillEnabled();
211 }
212
213 @Override
214 public long getMemorySoftLimit() {
215 return subsystem.getMemorySoftLimit();
216 }
217
218 @Override
219 public long getBlkIOServiceCount() {
220 return subsystem.getBlkIOServiceCount();
221 }
222
223 @Override
224 public long getBlkIOServiced() {
225 return subsystem.getBlkIOServiced();
226 }
227
228 public static Metrics getInstance() {
229 CgroupSubsystem subsystem = CgroupSubsystemFactory.create();
230 return new CgroupMetrics(subsystem);
231 }
232
233 }
|
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.internal.platform;
27
28 import java.util.Objects;
29
30 public class CgroupMetrics implements Metrics {
31
32 protected final CgroupSubsystem subsystem;
33
34 CgroupMetrics(CgroupSubsystem subsystem) {
35 this.subsystem = Objects.requireNonNull(subsystem);
36 }
37
38 @Override
39 public String getProvider() {
40 return subsystem.getProvider();
41 }
42
43 @Override
44 public long getCpuUsage() {
45 return subsystem.getCpuUsage();
46 }
47
48 @Override
49 public long[] getPerCpuUsage() {
50 return subsystem.getPerCpuUsage();
51 }
52
53 @Override
54 public long getCpuUserUsage() {
98 @Override
99 public int[] getCpuSetCpus() {
100 return subsystem.getCpuSetCpus();
101 }
102
103 @Override
104 public int[] getEffectiveCpuSetCpus() {
105 return subsystem.getEffectiveCpuSetCpus();
106 }
107
108 @Override
109 public int[] getCpuSetMems() {
110 return subsystem.getCpuSetMems();
111 }
112
113 @Override
114 public int[] getEffectiveCpuSetMems() {
115 return subsystem.getEffectiveCpuSetMems();
116 }
117
118 public long getMemoryFailCount() {
119 return subsystem.getMemoryFailCount();
120 }
121
122 @Override
123 public long getMemoryLimit() {
124 return subsystem.getMemoryLimit();
125 }
126
127 @Override
128 public long getMemoryUsage() {
129 return subsystem.getMemoryUsage();
130 }
131
132 @Override
133 public long getTcpMemoryUsage() {
134 return subsystem.getTcpMemoryUsage();
135 }
136
137 @Override
138 public long getMemoryAndSwapLimit() {
139 return subsystem.getMemoryAndSwapLimit();
140 }
141
142 @Override
143 public long getMemoryAndSwapUsage() {
144 return subsystem.getMemoryAndSwapUsage();
145 }
146
147 @Override
148 public long getMemorySoftLimit() {
149 return subsystem.getMemorySoftLimit();
150 }
151
152 @Override
153 public long getBlkIOServiceCount() {
154 return subsystem.getBlkIOServiceCount();
155 }
156
157 @Override
158 public long getBlkIOServiced() {
159 return subsystem.getBlkIOServiced();
160 }
161
162 public static Metrics getInstance() {
163 return CgroupSubsystemFactory.create();
164 }
165
166 }
|