From df974e4b089ba2a16ebbc2bee93c83c928350e8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Thu, 15 Apr 2021 20:11:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- System/Crontab/Crontab.php | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/System/Crontab/Crontab.php b/System/Crontab/Crontab.php index dd2fe02d..e52a8263 100644 --- a/System/Crontab/Crontab.php +++ b/System/Crontab/Crontab.php @@ -204,23 +204,28 @@ abstract class Crontab extends BaseObject */ public function execute(): void { - $redis = Snowflake::app()->getRedis(); + try { + $redis = Snowflake::app()->getRedis(); - $name_md5 = $this->getName(); + $name_md5 = $this->getName(); - $redis->hSet(self::WAIT_END, $name_md5, serialize($this)); + $redis->hSet(self::WAIT_END, $name_md5, serialize($this)); - $params = call_user_func([$this, 'process'], ...$this->params); - $redis->hDel(self::WAIT_END, $name_md5); - if ($params === null) { - return; + $params = call_user_func([$this, 'process'], ...$this->params); + $redis->hDel(self::WAIT_END, $name_md5); + if ($params === null) { + return; + } + $name = date('Y-m-d.log'); + write(storage($name, '/log/crontab'), Json::encode([ + 'name' => $this->name, + 'response' => serialize($params) + ])); + } catch (\Throwable $throwable) { + logger()->addError($throwable, 'throwable'); + } finally { + $this->after(); } - $name = date('Y-m-d.log'); - write(storage($name, '/log/crontab'), Json::encode([ - 'name' => $this->name, - 'response' => serialize($params) - ])); - $this->after(); }