Esempio n. 1
0
 /**
  * инициализация демона и его входных параметров
  */
 protected static function init(Application $appl = null, $configFile = null)
 {
     register_shutdown_function('Daemon\\Daemon::errorHandlerFatal');
     //разберем аргументы, переданные через командную строку
     static::$args = static::parseArgsString(implode(' ', array_slice($_SERVER['argv'], 1)));
     //загрузим конфиг из файла
     if (empty(static::$args['c'])) {
         static::$args['c'] = $configFile ?: getcwd() . '/' . self::DEFAULT_CONFIG_FILE;
     }
     Config::load(static::$args['c']);
     //объединяем параметры, переданные через командную строку и из файла конфигурации
     Config::mergeArgs(static::$args);
     if (Config::get('Daemon.log_php_errors', true)) {
         set_error_handler('Daemon\\Daemon::errorHandler');
         error_reporting(0);
     }
     //show help
     if (Config::get('Flags.help')) {
         static::setRunmode(self::RUNMODE_HELP);
     }
     //открываем лог файл
     Logger::init(static::getName());
     static::$pidfile = static::getPidFileName();
     static::getPid();
     if (empty(static::$appl) && !empty($appl)) {
         static::setApplication($appl);
     }
 }
Esempio n. 2
0
 public function sighup()
 {
     static::log("Got signal to update config");
     if (Config::update()) {
         Logger::init();
     }
 }