From f4e3d5de6f77970b1bae1987e87878630b990ba2 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 6 Dec 2022 15:16:58 +0100 Subject: [statistics] Add ID45 partition size filter Closes #3927 --- modules-available/statistics/inc/statisticsfilter.inc.php | 13 +++++++------ modules-available/statistics/lang/de/filters.json | 1 + modules-available/statistics/lang/en/filters.json | 1 + modules-available/statistics/pages/summary.inc.php | 2 +- 4 files changed, 10 insertions(+), 7 deletions(-) (limited to 'modules-available/statistics') diff --git a/modules-available/statistics/inc/statisticsfilter.inc.php b/modules-available/statistics/inc/statisticsfilter.inc.php index 996364ae..f90c15c7 100644 --- a/modules-available/statistics/inc/statisticsfilter.inc.php +++ b/modules-available/statistics/inc/statisticsfilter.inc.php @@ -10,7 +10,7 @@ abstract class StatisticsFilter */ const LEGACY_DELIMITER = '~,~'; - const SIZE_ID44 = [0, 8, 16, 24, 30, 40, 50, 60, 80, 100, 120, 150, 180, 250, 300, 400, 500, 1000, 1500, 2000, 3000, + const SIZE_PARTITION = [0, 8, 16, 24, 30, 40, 50, 60, 80, 100, 120, 150, 180, 250, 300, 400, 500, 1000, 1500, 2000, 3000, 4000, 6000, 8000, 10000]; const SIZE_RAM = [1, 2, 3, 4, 6, 8, 10, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 320, 480, 512, 768, 1024, 1536, 2048]; @@ -264,7 +264,8 @@ abstract class StatisticsFilter 'realcores' => new SimpleStatisticsFilter('realcores', self::OP_ORDINAL, ''), 'systemmodel' => new SimpleStatisticsFilter('systemmodel', self::OP_STRCMP, 'PC-365 (IBM)'), 'cpumodel' => new SimpleStatisticsFilter('cpumodel', self::OP_STRCMP, 'Pentium Pro 200 MHz'), - 'hddgb' => new Id44GbStatisticsFilter(), + 'hddgb' => new PartitionGbStatisticsFilter('id44mb'), + 'persistentgb' => new PartitionGbStatisticsFilter('id45mb'), 'gbram' => new RamGbStatisticsFilter(), 'kvmstate' => new EnumStatisticsFilter('kvmstate', ['ENABLED', 'DISABLED', 'UNSUPPORTED']), 'badsectors' => new SimpleStatisticsFilter('badsectors', self::OP_ORDINAL, ''), @@ -523,17 +524,17 @@ class RamGbStatisticsFilter extends GbToMbRangeStatisticsFilter } -class Id44GbStatisticsFilter extends GbToMbRangeStatisticsFilter +class PartitionGbStatisticsFilter extends GbToMbRangeStatisticsFilter { - public function __construct() + public function __construct(string $column) { - parent::__construct('id44mb', self::OP_FUZZY_ORDINAL,'GiB'); + parent::__construct($column, self::OP_FUZZY_ORDINAL, 'GiB'); } public function whereClause(string $operator, $argument, array &$args, array &$joins): string { - return parent::rangeClause($operator, $argument, self::SIZE_ID44); + return parent::rangeClause($operator, $argument, self::SIZE_PARTITION); } } diff --git a/modules-available/statistics/lang/de/filters.json b/modules-available/statistics/lang/de/filters.json index 1dae0b93..c93e2bd6 100644 --- a/modules-available/statistics/lang/de/filters.json +++ b/modules-available/statistics/lang/de/filters.json @@ -20,6 +20,7 @@ "machineuuid": "System-UUID", "nicpseed": "NIC-Geschwindigkeit", "pcidev": "PCI-Ger\u00e4t", + "persistentgb": "ID45 (GB)", "realcores": "CPU-Kerne (real)", "runtime": "Laufzeit (Stunden)", "standbycrash": "Crashes im Standby", diff --git a/modules-available/statistics/lang/en/filters.json b/modules-available/statistics/lang/en/filters.json index 1abcd2f9..2e08fc1b 100644 --- a/modules-available/statistics/lang/en/filters.json +++ b/modules-available/statistics/lang/en/filters.json @@ -20,6 +20,7 @@ "machineuuid": "System UUID", "nicpseed": "NIC speed", "pcidev": "PCI device", + "persistentgb": "ID45 (GB)", "realcores": "CPU cores (real)", "runtime": "Uptime (hours)", "standbycrash": "Crashes in Standby", diff --git a/modules-available/statistics/pages/summary.inc.php b/modules-available/statistics/pages/summary.inc.php index 53b028fc..6781ff05 100644 --- a/modules-available/statistics/pages/summary.inc.php +++ b/modules-available/statistics/pages/summary.inc.php @@ -244,7 +244,7 @@ class SubPage $total = 0; foreach ($res as $row) { $total += $row['count']; - $gb = self::alignBySteps((int)ceil($row['id44mb'] / 1024), StatisticsFilter::SIZE_ID44); + $gb = self::alignBySteps((int)ceil($row['id44mb'] / 1024), StatisticsFilter::SIZE_PARTITION); $lines[$gb] = ($lines[$gb] ?? 0) + $row['count']; } asort($lines); -- cgit v1.2.3-55-g7522