diff --git a/HttpServer/Events/OnShutdown.php b/HttpServer/Events/OnShutdown.php index 7fe7f809..ecc39f31 100644 --- a/HttpServer/Events/OnShutdown.php +++ b/HttpServer/Events/OnShutdown.php @@ -34,6 +34,18 @@ class OnShutdown extends Callback public function onHandler(Server $server) { $this->debug('server shutdown~'); + + $workers = glob(storage(null, 'worker') . '/*'); + foreach ($workers as $worker) { + $content = file_get_contents($worker); + posix_kill($content, 9); + } + + $content = '[error]: ' . date('Y-m-d H:i:s') . PHP_EOL; + $content .= print_r(swoole_last_error(), true); + + Snowflake::writeFile(storage('shutdown.log'), $content, FILE_APPEND); + $this->system_mail('server shutdown~'); $event = Snowflake::app()->getEvent(); $event->trigger(Event::SERVER_SHUTDOWN);