From 58f64b97aeba8c4da5025465b59320c807bdc214 Mon Sep 17 00:00:00 2001 From: martin Date: Tue, 30 Aug 2011 12:28:37 -0400 Subject: [PATCH] CC-2694: Create command line program for viewing/dumping log files -Better error messages. --- utils/airtime-log.php | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/utils/airtime-log.php b/utils/airtime-log.php index daa471f57..c61087b23 100644 --- a/utils/airtime-log.php +++ b/utils/airtime-log.php @@ -5,14 +5,17 @@ require_once('Zend/Loader/Autoloader.php'); $autoloader = Zend_Loader_Autoloader::getInstance(); $log_files = array("media-monitor" => "/var/log/airtime/media-monitor/media-monitor.log", - "show-recorder" => "/var/log/airtime/show-recorder/show-recorder.log", + "recorder" => "/var/log/airtime/show-recorder/show-recorder.log", "playout" => "/var/log/airtime/pypo/pypo.log", "web" => "/var/log/airtime/zendphp.log"); -function printUsage($opts, $userMsg) +function printUsage($userMsg = "") { + global $opts; + $msg = $opts->getUsageMessage(); - echo $userMsg; + if (strlen($userMsg)>0) + echo $userMsg; echo PHP_EOL."Usage: airtime-log [options]"; echo substr($msg, strpos($msg, "\n")).PHP_EOL; } @@ -29,7 +32,7 @@ function viewSpecificLog($key){ echo "Viewing $key log\n"; pcntl_exec(exec("which less"), array($log_files[$key])); pcntl_wait($status); - } + } else printUsage(); } function dumpAllLogs(){ @@ -50,7 +53,7 @@ function dumpSpecificLog($key){ $dir = dirname($log_files[$key]); $command = "tar cfz $filename $dir 2>/dev/null"; exec($command); - } + } else printUsage(); } function tailAllLogs(){ @@ -67,31 +70,31 @@ function tailSpecificLog($key){ echo "Tail $key log"; pcntl_exec(exec("which tail"), array("-F", $log_files[$key])); pcntl_wait($status); - } + } else printUsage(); } try { $opts = new Zend_Console_Getopt( array( - 'view|v-s' => "Display log file\n" - ."\t\tmediamonitor|playout|recorder|web (ALL by default)", + 'view|v=s' => "Display log file\n" + ."\t\tmedia-monitor|playout|recorder|web (ALL by default)", 'dump|d-s' => "Collect all log files and compress into a tarball\n" - ."\t\tmediamonitor|playout|recorder|web (ALL by default)", + ."\t\tmedia-monitor|playout|recorder|web (ALL by default)", 'tail|t-s' => "View any new entries appended to log files in real-time\n" - ."\t\tmediamonitor|playout|recorder|web (ALL by default)" + ."\t\tmedia-monitor|playout|recorder|web (ALL by default)" ) ); $opts->parse(); } catch (Zend_Console_Getopt_Exception $e) { print $e->getMessage() .PHP_EOL; - printUsage($opts, ""); + printUsage(); exit(1); } if (isset($opts->v)){ if ($opts->v === true){ - echo "Please choose a specific log to view"; + //Should never get here. Zend_Console_Getopt requires v to provide a string parameter. } else { viewSpecificLog($opts->v); }