public function transferanddiskAction() { $system = new System(); $latestRecord = $system->findOne([], ['timeCreated' => -1])->getFields(); $oneWeekAgo = $system->findOne(['timeCreated' => ['$gte' => new \MongoDate(strtotime('-1 week'))]], ['timeCreated' => 1])->getFields(); $oneMonthAgo = $system->findOne(['timeCreated' => ['$gte' => new \MongoDate(strtotime('-1 month'))]], ['timeCreated' => 1])->getFields(); $oneDayAgo = $system->findOne(['timeCreated' => ['$gte' => new \MongoDate(strtotime('-1 day'))]], ['timeCreated' => 1])->getFields(); $formatter = new formatter(); return ['monthlyTransfer' => $formatter->formatBytes($latestRecord['transferOut'] - $oneMonthAgo['transferOut']), 'weeklyTransfer' => $formatter->formatBytes($latestRecord['transferOut'] - $oneWeekAgo['transferOut']), 'dailyTransfer' => $formatter->formatBytes($latestRecord['transferOut'] - $oneDayAgo['transferOut'])]; }
/** * Perform command. */ public function perform() { $sysDevice = new systemReportDevice(new formatter()); $collector = new System(); $collector->loadPercent = $sysDevice->getLoadPercent(); $collector->memFree = $sysDevice->getMemFree(); $collector->memTotal = $sysDevice->getMemTotal(); $collector->diskFree = $sysDevice->getDiskFree(); $collector->transferOut = $sysDevice->bandwidthOut(); $collector->transferIn = $sysDevice->bandwidthIn(); $collector->diskTotal = $sysDevice->getDiskTotal(); $collector->collectedAt = time(); print $collector->save(); }