exit; } if (isset($_GET["settings"])) { settings(); exit; } if (isset($_POST["WebstatisticsByMember"])) { settings_save(); exit; } if (isset($_GET["settings-tabs"])) { settings_tabs(); exit; } if (isset($_GET["settings-stats"])) { settings_stats(); exit; } if (isset($_GET["settings-db"])) { settings_db(); exit; } if (isset($_GET["settings-retention"])) { settings_retention(); exit; } if (isset($_POST["ArticaProxyStatisticsBackupFolder"])) { settings_retention_save(); exit; } if (isset($_GET["generic-values-tabs"])) {
function sizes($fp) { $sizes = array(); $stats = settings_stats($fp); printf("%-10s %10s %10s %10s" . PHP_EOL, 'Size', 'Items', 'Chunk_Size', 'Wasted'); $lines = send_and_receive($fp, 'stats sizes'); foreach ($lines as $line) { $m = array(); if (preg_match('/^STAT ([^\\s]+) ([^\\s]+)/', $line, $m)) { $size = $m[1]; $values = $m[2]; for ($chunk_size = 96; $chunk_size * $stats['growth_factor'] < $size; $chunk_size *= $stats['growth_factor']) { } $chunk_size *= $stats['growth_factor']; if ($chunk_size * $stats['growth_factor'] > $stats['item_size_max']) { $chunk_size = $stats['item_size_max']; } $wasted = (1.0 - $size / $chunk_size) * 100; printf("%-10s %10d %10s %9.0f%%" . PHP_EOL, descriptive_size($size), $values, descriptive_size((int) $chunk_size), $wasted); $sizes[$size] = $values; } } }