diff --git a/Plugin/usr/local/emhttp/plugins/varaverk/api/dryrun.php b/Plugin/usr/local/emhttp/plugins/varaverk/api/dryrun.php index 911637f..410e1c8 100644 --- a/Plugin/usr/local/emhttp/plugins/varaverk/api/dryrun.php +++ b/Plugin/usr/local/emhttp/plugins/varaverk/api/dryrun.php @@ -19,7 +19,7 @@ $logFile = vv_job_log_path($id); $logDir = dirname($logFile); if (!is_dir($logDir)) mkdir($logDir, 0755, true); -file_put_contents($logFile, date('[Y-m-d H:i:s]') . " [DRY RUN] started\n", FILE_APPEND); +file_put_contents($logFile, "\n── " . date('Y-m-d H:i:s') . " [DRY RUN] ──────────────────────\n", FILE_APPEND); $flags = vv_job_flags($id); exec('nohup env DRY_RUN=1 bash ' . escapeshellarg($script) . ($flags ? " $flags" : '') . ' >> ' . escapeshellarg($logFile) . ' 2>&1 vv_fallback_state(), 'resources' => vv_system_resources(), + 'cpu' => vv_cpu_per_core(), + 'mem' => vv_memory_breakdown(), + 'net' => vv_network_stats(), 'gpu' => vv_gpu_stats(), 'gpu_procs' => vv_gpu_processes(), 'containers' => vv_docker_containers(), diff --git a/Plugin/usr/local/emhttp/plugins/varaverk/api/run.php b/Plugin/usr/local/emhttp/plugins/varaverk/api/run.php index 4e89579..28e67d8 100644 --- a/Plugin/usr/local/emhttp/plugins/varaverk/api/run.php +++ b/Plugin/usr/local/emhttp/plugins/varaverk/api/run.php @@ -19,8 +19,7 @@ $logFile = vv_job_log_path($id); $logDir = dirname($logFile); if (!is_dir($logDir)) mkdir($logDir, 0755, true); -// Stamp the log so the panel shows when the run started -file_put_contents($logFile, date('[Y-m-d H:i:s]') . " Manual run started\n", FILE_APPEND); +file_put_contents($logFile, "\n── " . date('Y-m-d H:i:s') . " ──────────────────────\n", FILE_APPEND); $flags = vv_job_flags($id); exec('nohup bash ' . escapeshellarg($script) . ($flags ? " $flags" : '') . ' >> ' . escapeshellarg($logFile) . ' 2>&1 > \"$logFile\" 2>&1"; + $lines[] = "{$entry['cron']} bash -c 'echo; echo \"── \$(date \"+%Y-%m-%d %H:%M:%S\") ──────────────────────\"; bash \"$script\"$flags' >> \"$logFile\" 2>&1"; } $lines[] = ""; @@ -171,6 +172,25 @@ function vv_script_description(string $path): string { return $first; } +function vv_custom_scripts(): array { + $dir = SCRIPTS_DIR . '/Custom'; + $schedule = vv_schedule_load(); + $scripts = []; + foreach (glob("$dir/*.sh") ?: [] as $path) { + $rel = 'Custom/' . basename($path); + $entry = $schedule[$rel] ?? []; + $scripts[] = [ + 'id' => $rel, + 'label' => basename($path, '.sh'), + 'desc' => vv_script_description($path), + 'enabled' => (bool)($entry['enabled'] ?? false), + 'cron' => $entry['cron'] ?? '', + 'log_enabled' => (bool)($entry['log_enabled'] ?? false), + ]; + } + return $scripts; +} + // Walk the scripts repo and return the job tree: // orchestrators as top-level, individual scripts as children function vv_job_tree(): array { diff --git a/Plugin/usr/local/emhttp/plugins/varaverk/pages/monitor.php b/Plugin/usr/local/emhttp/plugins/varaverk/pages/monitor.php index b9efcab..9e6195a 100644 --- a/Plugin/usr/local/emhttp/plugins/varaverk/pages/monitor.php +++ b/Plugin/usr/local/emhttp/plugins/varaverk/pages/monitor.php @@ -6,27 +6,41 @@

Fallback State

+
-
-

Resources

-
Loading...
+
+

CPU

+
Loading...
-
+
+

Memory

+
Loading...
+
+ +
+

Network

+
Loading...
+
+
+ +
+

GPU

Loading...
-
-
-
+

Transcode

Loading...
-
-
+
+

Streams

+
Loading...
+
+

Containers

@@ -39,36 +53,397 @@ diff --git a/Plugin/usr/local/emhttp/plugins/varaverk/pages/scheduler.php b/Plugin/usr/local/emhttp/plugins/varaverk/pages/scheduler.php index 230e3e0..f0ff0a6 100644 --- a/Plugin/usr/local/emhttp/plugins/varaverk/pages/scheduler.php +++ b/Plugin/usr/local/emhttp/plugins/varaverk/pages/scheduler.php @@ -1,7 +1,8 @@ - + + + + +