diff --git a/app/Controllers/CLI/Collector.php b/app/Controllers/CLI/Collector.php index 6d3c407..be78f94 100644 --- a/app/Controllers/CLI/Collector.php +++ b/app/Controllers/CLI/Collector.php @@ -27,25 +27,32 @@ class Collector extends CommonController } $this->addActionPaths(self::PATH); } - protected function createDTO(array $formDatas): CollectorDTO - { - return new CollectorDTO($formDatas); - } public function execute(): void { try { + log_message('info', "트래픽 수집 완료"); $trafficService = service('trafficservice'); + $total = 1; + $success = 0; + $error = 0; foreach ($trafficService->getEntities(['status' => STATUS['AVAILABLE']]) as $trafficEntity) { - $data = $this->service->getCalculatedData($trafficEntity); - $entity = $this->service->create($this->createDTO($data)); - $message = "트래픽 계산 및 저장 완료 (UID: {$entity->getTrafficInfoUID()}), In: {$entity->getIn()} Kb/s / Out: {$entity->getOut()} Kb/s"; - log_message('info', $message); - echo $message . "\n"; + try { + $entity = $this->service->create(new CollectorDTO($this->service->getCalculatedData($trafficEntity))); + $success++; + $message = "{$trafficEntity->getServerIP()} 트래픽 수집데이터 저장 완료 In: {$entity->getIn()} Kb/s / Out: {$entity->getOut()} Kb/s"; + log_message('info', $message); + } catch (ValidationException $e) { + $error++; + log_message('error', "{$trafficEntity->getServerIP()} 트래픽 수집데이터 검증오류:{$e->getMessage()}"); + } catch (\Exception $e) { + $error++; + log_message('error', "{$trafficEntity->getServerIP()} 트래픽 수집데이터 저장 실패:{$e->getMessage()}"); + } + $total++; } - } catch (ValidationException $e) { - log_message('error', "트래픽 계산 및 저장 검증오류:{$e->getMessage()}"); + log_message('info', sprintf("트래픽 수집 성공:%s , 실패:%s 총:%s 작업완료", $success, $error, $total)); } catch (\Exception $e) { - log_message('error', "트래픽 계산 및 저장 실패오류:{$e->getMessage()}"); + log_message('error', "트래픽 수집 작업오류:{$e->getMessage()}"); } } }