diff --git a/src/Library/Qscmf/Builder/ListSearchType/SelectText/SelectText.class.php b/src/Library/Qscmf/Builder/ListSearchType/SelectText/SelectText.class.php index 35f7f6d6..1d3200ff 100644 --- a/src/Library/Qscmf/Builder/ListSearchType/SelectText/SelectText.class.php +++ b/src/Library/Qscmf/Builder/ListSearchType/SelectText/SelectText.class.php @@ -34,12 +34,9 @@ static public function parse(array $keys_rule, array $get_data): array } } - public function tableSearchAntdRender($options, $listBuilder): array + public function tableSearchAntdRender($options, $listBuilder): \AntdAdmin\Component\Table\ColumnType\SelectText { - $key = new Select('key', $options['title']); - $key->setValueEnum($options['options']); - - $word = new Text('word', ''); - return [$key, $word]; + $column = new \AntdAdmin\Component\Table\ColumnType\SelectText('key:word', ''); + return $column->setValueEnum($options['options']); } } \ No newline at end of file diff --git a/src/Library/Qscmf/Controller/HealthCheckController.class.php b/src/Library/Qscmf/Controller/HealthCheckController.class.php new file mode 100644 index 00000000..23691e0d --- /dev/null +++ b/src/Library/Qscmf/Controller/HealthCheckController.class.php @@ -0,0 +1,25 @@ +error('参数错误'); + } + + $tick = S('health_tick_queue_'.$queue); + + if (time() - $tick > 60){ + send_http_status(500); + echo 'ERROR: queue check fail - '.$queue; + return; + } + + echo $tick. ' health check success.'; + } +} \ No newline at end of file diff --git a/src/Library/Qscmf/Lib/Tp3Resque/Resque/Worker.class.php b/src/Library/Qscmf/Lib/Tp3Resque/Resque/Worker.class.php index 7c3f56a1..17a4cb87 100644 --- a/src/Library/Qscmf/Lib/Tp3Resque/Resque/Worker.class.php +++ b/src/Library/Qscmf/Lib/Tp3Resque/Resque/Worker.class.php @@ -170,6 +170,10 @@ public function work($interval = 5) break; } + foreach ($this->queues as $queue) { + S('health_tick_queue_'.$queue, time()); + } + $this->log("round start:" . convert(memory_get_usage(true))); if (!$this->paused