/** * инициализация демона и его входных параметров */ 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); } }
public function sighup() { static::log("Got signal to update config"); if (Config::update()) { Logger::init(); } }