+ $longopts = array("log:",
+ "log-level:",
+ "tasks:",
+ "interval:",
+ "quiet",
+ "help");
+
+ $options = getopt("", $longopts);
+
+ if (isset($options["help"]) ) {
+ print "Tiny Tiny RSS update daemon.\n\n";
+ print "Options:\n";
+ print " --log FILE - log messages to FILE\n";
+ print " --log-level N - log verbosity level\n";
+ print " --tasks N - amount of update tasks to spawn\n";
+ print " default: " . MAX_JOBS . "\n";
+ print " --interval N - task spawn interval\n";
+ print " default: " . SPAWN_INTERVAL . " seconds.\n";
+ print " --quiet - don't output messages to stdout\n";
+ return;
+ }
+
+ Debug::set_enabled(true);
+ Debug::set_quiet(isset($options['quiet']));
+
+ if (isset($options["log-level"])) {
+ Debug::set_loglevel((int)$options["log-level"]);
+ }
+
+ if (isset($options["log"])) {
+ Debug::set_logfile($options["log"]);
+ Debug::log("Logging to " . $options["log"]);
+ }
+
+ if (isset($options["tasks"])) {
+ Debug::log("Set to spawn " . $options["tasks"] . " children.");
+ $max_jobs = $options["tasks"];
+ } else {
+ $max_jobs = MAX_JOBS;
+ }
+
+ if (isset($options["interval"])) {
+ Debug::log("Spawn interval: " . $options["interval"] . " seconds.");
+ $spawn_interval = $options["interval"];
+ } else {
+ $spawn_interval = SPAWN_INTERVAL;
+ }
+
+ // let's enforce a minimum spawn interval as to not forkbomb the host
+ $spawn_interval = max(60, $spawn_interval);
+ Debug::log("Spawn interval: $spawn_interval sec");
+