Esempio n. 1
0
    def get(self, *args, **kwargs):
        app = self.checkAppAccess(args)
        workerId = self.get_argument("workerId")
        workerId = int(workerId)
        dbSession = self.getDBSession()

        # загружаем воркер из базы
        worker = dbSession.query(Worker).filter_by(workerId=workerId).first()
        worker.status = Worker.STATUS_ALIVE
        worker.startDate = datetime.now()
        worker.endDate = None
        dbSession.add(worker)
        dbSession.commit()

        # создаем WorkerService и загружаем его данные
        workerService = WorkerService(self.application.getResultPath(), worker)
        workerService.load()
        workerService.version += 1
        workerService.init()

        # создаем и запускаем тред
        workerThread = self.createHiveWorker(workerService)
        workerThread.start()

        self.redirect("/dashboard/app/" + app.code + "/")
Esempio n. 2
0
    def get(self, *args, **kwargs):
        appcode, workerId = args
        aliveThreadNames = ThredService.getAliveThreads()
        if not "worker-" + workerId in aliveThreadNames:
            self.renderJSON({"redirect": "status/" + workerId})
        else:
            dbSession = self.getDBSession()
            # загружаем воркер из базы
            worker = dbSession.query(Worker).filter_by(workerId=int(workerId)).first()
            workerService = WorkerService(self.application.getResultPath(), worker)
            workerService.load()

            self.renderJSON(
                {"html": self.render("/dashboard/result/taskAlive.jinja2", query=workerService.query, _return=True)}
            )